Bulk Map Products
POST/api/magento2/integration-instances/:magento2IntegrationInstance/products/bulk-map
Bulk-map Magento products to SKU.io Products by SKU / SKU-contains / name. Synchronous (no tracked job) and caps at 500 products per call to keep the request bounded.
Body:
selection.type—selected(useids) orfiltered(apply across the currently filtered set; the unmapped-only constraint always applies).selection.ids— array ofmagento2_products.id(required whentype=selected).selection.filters— filter object (used whentype=filtered).options.match_by—sku(exact Magento SKU == SKU.io Product SKU),sku_contains(SKU.io Product SKULIKE %magento_sku%), orname(SKU.io Product name == Magento name).options.create_if_no_match— when true, create a new SKU.io Product for any Magento product that doesn't match (uses the Magento sku + name).
Returns counts: mapped, skipped, total. tracked_job_log_id is always null (kept in the response shape for frontend symmetry with the other bulk ops).
Request
Responses
- 200
- 401
- 403
- 404
- 422
- 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 — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
Unprocessable Entity
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.