Connections

Connection capabilities

Tells, operation by operation, what this Connection can do at its marketplace.

GET
/v1/connections/{id}/capabilities

Call it before showing an external action in your app. The answer is for this Connection: it combines what the marketplace adapter offers with the scopes the seller granted.

Each operation in operations has a status:

statusWhat it meansWhat the route answers
availablethe Connection can run itproceeds normally
unsupportedthe marketplace does not offer the operation422 CAPABILITY_UNSUPPORTED
not_grantedthe marketplace offers it, but a requiredScopes is missing403 CAPABILITY_NOT_GRANTED; the seller must authorize again

In an inventory batch across several Connections, the error is not in the response. The job is created, and only the item of the Connection without the operation fails, with the code in its message.

Even with available, the marketplace may refuse the operation when it runs: the app lacks the permission for that resource with this seller (on Mercado Livre, a functional permission turned off in the app). The job item fails with CAPABILITY_NOT_GRANTED and the same details. To fix it, enable the permission in the marketplace app and have the seller authorize again.

declarations holds marketplace facts that change how operations behave. Example: inventory.scope says whether stock belongs to each offer (binding) or is shared by the marketplace product variant (marketplace_product_variant).

Each endpoint page that reaches a marketplace shows support by marketplace at the top. That is the overview. This response is the decision for one specific Connection.

Authorization

api_key
headerAuthorizationBearer <token>

API key (mk_...)

Path Parameters

id*string

Identifier of the resource, as returned by the API.

Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
Formatuuid

Response Body

Every operation with its status for this connection, and the marketplace declarations. A route whose operation is not available answers 422 CAPABILITY_UNSUPPORTED or 403 CAPABILITY_NOT_GRANTED.

application/json
  1. response

What this connection can do at its marketplace, operation by operation, and the facts that change how operations behave.

marketplace*string

The marketplace of this connection.

Value in"mock""mercadolivre""magalu""amazon""tiktok""shopee"
operations*

One entry per marketplace operation. Check status before calling a route that reaches the marketplace.

declarations*

Facts about the marketplace that are not operations. They are the same for every connection of the marketplace.

curl -X GET "https://example.com/v1/connections/3d1c8a52-7f0e-4b0a-8a65-9c1b2f6d7e01/capabilities"
{  "marketplace": "mercadolivre",  "operations": {    "listings.read": {      "status": "unsupported",      "requiredScopes": [        "read"      ]    },    "listings.import": {      "status": "unsupported",      "requiredScopes": [        "read"      ]    },    "listings.publish": {      "status": "unsupported",      "requiredScopes": [        "write"      ]    },    "listings.remove": {      "status": "unsupported",      "requiredScopes": [        "write"      ]    },    "inventory.publish": {      "status": "unsupported",      "requiredScopes": [        "write"      ]    },    "discovery.categories": {      "status": "unsupported",      "requiredScopes": [        "read"      ]    },    "discovery.requirements": {      "status": "unsupported",      "requiredScopes": [        "read"      ]    },    "discovery.brands": {      "status": "unsupported",      "requiredScopes": [        "read"      ]    },    "discovery.productTypes": {      "status": "unsupported",      "requiredScopes": [        "read"      ]    },    "discovery.sizeCharts": {      "status": "unsupported",      "requiredScopes": [        "read"      ]    },    "discovery.fulfillmentOptions": {      "status": "unsupported",      "requiredScopes": [        "read"      ]    },    "catalog.search": {      "status": "unsupported",      "requiredScopes": [        "read"      ]    },    "orders.read": {      "status": "unsupported",      "requiredScopes": [        "read"      ]    },    "orders.import": {      "status": "unsupported",      "requiredScopes": [        "read"      ]    }  },  "declarations": {    "inventory.scope": "marketplace_product_variant",    "listings.offersPerMarketplaceProduct": "many",    "inventory.kitStockComputedByMarketplace": true,    "timezone": "America/Sao_Paulo",    "pii.retentionMaxDays": null,    "pii.retentionBasis": "order_closed"  }}