Skip to content

Options

View as Markdown

A Product Option is a dimension along which a Product varies - for example Size, Color or Material. Each option holds an ordered list of Option Values (S, M, L or Red, Blue), and the combinations of those values across a product’s options define its Variants.

Options belong to a single product and are ordered by position. The title is translatable, so the same option can read Size in one locale and Taille in another.

PropertyTypeRequiredDescription
idstring-The resource's unique identifier (UUID).
titlestring | null-This property supports translations.

The name of the product option.
positioninteger-The position of the product option. Use -1 to put the product option at the end.
productstringrequiredThe Product to which this option belongs.
createdAtstring-The date and time when the resource was created (ISO 8601 format).
updatedAtstring-The date and time when the resource was last modified (ISO 8601 format).

How options, values and variants fit together

Section titled “How options, values and variants fit together”
  1. Create an option on the product, e.g. Size - POST /products/{productId}/product_options.
  2. Add its values, e.g. S, M, L - POST /option_values.
  3. Create the variants that combine those values, e.g. Size: M - POST /products/{productId}/variants.

A product with options Size (S, M, L) and Color (Red, Blue) can have up to 6 variants - one per combination.

  • Set up a sizing dimension. Create a Size option, then add its Option Values in display order with the position field.
  • Reorder options. PATCH the position of an option to move it earlier or later in the product’s option list.
  • Localize an option name. Send the X-Flowkiwi-Locale header on write to set the title for that locale.