Skip to main content

Create Product Substitution

POST 

/api/products/:productId/substitutions

Create a substitution rule: the route product is the original, the payload names the substitute.

Required scope: products:write

Grant this scope to your token under Settings → Developer → Personal Access Tokens.

Authentication: Requires Bearer token.

Validation rejects self-substitution, duplicate pairs, non-stock-tracked substitutes, and always rules that would close an automatic swap loop. create_reverse also creates the independent reverse rule (substitute → original) with the same mode and substitution_type.

A non-blocking warning is returned when the pair mixes a serialised and a non-serialised product.

substitution_type classifies what kind of substitute this is — direct (identical to the customer, just a different SKU) or replacement (does the same job but is visibly different, so the customer receives something other than what they ordered). It is optional and defaults to direct. It is orthogonal to mode: substitution_type says what the substitute is, mode says when the swap may fire.

Request

Responses

OK

Response Headers
    Content-Type