Update Product Tariff Codes
PUT/api/products/:product/tariff-codes
Replaces the product's per-destination tariff code overrides. Codes accept dots and spaces and are stored as 2–10 digits. Destinations not in the list lose their override; an empty list removes every override. The product HS code remains the default for destinations without an override.
products:writeGrant this scope to your token under Settings → Developer → Personal Access Tokens.
Body:
tariff_codes(required, array, may be empty)tariff_codes.*.destination_country_code(required, ISO alpha-2, distinct)tariff_codes.*.tariff_code(required, string, 2–10 digits after removing separators)
Authentication: Requires Bearer token (scope products:write, permission products.update).
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.