Get Product
GET/api/magento2/integration-instances/:magento2IntegrationInstance/products/:product
Single product detail. Includes the product's Magento 2 custom attributes, each annotated with the SKU.io product field it is mapped onto. For a configurable product the response also carries its child (variant) products.
This endpoint currently requires session authentication; Personal Access Token scope support is in progress.
Path params:
magento2IntegrationInstance(required, integer).product(required, integer) — Internal Magento 2 product record ID.
custom_attributes[] — every attribute captured on the last sync of this product, excluding the ones already mirrored into dedicated columns (cost, description, image, barcode, upc, ean, gtin). Dropdown and multi-select values are resolved to their option labels rather than the numeric option IDs Magento stores. Sorted mapped-first, then alphabetically by code. Each entry contains:
code— the Magento attribute code.label— a human-readable label derived from the code.value— the captured value as a string, ornullwhen empty.mapped— whether a field mapping copies this attribute into a SKU.io product field.sku_field— the SKU.io product field it is copied into, ornullwhen unmapped.target_label— the display label of that SKU.io field, ornullwhen unmapped.
This array is returned on the detail endpoint only — the products list omits it.
Error responses:
404— product does not exist OR belongs to a different instance.401— caller is not authenticated.
Request
Responses
- 200
- 401
- 403
- 404
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not Found
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.