Create a variant

Creates a new variant object. Note that you can create variants for both products and materials.
In order for Katana to know which one you are creating,
you have to specify either product_id or material_id, not both.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params

new variant details

string
number | null
0 to 100000000000
number | null
0 to 100000000000
integer
≤ 2147483647
supplier_item_codes
array of strings
length ≥ 1
supplier_item_codes
string
length between 3 and 40
string
length ≤ 120
integer
≤ 2147483647
integer | null
≤ 999
number | null
0 to 999999999
config_attributes
array of objects
length ≥ 1
config_attributes
string
required
string
required
custom_fields

Custom field values on the variant. Served in one of two representations depending on the account — the legacy {field_name, field_value} array, or an object keyed by custom field definition id. See the X-Custom-Fields-Format header for how the representation is chosen, and note that a single request must not mix the two.

Headers
string
enum

Selects the representation of custom_fields on items, for both the request body and the response.

  • default — object keyed by custom field definition id (UUID).
  • legacy — the {field_name, field_value} array tied to custom fields collections.

Most accounts do not need this header: an account that has not moved to item custom fields always gets legacy, and an account that has moved and no longer uses collections always gets the object representation. The header matters only while both are available for the account, where legacy is the default and default opts into the object representation.

Requesting a representation the account does not have returns 422, as does sending a custom_fields body whose shape does not match the representation in force, mixing both shapes in one request, or combining custom_field_collection_id with the object representation — that field belongs to the legacy representation and is left out of responses entirely under the object one. Responses vary on this header.

Allowed:
Responses

Language
Credentials
Bearer
LoadingLoading…
Response
Choose an example:
application/json