Update mappings for integration instance
PUT/api/amazon/:integrationInstance/mappings
Persists the full set of custom field mappings for the given Amazon integration instance. The payload completely replaces the previously stored custom mappings for the listings mapping group.
This endpoint currently requires session authentication; Personal Access Token scope support is in progress.
Request body (validated via UpdateAmazonFieldMappingsData):
mappings(array, required): list of mapping entries. Each entry contains:listing_field(string, required): the Amazon listing field name (e.g.seller_sku,item_name,brand,price). Must match one of the keys returned byGET /api/amazon/mappings/available-fieldsunderamazon_fields.sku_field(string, required): the SKU.io target field. Either a static field (e.g.sku,name,vendor), a pricing tier path (e.g.price.Default.value), a supplier pricing tier path (e.g.supplier_pricing.Wholesale.value), or an attribute path (e.g.attributes.Color).parsers(array, required): zero or more transformations applied in order to the incoming value before it is written to the SKU.io field. May be empty. Each entry is an object with aruleand anargsobject (not a string):fr— find and replace.args.find(string, required) is the text to match.args.replace(string, optional) is the replacement; omit it or send an empty string to delete the matched text.tl— remove characters from the start.args.count(integer, required, greater than zero).num_charsis accepted as an alias.tr— remove characters from the end.args.count(integer, required, greater than zero).num_charsis accepted as an alias.append— append the value of another field.args.field(string, required) is the field to append (field_nameis accepted as an alias).args.separator(string, optional) is placed between the two values. Any otherrule, orargsmissing the keys its rule requires, is rejected with a 422 keyed tomappings.{index}.parsers.{index}.args.
The response echoes back the integration instance id/name plus the updated mappings and effective_mappings (custom merged on top of defaults).
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.