openapi: 3.0.3 info: title: BigCommerce Catalog - Product Variant Options description: >- > The Catalog API manages products, categories, brands, bulk pricing rules, and more. To learn more about catalog resources, see the [Catalog Overview](/docs/store-operations/catalog). Product Variant Options represent the different facets of a product. For example, size, color, fabric. Variant Option values are the actual sizes, colors, fabrics, that are available. [Product Variants]() consist of combinations of Variant Option values. The following table illustrates the relationship between Variant Options and Variant Option values using a line of signature sneakers as an example. | Variant options | Variant option values | No. of variants | |:-|:-|-:| | size (US Women's) | 6, 6.5, 7, 7.5, 8, 8.5, 9, 9.5, 10, 10.5 | 10 | | upper material | canvas, marine plastic, leather | 3 | | upper color | brick, azul, gold | 3 | | sole color | charcoal, white, azul | 3 | | | | **270** | Our Catalog Product Variant Options endpoints let you work with both Variant Options and Variant Option Values. > To learn more about authenticating Catalog endpoints, locate the **Authentication** section at the top of each endpoint, then click **Show Details**. ## Resources ### Webhooks Learn more about [Product webhook events](/docs/integrations/webhooks/events#products). ### Additional Catalog endpoints * [Brands](/docs/rest-catalog/brands) * [Categories](/docs/rest-catalog/categories) * [Category Trees](/docs/rest-catalog/category-trees) * [Products](/docs/rest-catalog/products) * [Product Modifiers](/docs/rest-catalog/product-modifiers) * [Product Variants](/docs/rest-catalog/product-variants) termsOfService: https://www.bigcommerce.com/terms contact: name: BigCommerce url: https://www.bigcommerce.com email: support@bigcommerce.com version: '' servers: - url: https://api.bigcommerce.com/stores/{store_hash}/v3 variables: store_hash: default: store_hash description: Permanent ID of the BigCommerce store. description: BigCommerce API Gateway security: - X-Auth-Token: [] tags: - name: Product Variant Options - name: Values paths: /catalog/products/{product_id}/options: get: tags: - Product Variant Options summary: BigCommerce Get All Product Variant Options description: >- Returns a list of product *Variant Options*. Optional parameters can be passed in. operationId: getProductVariantOptions parameters: - name: page in: query description: Specifies the page number in a limited (paginated) list of products. schema: type: integer - name: limit in: query description: >- Controls the number of items per page in a limited (paginated) list of products. schema: type: integer - name: include_fields in: query description: >- Fields to include, in a comma-separated list. The ID and the specified fields will be returned. schema: type: string - name: exclude_fields in: query description: >- Fields to exclude, in a comma-separated list. The specified fields will be excluded from a response. The ID cannot be excluded. schema: type: string responses: '200': description: '' content: application/json: schema: title: Option Collection Response type: object properties: data: type: array items: $ref: '#/components/schemas/productOption_Full' meta: $ref: '#/components/schemas/metaCollection_Full' description: Get all product options '404': description: | The resource was not found. content: application/json: schema: title: Not Found type: object properties: status: type: integer description: | 404 HTTP status code. title: type: string description: The error title describing the particular error. type: type: string instance: type: string description: Error payload for the BigCommerce API. post: tags: - Product Variant Options summary: BigCommerce Create a Product Variant Option description: >- Creates a *Variant Option*. **Required Fields** * display_name * type * option_values **Read-Only Fields** * id **Limits** * 255 characters option name length. **Notes** * Only one variant option at a time can be created; individual variant options will contain an array of multiple values. * There are several examples listed below that create options, but the SKUs are not updated and they are not a variant on the product. Variant SKUs must be created with a separate request. * Variant options will show on the storefront as an option that can be selected by the customer. A request like this could be used to add new choices to a variant that has already been created. * If more than one variant needs to be created, use the [Create a Product](/docs/rest-catalog/products#create-a-product) endpoint. operationId: createProductVariantOption parameters: - $ref: '#/components/parameters/ContentType' requestBody: content: application/json: schema: title: Option Post description: The model for a POST to create options on a product. allOf: - title: Option Base description: Common Option properties. properties: product_id: type: integer description: > The unique numerical ID of the product to which the option belongs. example: 4 x-required: - post - put display_name: maxLength: 255 minLength: 1 type: string description: | The name of the option shown on the storefront. example: Add-a-$5-Donation1535042499-187 x-required: - post - put type: type: string description: > The type of option, which determines how it will display on the storefront. Acceptable values: `radio_buttons`, `rectangles`, `dropdown`, `product_list`, `product_list_with_images`, `swatch`. For reference, the former v2 API values are: RB = radio_buttons, RT = rectangles, S = dropdown, P = product_list, PI = product_list_with_images, CS = swatch. enum: - radio_buttons - rectangles - dropdown - product_list - product_list_with_images - swatch x-required: - post - put config: title: Option Config type: object description: >- The values for option config can vary based on the Modifier created. properties: default_value: type: string description: > (date, text, multi_line_text, numbers_only_text) The default value. Shown on a date option as an ISO-8601–formatted string, or on a text option as a string. checked_by_default: type: boolean description: > (checkbox) Flag for setting the checkbox to be checked by default. checkbox_label: type: string description: | (checkbox) Label displayed for the checkbox option. date_limited: type: boolean description: > (date) Flag to limit the dates allowed to be entered on a date option. date_limit_mode: type: string description: > (date) The type of limit that is allowed to be entered on a date option. example: range enum: - earliest - range - latest date_earliest_value: type: string description: > (date) The earliest date allowed to be entered on the date option, as an ISO-8601 formatted string. format: date-time example: '2018-08-31T00:00:00+00:00' date_latest_value: type: string description: > (date) The latest date allowed to be entered on the date option, as an ISO-8601 formatted string. format: date-time example: '2019-01-01T00:00:00+00:00' file_types_mode: type: string description: > (file) The kind of restriction on the file types that can be uploaded with a file upload option. Values: `specific` - restricts uploads to particular file types; `all` - allows all file types. example: specific enum: - specific - all file_types_supported: type: array description: > (file) The type of files allowed to be uploaded if the `file_type_option` is set to `specific`. Values: `images` - Allows upload of image MIME types (`bmp`, `gif`, `jpg`, `jpeg`, `jpe`, `jif`, `jfif`, `jfi`, `png`, `wbmp`, `xbm`, `tiff`). `documents` - Allows upload of document MIME types (`txt`, `pdf`, `rtf`, `doc`, `docx`, `xls`, `xlsx`, `accdb`, `mdb`, `one`, `pps`, `ppsx`, `ppt`, `pptx`, `pub`, `odt`, `ods`, `odp`, `odg`, `odf`). `other` - Allows file types defined in the `file_types_other` array. example: - images - documents - other items: type: string file_types_other: type: array description: > (file) A list of other file types allowed with the file upload option. example: - pdf - txt items: type: string file_max_size: type: integer description: > (file) The maximum size for a file that can be used with the file upload option. This will still be limited by the server. example: 5 text_characters_limited: type: boolean description: > (text, multi_line_text) Flag to validate the length of a text or multi-line text input. text_min_length: type: integer description: > (text, multi_line_text) The minimum length allowed for a text or multi-line text option. example: 1 text_max_length: type: integer description: > (text, multi_line_text) The maximum length allowed for a text or multi line text option. example: 55 text_lines_limited: type: boolean description: > (multi_line_text) Flag to validate the maximum number of lines allowed on a multi-line text input. example: true text_max_lines: type: integer description: > (multi_line_text) The maximum number of lines allowed on a multi-line text input. example: 4 number_limited: type: boolean description: > (numbers_only_text) Flag to limit the value of a number option. example: true number_limit_mode: type: string description: > (numbers_only_text) The type of limit on values entered for a number option. example: lowest enum: - lowest - highest - range number_lowest_value: type: number description: > (numbers_only_text) The lowest allowed value for a number option if `number_limited` is true. example: 100 number_highest_value: type: number description: > (numbers_only_text) The highest allowed value for a number option if `number_limited` is true. number_integers_only: type: boolean description: > (numbers_only_text) Flag to limit the input on a number option to whole numbers only. example: false product_list_adjusts_inventory: type: boolean description: > (product_list, product_list_with_images) Flag for automatically adjusting inventory on a product included in the list. product_list_adjusts_pricing: type: boolean description: > (product_list, product_list_with_images) Flag to add the optional product's price to the main product's price. product_list_shipping_calc: type: string description: > (product_list, product_list_with_images) How to factor the optional product's weight and package dimensions into the shipping quote. Values: `none` - don't adjust; `weight` - use shipping weight only; `package` - use weight and dimensions. example: weight enum: - none - weight - package sort_order: type: integer description: >- Order in which the option is displayed on the storefront. example: 1 option_values: minItems: 1 type: array x-required: - post - put items: title: Option Value allOf: - title: Option Value Base description: Common Option Value properties. properties: is_default: type: boolean description: > The flag for preselecting a value as the default on the storefront. This field is not supported for swatch options/modifiers. example: false label: type: string description: > The text display identifying the value on the storefront. Required in a /POST. example: Green x-required: - post sort_order: maximum: 2147483647 minimum: -2147483648 type: integer description: > The order in which the value will be displayed on the product page. Required in a /POST. example: 0 x-required: - post value_data: type: object properties: {} description: > Extra data describing the value, based on the type of option or modifier with which the value is associated. The `swatch` type option can accept an array of `colors`, with up to three hexidecimal color keys; or an `image_url`, which is a full image URL path including protocol. The `product list` type option requires a `product_id`. The `checkbox` type option requires a boolean flag, called `checked_value`, to determine which value is considered to be the checked state. required: - label - sort_order - properties: id: type: integer description: > The unique numeric ID of the value; increments sequentially. type: object image_url: type: string description: Publicly available image url type: object required: true responses: '200': description: '' content: application/json: schema: title: Option Response type: object properties: data: title: Option type: object allOf: - title: Option Base description: Common Option properties. type: object properties: id: type: integer description: > The unique numerical ID of the option, increments sequentially. example: 55 x-nullable: true product_id: type: integer description: > The unique numerical ID of the product to which the option belongs. example: 4 x-required: - post - put display_name: maxLength: 255 minLength: 1 type: string description: | The name of the option shown on the storefront. example: Add-a-$5-Donation1535042499-187 x-required: - post - put type: type: string description: > The type of option, which determines how it will display on the storefront. Acceptable values: `radio_buttons`, `rectangles`, `dropdown`, `product_list`, `product_list_with_images`, `swatch`. For reference, the former v2 API values are: RB = radio_buttons, RT = rectangles, S = dropdown, P = product_list, PI = product_list_with_images, CS = swatch. enum: - radio_buttons - rectangles - dropdown - product_list - product_list_with_images - swatch x-required: - post - put config: title: Option Config type: object description: >- The values for option config can vary based on the Modifier created. properties: default_value: type: string description: > (date, text, multi_line_text, numbers_only_text) The default value. Shown on a date option as an ISO-8601–formatted string, or on a text option as a string. checked_by_default: type: boolean description: > (checkbox) Flag for setting the checkbox to be checked by default. checkbox_label: type: string description: > (checkbox) Label displayed for the checkbox option. date_limited: type: boolean description: > (date) Flag to limit the dates allowed to be entered on a date option. date_limit_mode: type: string description: > (date) The type of limit that is allowed to be entered on a date option. example: range enum: - earliest - range - latest date_earliest_value: type: string description: > (date) The earliest date allowed to be entered on the date option, as an ISO-8601 formatted string. format: date-time date_latest_value: type: string description: > (date) The latest date allowed to be entered on the date option, as an ISO-8601 formatted string. format: date-time file_types_mode: type: string description: > (file) The kind of restriction on the file types that can be uploaded with a file upload option. Values: `specific` - restricts uploads to particular file types; `all` - allows all file types. example: specific enum: - specific - all file_types_supported: type: array description: > (file) The type of files allowed to be uploaded if the `file_type_option` is set to `specific`. Values: `images` - Allows upload of image MIME types (`bmp`, `gif`, `jpg`, `jpeg`, `jpe`, `jif`, `jfif`, `jfi`, `png`, `wbmp`, `xbm`, `tiff`). `documents` - Allows upload of document MIME types (`txt`, `pdf`, `rtf`, `doc`, `docx`, `xls`, `xlsx`, `accdb`, `mdb`, `one`, `pps`, `ppsx`, `ppt`, `pptx`, `pub`, `odt`, `ods`, `odp`, `odg`, `odf`). `other` - Allows file types defined in the `file_types_other` array. items: type: string example: images, documents, other file_types_other: type: array description: > (file) A list of other file types allowed with the file upload option. items: type: string example: pdf file_max_size: type: integer description: > (file) The maximum size for a file that can be used with the file upload option. This will still be limited by the server. example: 5 text_characters_limited: type: boolean description: > (text, multi_line_text) Flag to validate the length of a text or multi-line text input. text_min_length: type: integer description: > (text, multi_line_text) The minimum length allowed for a text or multi-line text option. example: 1 text_max_length: type: integer description: > (text, multi_line_text) The maximum length allowed for a text or multi line text option. example: 55 text_lines_limited: type: boolean description: > (multi_line_text) Flag to validate the maximum number of lines allowed on a multi-line text input. example: true text_max_lines: type: integer description: > (multi_line_text) The maximum number of lines allowed on a multi-line text input. example: 4 number_limited: type: boolean description: > (numbers_only_text) Flag to limit the value of a number option. example: true number_limit_mode: type: string description: > (numbers_only_text) The type of limit on values entered for a number option. example: lowest enum: - lowest - highest - range number_lowest_value: type: number description: > (numbers_only_text) The lowest allowed value for a number option if `number_limited` is true. example: 100 number_highest_value: type: number description: > (numbers_only_text) The highest allowed value for a number option if `number_limited` is true. number_integers_only: type: boolean description: > (numbers_only_text) Flag to limit the input on a number option to whole numbers only. example: false product_list_adjusts_inventory: type: boolean description: > (product_list, product_list_with_images) Flag for automatically adjusting inventory on a product included in the list. product_list_adjusts_pricing: type: boolean description: > (product_list, product_list_with_images) Flag to add the optional product's price to the main product's price. product_list_shipping_calc: type: string description: > (product_list, product_list_with_images) How to factor the optional product's weight and package dimensions into the shipping quote. Values: `none` - don't adjust; `weight` - use shipping weight only; `package` - use weight and dimensions. example: weight enum: - none - weight - package sort_order: type: integer description: >- Order in which the option is displayed on the storefront. example: 1 option_values: minItems: 1 type: array x-required: - post - put items: title: Option Value allOf: - title: Option Value Base description: Common Option Value properties. properties: is_default: type: boolean description: > The flag for preselecting a value as the default on the storefront. This field is not supported for swatch options/modifiers. example: false label: type: string description: > The text display identifying the value on the storefront. Required in a /POST. example: Green x-required: - post sort_order: maximum: 2147483647 minimum: -2147483648 type: integer description: > The order in which the value will be displayed on the product page. Required in a /POST. example: 0 x-required: - post value_data: type: object properties: {} description: > Extra data describing the value, based on the type of option or modifier with which the value is associated. The `swatch` type option can accept an array of `colors`, with up to three hexidecimal color keys; or an `image_url`, which is a full image URL path including protocol. The `product list` type option requires a `product_id`. The `checkbox` type option requires a boolean flag, called `checked_value`, to determine which value is considered to be the checked state. required: - label - sort_order - properties: id: type: integer description: > The unique numeric ID of the value; increments sequentially. type: object image_url: type: string description: Publicly available image url - type: object properties: name: type: string description: > The unique option name, auto-generated from the display name, a timestamp, and the product ID. example: Add-a-$5-Donation1535042499-187 meta: title: Meta type: object properties: {} description: Empty meta object; may be used later. examples: example-1: value: data: id: 55 product_id: 4 display_name: Add-a-$5-Donation1535042499-187 type: radio_buttons config: default_value: string checked_by_default: true checkbox_label: string date_limited: true date_limit_mode: earliest date_earliest_value: '2022-08-24T00:00:00+00:00' date_latest_value: '2022-08-27T00:00:00+00:00' file_types_mode: specific file_types_supported: - images, documents, other file_types_other: - pdf file_max_size: 5 text_characters_limited: true text_min_length: 1 text_max_length: 55 text_lines_limited: true text_max_lines: 4 number_limited: true number_limit_mode: lowest number_lowest_value: 100 number_highest_value: 0 number_integers_only: false product_list_adjusts_inventory: true product_list_adjusts_pricing: true product_list_shipping_calc: none sort_order: 1 option_values: - is_default: false label: Green sort_order: 0 value_data: {} id: 0 image_url: string name: Add-a-$5-Donation1535042499-187 meta: {} example-2: value: data: id: 220 product_id: 192 name: Color (Colors only) display_name: Color type: swatch sort_order: 0 option_values: - id: 174 label: Beige sort_order: 1 value_data: colors: - '#FAFAEB' is_default: false - id: 175 label: Grey sort_order: 2 value_data: colors: - '#BDBDBD' is_default: false - id: 176 label: Black sort_order: 3 value_data: colors: - '#000000' is_default: false - id: 189 label: Black-Walnut sort_order: 4 value_data: colors: - '#e80ee8' is_default: false config: {} meta: {} '409': description: > Option was in conflict with another option. This is the result of duplicate unique fields, such as `name`. content: application/json: schema: title: Error Response type: object properties: errors: title: Detailed Errors type: object properties: {} additionalProperties: true instance: type: string status: type: integer description: | The HTTP status code. title: type: string description: | The error title describing the particular error. type: type: string '422': description: > Option was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. content: application/json: schema: title: Error Response type: object properties: errors: title: Detailed Errors type: object properties: {} additionalProperties: true instance: type: string status: type: integer description: | The HTTP status code. title: type: string description: | The error title describing the particular error. type: type: string x-codegen-request-body-name: Option parameters: - $ref: '#/components/parameters/Accept' - $ref: '#/components/parameters/ProductIdParam' /catalog/products/{product_id}/options/{option_id}: get: tags: - Product Variant Options summary: BigCommerce Get a Product Variant Option description: Returns a single *Variant Option*. Optional parameters can be passed in. operationId: getProductVariantOption parameters: - name: include_fields in: query description: >- Fields to include, in a comma-separated list. The ID and the specified fields will be returned. schema: type: string - name: exclude_fields in: query description: >- Fields to exclude, in a comma-separated list. The specified fields will be excluded from a response. The ID cannot be excluded. schema: type: string responses: '200': description: '' content: application/json: schema: title: Option Response type: object properties: data: $ref: '#/components/schemas/productOption_Full' meta: $ref: '#/components/schemas/metaEmpty_Full' '404': description: | The resource was not found. content: application/json: schema: title: Not Found type: object properties: status: type: integer description: | 404 HTTP status code. title: type: string description: The error title describing the particular error. type: type: string instance: type: string description: Error payload for the BigCommerce API. put: tags: - Product Variant Options summary: BigCommerce Update a Product Variant Option description: |- Updates a *Variant Option*. **Read-Only Fields** * id operationId: updateProductVariantOption parameters: - $ref: '#/components/parameters/ContentType' requestBody: content: application/json: schema: title: Option Put description: The model for a PUT to update options on a product. allOf: - title: Option Base type: object properties: id: type: integer description: > The unique numerical ID of the option, increments sequentially. nullable: true example: 55 product_id: type: integer description: > The unique numerical ID of the product to which the option belongs. example: 4 x-required: - post - put display_name: maxLength: 255 minLength: 1 type: string description: | The name of the option shown on the storefront. example: Add-a-$5-Donation1535042499-187 x-required: - post - put type: type: string description: > The type of option, which determines how it will display on the storefront. Acceptable values: `radio_buttons`, `rectangles`, `dropdown`, `product_list`, `product_list_with_images`, `swatch`. For reference, the former v2 API values are: RB = radio_buttons, RT = rectangles, S = dropdown, P = product_list, PI = product_list_with_images, CS = swatch. enum: - radio_buttons - rectangles - dropdown - product_list - product_list_with_images - swatch x-required: - post - put config: title: Option Config type: object properties: default_value: type: string description: > (date, text, multi_line_text, numbers_only_text) The default value. Shown on a date option as an ISO-8601–formatted string, or on a text option as a string. checked_by_default: type: boolean description: > (checkbox) Flag for setting the checkbox to be checked by default. checkbox_label: type: string description: | (checkbox) Label displayed for the checkbox option. date_limited: type: boolean description: > (date) Flag to limit the dates allowed to be entered on a date option. date_limit_mode: type: string description: > (date) The type of limit that is allowed to be entered on a date option. example: range enum: - earliest - range - latest date_earliest_value: type: string description: > (date) The earliest date allowed to be entered on the date option, as an ISO-8601 formatted string. format: date-time example: '2018-08-31T00:00:00+00:00' date_latest_value: type: string description: > (date) The latest date allowed to be entered on the date option, as an ISO-8601 formatted string. format: date-time example: '2019-01-01T00:00:00+00:00' file_types_mode: type: string description: > (file) The kind of restriction on the file types that can be uploaded with a file upload option. Values: `specific` - restricts uploads to particular file types; `all` - allows all file types. example: specific enum: - specific - all file_types_supported: type: array description: > (file) The type of files allowed to be uploaded if the `file_type_option` is set to `specific`. Values: `images` - Allows upload of image MIME types (`bmp`, `gif`, `jpg`, `jpeg`, `jpe`, `jif`, `jfif`, `jfi`, `png`, `wbmp`, `xbm`, `tiff`). `documents` - Allows upload of document MIME types (`txt`, `pdf`, `rtf`, `doc`, `docx`, `xls`, `xlsx`, `accdb`, `mdb`, `one`, `pps`, `ppsx`, `ppt`, `pptx`, `pub`, `odt`, `ods`, `odp`, `odg`, `odf`). `other` - Allows file types defined in the `file_types_other` array. example: - images - documents - other items: type: string file_types_other: type: array description: > (file) A list of other file types allowed with the file upload option. example: - pdf - txt items: type: string file_max_size: type: integer description: > (file) The maximum size for a file that can be used with the file upload option. This will still be limited by the server. example: 5 text_characters_limited: type: boolean description: > (text, multi_line_text) Flag to validate the length of a text or multi-line text input. text_min_length: type: integer description: > (text, multi_line_text) The minimum length allowed for a text or multi-line text option. example: 1 text_max_length: type: integer description: > (text, multi_line_text) The maximum length allowed for a text or multi line text option. example: 55 text_lines_limited: type: boolean description: > (multi_line_text) Flag to validate the maximum number of lines allowed on a multi-line text input. example: true text_max_lines: type: integer description: > (multi_line_text) The maximum number of lines allowed on a multi-line text input. example: 4 number_limited: type: boolean description: > (numbers_only_text) Flag to limit the value of a number option. example: true number_limit_mode: type: string description: > (numbers_only_text) The type of limit on values entered for a number option. example: lowest enum: - lowest - highest - range number_lowest_value: type: number description: > (numbers_only_text) The lowest allowed value for a number option if `number_limited` is true. example: 100 number_highest_value: type: number description: > (numbers_only_text) The highest allowed value for a number option if `number_limited` is true. number_integers_only: type: boolean description: > (numbers_only_text) Flag to limit the input on a number option to whole numbers only. example: false product_list_adjusts_inventory: type: boolean description: > (product_list, product_list_with_images) Flag for automatically adjusting inventory on a product included in the list. product_list_adjusts_pricing: type: boolean description: > (product_list, product_list_with_images) Flag to add the optional product's price to the main product's price. product_list_shipping_calc: type: string description: > (product_list, product_list_with_images) How to factor the optional product's weight and package dimensions into the shipping quote. Values: `none` - don't adjust; `weight` - use shipping weight only; `package` - use weight and dimensions. example: weight enum: - none - weight - package description: >- The values for option config can vary based on the Modifier created. sort_order: type: integer description: >- Order in which the option is displayed on the storefront. example: 1 option_values: minItems: 1 type: array items: title: Option Value type: object allOf: - title: Option Value Base required: - label - sort_order type: object properties: is_default: type: boolean description: > The flag for preselecting a value as the default on the storefront. This field is not supported for swatch options/modifiers. example: false label: type: string description: > The text display identifying the value on the storefront. Required in a /POST. example: Green x-required: - post sort_order: maximum: 2147483647 minimum: -2147483648 type: integer description: > The order in which the value will be displayed on the product page. Required in a /POST. example: 0 x-required: - post value_data: type: object properties: {} description: > Extra data describing the value, based on the type of option or modifier with which the value is associated. The `swatch` type option can accept an array of `colors`, with up to three hexidecimal color keys; or an `image_url`, which is a full image URL path including protocol. The `product list` type option requires a `product_id`. The `checkbox` type option requires a boolean flag, called `checked_value`, to determine which value is considered to be the checked state. description: Common Option Value properties. - type: object properties: id: type: integer description: > The unique numeric ID of the value; increments sequentially. x-required: - post - put image_url: type: string description: Publicly available image url description: Common Option properties. required: true responses: '200': description: '' content: application/json: schema: title: Option Response type: object properties: data: title: Option type: object allOf: - title: Option Base type: object properties: id: type: integer description: > The unique numerical ID of the option, increments sequentially. example: 55 x-nullable: true product_id: type: integer description: > The unique numerical ID of the product to which the option belongs. example: 4 x-required: - post - put display_name: maxLength: 255 minLength: 1 type: string description: | The name of the option shown on the storefront. example: Add-a-$5-Donation1535042499-187 x-required: - post - put type: type: string description: > The type of option, which determines how it will display on the storefront. Acceptable values: `radio_buttons`, `rectangles`, `dropdown`, `product_list`, `product_list_with_images`, `swatch`. For reference, the former v2 API values are: RB = radio_buttons, RT = rectangles, S = dropdown, P = product_list, PI = product_list_with_images, CS = swatch. enum: - radio_buttons - rectangles - dropdown - product_list - product_list_with_images - swatch x-required: - post - put config: title: Option Config type: object properties: default_value: type: string description: > (date, text, multi_line_text, numbers_only_text) The default value. Shown on a date option as an ISO-8601–formatted string, or on a text option as a string. checked_by_default: type: boolean description: > (checkbox) Flag for setting the checkbox to be checked by default. checkbox_label: type: string description: > (checkbox) Label displayed for the checkbox option. date_limited: type: boolean description: > (date) Flag to limit the dates allowed to be entered on a date option. date_limit_mode: type: string description: > (date) The type of limit that is allowed to be entered on a date option. example: range enum: - earliest - range - latest date_earliest_value: type: string description: > (date) The earliest date allowed to be entered on the date option, as an ISO-8601 formatted string. format: date date_latest_value: type: string description: > (date) The latest date allowed to be entered on the date option, as an ISO-8601 formatted string. format: date file_types_mode: type: string description: > (file) The kind of restriction on the file types that can be uploaded with a file upload option. Values: `specific` - restricts uploads to particular file types; `all` - allows all file types. example: specific enum: - specific - all file_types_supported: type: array description: > (file) The type of files allowed to be uploaded if the `file_type_option` is set to `specific`. Values: `images` - Allows upload of image MIME types (`bmp`, `gif`, `jpg`, `jpeg`, `jpe`, `jif`, `jfif`, `jfi`, `png`, `wbmp`, `xbm`, `tiff`). `documents` - Allows upload of document MIME types (`txt`, `pdf`, `rtf`, `doc`, `docx`, `xls`, `xlsx`, `accdb`, `mdb`, `one`, `pps`, `ppsx`, `ppt`, `pptx`, `pub`, `odt`, `ods`, `odp`, `odg`, `odf`). `other` - Allows file types defined in the `file_types_other` array. items: type: string example: images, documents, other file_types_other: type: array description: > (file) A list of other file types allowed with the file upload option. items: type: string example: pdf file_max_size: type: integer description: > (file) The maximum size for a file that can be used with the file upload option. This will still be limited by the server. example: 5 text_characters_limited: type: boolean description: > (text, multi_line_text) Flag to validate the length of a text or multi-line text input. text_min_length: type: integer description: > (text, multi_line_text) The minimum length allowed for a text or multi-line text option. example: 1 text_max_length: type: integer description: > (text, multi_line_text) The maximum length allowed for a text or multi line text option. example: 55 text_lines_limited: type: boolean description: > (multi_line_text) Flag to validate the maximum number of lines allowed on a multi-line text input. example: true text_max_lines: type: integer description: > (multi_line_text) The maximum number of lines allowed on a multi-line text input. example: 4 number_limited: type: boolean description: > (numbers_only_text) Flag to limit the value of a number option. example: true number_limit_mode: type: string description: > (numbers_only_text) The type of limit on values entered for a number option. example: lowest enum: - lowest - highest - range number_lowest_value: type: number description: > (numbers_only_text) The lowest allowed value for a number option if `number_limited` is true. example: 100 number_highest_value: type: number description: > (numbers_only_text) The highest allowed value for a number option if `number_limited` is true. number_integers_only: type: boolean description: > (numbers_only_text) Flag to limit the input on a number option to whole numbers only. example: false product_list_adjusts_inventory: type: boolean description: > (product_list, product_list_with_images) Flag for automatically adjusting inventory on a product included in the list. product_list_adjusts_pricing: type: boolean description: > (product_list, product_list_with_images) Flag to add the optional product's price to the main product's price. product_list_shipping_calc: type: string description: > (product_list, product_list_with_images) How to factor the optional product's weight and package dimensions into the shipping quote. Values: `none` - don't adjust; `weight` - use shipping weight only; `package` - use weight and dimensions. example: weight enum: - none - weight - package description: >- The values for option config can vary based on the Modifier created. sort_order: type: integer description: >- Order in which the option is displayed on the storefront. example: 1 option_values: minItems: 1 type: array items: title: Option Value type: object allOf: - title: Option Value Base required: - label - sort_order type: object properties: is_default: type: boolean description: > The flag for preselecting a value as the default on the storefront. This field is not supported for swatch options/modifiers. example: false label: type: string description: > The text display identifying the value on the storefront. Required in a /POST. example: Green x-required: - post sort_order: maximum: 2147483647 minimum: -2147483648 type: integer description: > The order in which the value will be displayed on the product page. Required in a /POST. example: 0 x-required: - post value_data: type: object properties: {} description: > Extra data describing the value, based on the type of option or modifier with which the value is associated. The `swatch` type option can accept an array of `colors`, with up to three hexidecimal color keys; or an `image_url`, which is a full image URL path including protocol. The `product list` type option requires a `product_id`. The `checkbox` type option requires a boolean flag, called `checked_value`, to determine which value is considered to be the checked state. x-nullable: true description: Common Option Value properties. - type: object properties: id: type: integer description: > The unique numeric ID of the value; increments sequentially. x-required: - post - put image_url: type: string description: Publicly available image url description: Common Option properties. - type: object properties: name: type: string description: > The unique option name, auto-generated from the display name, a timestamp, and the product ID. example: Add-a-$5-Donation1535042499-187 meta: $ref: '#/components/schemas/metaEmpty_Full' example: data: id: 220 product_id: 192 name: Color (Colors only) display_name: Color type: swatch sort_order: 0 option_values: - id: 174 label: Beige sort_order: 1 value_data: colors: - '#FAFAEB' is_default: false - id: 175 label: Grey sort_order: 2 value_data: colors: - '#BDBDBD' is_default: false - id: 176 label: Black sort_order: 3 value_data: colors: - '#000000' is_default: false - id: 189 label: Black-Walnut sort_order: 4 value_data: colors: - '#e80ee8' is_default: false config: {} meta: {} '409': description: > The `Option` was in conflict with another option. This is the result of duplicate unique fields, such as `name`. content: application/json: schema: title: Error Response type: object properties: errors: title: Detailed Errors type: object properties: {} additionalProperties: true instance: type: string status: type: integer description: | The HTTP status code. title: type: string description: | The error title describing the particular error. type: type: string '422': description: > The `Option` was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. content: application/json: schema: title: Error Response type: object properties: errors: title: Detailed Errors type: object properties: {} additionalProperties: true instance: type: string status: type: integer description: | The HTTP status code. title: type: string description: | The error title describing the particular error. type: type: string x-codegen-request-body-name: option delete: tags: - Product Variant Options summary: BigCommerce Delete a Product Variant Option description: Deletes a *Variant Option*. operationId: deleteProductVariantOption responses: '204': description: '' content: {} parameters: - $ref: '#/components/parameters/Accept' - $ref: '#/components/parameters/ProductIdParam' - $ref: '#/components/parameters/OptionIdParam' /catalog/products/{product_id}/options/{option_id}/values: get: tags: - Values summary: BigCommerce Get All Product Variant Option Values description: >- Returns a list of all *Variant Option Values*. Optional parameters can be passed in. operationId: getProductVariantOptionValues parameters: - name: option_id in: path description: | The ID of the `Option`. required: true schema: type: integer - name: include_fields in: query description: >- Fields to include, in a comma-separated list. The ID and the specified fields will be returned. schema: type: string - name: exclude_fields in: query description: >- Fields to exclude, in a comma-separated list. The specified fields will be excluded from a response. The ID cannot be excluded. schema: type: string - name: page in: query description: Specifies the page number in a limited (paginated) list of products. schema: type: integer - name: limit in: query description: >- Controls the number of items per page in a limited (paginated) list of products. schema: type: integer responses: '200': description: '' content: application/json: schema: title: Option Value Collection Response type: object properties: data: type: array items: title: Option Value type: object allOf: - title: Option Value Base required: - label - sort_order type: object properties: is_default: type: boolean description: > The flag for preselecting a value as the default on the storefront. This field is not supported for swatch options/modifiers. example: false label: type: string description: > The text display identifying the value on the storefront. Required in a /POST. example: Green x-required: - post sort_order: maximum: 2147483647 minimum: -2147483648 type: integer description: > The order in which the value will be displayed on the product page. Required in a /POST. example: 0 x-required: - post value_data: type: object properties: {} description: > Extra data describing the value, based on the type of option or modifier with which the value is associated. The `swatch` type option can accept an array of `colors`, with up to three hexidecimal color keys; or an `image_url`, which is a full image URL path including protocol. The `product list` type option requires a `product_id`. The `checkbox` type option requires a boolean flag, called `checked_value`, to determine which value is considered to be the checked state. x-nullable: true description: Common Option Value properties. - type: object properties: id: type: integer description: > The unique numeric ID of the value; increments sequentially. meta: $ref: '#/components/schemas/metaCollection_Full' description: Get Option Values response. example: data: - id: 174 label: Beige sort_order: 1 value_data: colors: - '#FAFAEB' is_default: false - id: 175 label: Grey sort_order: 2 value_data: colors: - '#BDBDBD' is_default: false - id: 176 label: Black sort_order: 3 value_data: colors: - '#000000' is_default: false - id: 189 label: Black-Walnut sort_order: 4 value_data: colors: - '#e80ee8' is_default: false meta: pagination: total: 4 count: 4 per_page: 50 current_page: 1 total_pages: 1 links: current: '?page=1&limit=50' post: tags: - Values summary: BigCommerce Create a Product Variant Option Value description: |- Creates a *Variant Option Value*. **Required Fields** * label * sort_order **Read-Only Fields** * id **Limits** * 250 option values per option limit. operationId: createProductVariantOptionValue parameters: - $ref: '#/components/parameters/ContentType' - name: option_id in: path description: | The ID of the `Option`. required: true schema: type: integer requestBody: content: application/json: schema: title: Option Value Post description: The model for a POST to create option values on a product. allOf: - title: Option Value Base required: - label - sort_order type: object properties: is_default: type: boolean description: > The flag for preselecting a value as the default on the storefront. This field is not supported for swatch options/modifiers. example: false label: type: string description: > The text display identifying the value on the storefront. Required in a /POST. example: Green x-required: - post sort_order: maximum: 2147483647 minimum: -2147483648 type: integer description: > The order in which the value will be displayed on the product page. Required in a /POST. example: 0 x-required: - post value_data: type: object properties: {} description: > Extra data describing the value, based on the type of option or modifier with which the value is associated. The `swatch` type option can accept an array of `colors`, with up to three hexidecimal color keys; or an `image_url`, which is a full image URL path including protocol. The `product list` type option requires a `product_id`. The `checkbox` type option requires a boolean flag, called `checked_value`, to determine which value is considered to be the checked state. description: Common Option Value properties. required: true responses: '200': description: '' content: application/json: schema: title: Option Value Response type: object properties: data: title: Option Value type: object allOf: - title: Option Value Base required: - label - sort_order type: object properties: is_default: type: boolean description: > The flag for preselecting a value as the default on the storefront. This field is not supported for swatch options/modifiers. example: false label: type: string description: > The text display identifying the value on the storefront. Required in a /POST. example: Green x-required: - post sort_order: maximum: 2147483647 minimum: -2147483648 type: integer description: > The order in which the value will be displayed on the product page. Required in a /POST. example: 0 x-required: - post value_data: type: object properties: {} description: > Extra data describing the value, based on the type of option or modifier with which the value is associated. The `swatch` type option can accept an array of `colors`, with up to three hexidecimal color keys; or an `image_url`, which is a full image URL path including protocol. The `product list` type option requires a `product_id`. The `checkbox` type option requires a boolean flag, called `checked_value`, to determine which value is considered to be the checked state. x-nullable: true description: Common Option Value properties. - type: object properties: id: type: integer description: > The unique numeric ID of the value; increments sequentially. meta: $ref: '#/components/schemas/metaEmpty_Full' example: data: id: 44 label: Pick a color sort_order: 9 value_data: colors: - '#123c91, #FFFF00, #397a44' is_default: false '422': description: > The `OptionValue` was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. content: application/json: schema: title: Error Response type: object properties: errors: title: Detailed Errors type: object properties: {} additionalProperties: true instance: type: string status: type: integer description: | The HTTP status code. title: type: string description: | The error title describing the particular error. type: type: string x-codegen-request-body-name: OptionValue parameters: - $ref: '#/components/parameters/Accept' - $ref: '#/components/parameters/ProductIdParam' - $ref: '#/components/parameters/OptionIdParam' /catalog/products/{product_id}/options/{option_id}/values/{value_id}: get: tags: - Values summary: BigCommerce Get a Product Variant Option Value description: >- Returns a single *Variant Option Value*. Optional parameters can be passed in. operationId: getProductVariantOptionValue parameters: - name: option_id in: path description: | The ID of the `Option`. required: true schema: type: integer - name: value_id in: path description: | The ID of the `Modifier/Option Value`. required: true schema: type: integer - name: include_fields in: query description: >- Fields to include, in a comma-separated list. The ID and the specified fields will be returned. schema: type: string - name: exclude_fields in: query description: >- Fields to exclude, in a comma-separated list. The specified fields will be excluded from a response. The ID cannot be excluded. schema: type: string responses: '200': description: '' content: application/json: schema: title: Option Value Response type: object properties: data: title: Option Value type: object allOf: - title: Option Value Base required: - label - sort_order type: object properties: is_default: type: boolean description: > The flag for preselecting a value as the default on the storefront. This field is not supported for swatch options/modifiers. example: false label: type: string description: > The text display identifying the value on the storefront. Required in a /POST. example: Green x-required: - post sort_order: maximum: 2147483647 minimum: -2147483648 type: integer description: > The order in which the value will be displayed on the product page. Required in a /POST. example: 0 x-required: - post value_data: type: object properties: {} description: > Extra data describing the value, based on the type of option or modifier with which the value is associated. The `swatch` type option can accept an array of `colors`, with up to three hexidecimal color keys; or an `image_url`, which is a full image URL path including protocol. The `product list` type option requires a `product_id`. The `checkbox` type option requires a boolean flag, called `checked_value`, to determine which value is considered to be the checked state. x-nullable: true description: Common Option Value properties. - type: object properties: id: type: integer description: > The unique numeric ID of the value; increments sequentially. meta: $ref: '#/components/schemas/metaEmpty_Full' example: data: id: 44 label: Pick a color sort_order: 9 value_data: colors: - '#123c91, #FFFF00, #397a44' is_default: false '404': description: | The resource was not found. content: application/json: schema: title: Not Found type: object properties: status: type: integer description: | 404 HTTP status code. title: type: string description: The error title describing the particular error. type: type: string instance: type: string description: Error payload for the BigCommerce API. put: tags: - Values summary: BigCommerce Update a Product Variant Option Value description: |- Updates a *Variant Option Value*. **Read-Only Fields** * id operationId: updateProductVariantOptionValue parameters: - $ref: '#/components/parameters/ContentType' - name: option_id in: path description: | The ID of the `Option`. required: true schema: type: integer - name: value_id in: path description: | The ID of the `Modifier/Option Value`. required: true schema: type: integer requestBody: description: | A BigCommerce `OptionValue` object. content: application/json: schema: title: Option Value Put description: The model for a PUT to update option values on a product. allOf: - title: Option Value Base required: - label - sort_order type: object properties: is_default: type: boolean description: > The flag for preselecting a value as the default on the storefront. This field is not supported for swatch options/modifiers. example: false label: type: string description: > The text display identifying the value on the storefront. Required in a /POST. example: Green x-required: - post sort_order: maximum: 2147483647 minimum: -2147483648 type: integer description: > The order in which the value will be displayed on the product page. Required in a /POST. example: 0 x-required: - post value_data: type: object properties: {} description: > Extra data describing the value, based on the type of option or modifier with which the value is associated. The `swatch` type option can accept an array of `colors`, with up to three hexidecimal color keys; or an `image_url`, which is a full image URL path including protocol. The `product list` type option requires a `product_id`. The `checkbox` type option requires a boolean flag, called `checked_value`, to determine which value is considered to be the checked state. description: Common Option Value properties. - type: object properties: id: type: integer description: > The unique numeric ID of the value; increments sequentially. x-required: - put required: true responses: '200': description: '' content: application/json: schema: title: Option Value Response type: object properties: data: title: Option Value type: object allOf: - title: Option Value Base required: - label - sort_order type: object properties: is_default: type: boolean description: > The flag for preselecting a value as the default on the storefront. This field is not supported for swatch options/modifiers. example: false label: type: string description: > The text display identifying the value on the storefront. Required in a /POST. example: Green x-required: - post sort_order: maximum: 2147483647 minimum: -2147483648 type: integer description: > The order in which the value will be displayed on the product page. Required in a /POST. example: 0 x-required: - post value_data: type: object properties: {} description: > Extra data describing the value, based on the type of option or modifier with which the value is associated. The `swatch` type option can accept an array of `colors`, with up to three hexidecimal color keys; or an `image_url`, which is a full image URL path including protocol. The `product list` type option requires a `product_id`. The `checkbox` type option requires a boolean flag, called `checked_value`, to determine which value is considered to be the checked state. x-nullable: true description: Common Option Value properties. - type: object properties: id: type: integer description: > The unique numeric ID of the value; increments sequentially. meta: $ref: '#/components/schemas/metaEmpty_Full' example: data: id: 44 label: Pick a color sort_order: 9 value_data: colors: - '#123c91, #FFFF00, #397a44' is_default: false '404': description: No option(s) were found with this query. content: {} '422': description: > The `OptionValue` was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. content: application/json: schema: title: Error Response type: object properties: errors: title: Detailed Errors type: object properties: {} additionalProperties: true instance: type: string status: type: integer description: | The HTTP status code. title: type: string description: | The error title describing the particular error. type: type: string x-codegen-request-body-name: OptionValue delete: tags: - Values summary: BigCommerce Delete a Product Variant Option Value description: Deletes a *Variant Option Value*. operationId: deleteProductVariantOptionValue parameters: - name: option_id in: path description: | The ID of the `Option`. required: true schema: type: integer - name: value_id in: path description: | The ID of the `Modifier/Option Value`. required: true schema: type: integer responses: '204': description: '' content: {} parameters: - $ref: '#/components/parameters/Accept' - $ref: '#/components/parameters/ProductIdParam' - $ref: '#/components/parameters/OptionIdParam' - $ref: '#/components/parameters/ValueIdParam' components: schemas: productOption_Base: title: productOption_Base type: object properties: id: type: integer description: | The unique numerical ID of the option, increments sequentially. nullable: true example: 55 product_id: type: integer description: | The unique numerical ID of the product to which the option belongs. example: 4 x-required: - post - put display_name: maxLength: 255 minLength: 1 type: string description: | The name of the option shown on the storefront. example: Add-a-$5-Donation1535042499-187 x-required: - post - put type: type: string description: > The type of option, which determines how it will display on the storefront. Acceptable values: `radio_buttons`, `rectangles`, `dropdown`, `product_list`, `product_list_with_images`, `swatch`. For reference, the former v2 API values are: RB = radio_buttons, RT = rectangles, S = dropdown, P = product_list, PI = product_list_with_images, CS = swatch. enum: - radio_buttons - rectangles - dropdown - product_list - product_list_with_images - swatch x-required: - post - put config: $ref: '#/components/schemas/productOptionConfig_Full' sort_order: type: integer description: 'Order in which the option is displayed on the storefront. ' example: 1 option_values: type: array items: $ref: '#/components/schemas/productOptionOptionValue_Full' description: Common Option properties. x-internal: false productOption_Full: title: productOption_Full allOf: - $ref: '#/components/schemas/productOption_Base' - type: object properties: name: type: string description: > The unique option name, auto-generated from the display name, a timestamp, and the product ID. example: Add-a-$5-Donation1535042499-187 x-internal: false productOptionOptionValue_Base: title: productOptionOptionValue_Base required: - label - sort_order type: object properties: is_default: type: boolean description: > The flag for preselecting a value as the default on the storefront. This field is not supported for swatch options/modifiers. example: false label: type: string description: > The text display identifying the value on the storefront. Required in a /POST. example: Green x-required: - post sort_order: maximum: 2147483647 minimum: -2147483648 type: integer description: > The order in which the value will be displayed on the product page. Required in a /POST. example: 0 x-required: - post value_data: type: object properties: {} description: > Extra data describing the value, based on the type of option or modifier with which the value is associated. The `swatch` type option can accept an array of `colors`, with up to three hexidecimal color keys; or an `image_url`, which is a full image URL path including protocol. The `product list` type option requires a `product_id`. The `checkbox` type option requires a boolean flag, called `checked_value`, to determine which value is considered to be the checked state. If no data is available, returns `null`. nullable: true description: Common Product Option `option_value` properties. x-internal: false productOptionOptionValue_Full: title: productOptionOptionValue_Full description: Product Option `option_value`. allOf: - $ref: '#/components/schemas/productOptionOptionValue_Base' - type: object properties: id: type: integer description: | The unique numeric ID of the value; increments sequentially. x-internal: false productOptionConfig_Full: title: productOptionConfig_Full type: object properties: default_value: type: string description: > (date, text, multi_line_text, numbers_only_text) The default value. Shown on a date option as an ISO-8601–formatted string, or on a text option as a string. checked_by_default: type: boolean description: | (checkbox) Flag for setting the checkbox to be checked by default. checkbox_label: type: string description: | (checkbox) Label displayed for the checkbox option. date_limited: type: boolean description: > (date) Flag to limit the dates allowed to be entered on a date option. date_limit_mode: type: string description: > (date) The type of limit that is allowed to be entered on a date option. example: range enum: - earliest - range - latest date_earliest_value: type: string description: > (date) The earliest date allowed to be entered on the date option, as an ISO-8601 formatted string. format: date date_latest_value: type: string description: > (date) The latest date allowed to be entered on the date option, as an ISO-8601 formatted string. format: date file_types_mode: type: string description: > (file) The kind of restriction on the file types that can be uploaded with a file upload option. Values: `specific` - restricts uploads to particular file types; `all` - allows all file types. example: specific enum: - specific - all file_types_supported: type: array description: > (file) The type of files allowed to be uploaded if the `file_type_option` is set to `specific`. Values: `images` - Allows upload of image MIME types (`bmp`, `gif`, `jpg`, `jpeg`, `jpe`, `jif`, `jfif`, `jfi`, `png`, `wbmp`, `xbm`, `tiff`). `documents` - Allows upload of document MIME types (`txt`, `pdf`, `rtf`, `doc`, `docx`, `xls`, `xlsx`, `accdb`, `mdb`, `one`, `pps`, `ppsx`, `ppt`, `pptx`, `pub`, `odt`, `ods`, `odp`, `odg`, `odf`). `other` - Allows file types defined in the `file_types_other` array. items: type: string example: images, documents, other file_types_other: type: array description: > (file) A list of other file types allowed with the file upload option. items: type: string example: pdf file_max_size: type: integer description: > (file) The maximum size for a file that can be used with the file upload option. This will still be limited by the server. example: 5 text_characters_limited: type: boolean description: > (text, multi_line_text) Flag to validate the length of a text or multi-line text input. text_min_length: type: integer description: > (text, multi_line_text) The minimum length allowed for a text or multi-line text option. example: 1 text_max_length: type: integer description: > (text, multi_line_text) The maximum length allowed for a text or multi line text option. example: 55 text_lines_limited: type: boolean description: > (multi_line_text) Flag to validate the maximum number of lines allowed on a multi-line text input. example: true text_max_lines: type: integer description: > (multi_line_text) The maximum number of lines allowed on a multi-line text input. example: 4 number_limited: type: boolean description: | (numbers_only_text) Flag to limit the value of a number option. example: true number_limit_mode: type: string description: > (numbers_only_text) The type of limit on values entered for a number option. example: lowest enum: - lowest - highest - range number_lowest_value: type: number description: > (numbers_only_text) The lowest allowed value for a number option if `number_limited` is true. example: 100 number_highest_value: type: number description: > (numbers_only_text) The highest allowed value for a number option if `number_limited` is true. number_integers_only: type: boolean description: > (numbers_only_text) Flag to limit the input on a number option to whole numbers only. example: false product_list_adjusts_inventory: type: boolean description: > (product_list, product_list_with_images) Flag for automatically adjusting inventory on a product included in the list. product_list_adjusts_pricing: type: boolean description: > (product_list, product_list_with_images) Flag to add the optional product's price to the main product's price. product_list_shipping_calc: type: string description: > (product_list, product_list_with_images) How to factor the optional product's weight and package dimensions into the shipping quote. Values: `none` - don't adjust; `weight` - use shipping weight only; `package` - use weight and dimensions. example: weight enum: - none - weight - package description: The values for option config can vary based on the Modifier created. x-internal: false metaCollection_Full: title: metaCollection_Full type: object properties: pagination: $ref: '#/components/schemas/pagination_Full' description: Data about the response, including pagination and collection totals. x-internal: false pagination_Full: title: pagination_Full type: object properties: total: type: integer description: | Total number of items in the result set. example: 36 count: type: integer description: | Total number of items in the collection response. example: 36 per_page: type: integer description: > The amount of items returned in the collection per page, controlled by the limit parameter. example: 50 current_page: type: integer description: | The page you are currently on within the collection. example: 1 total_pages: type: integer description: | The total number of pages in the collection. example: 1 links: type: object properties: previous: type: string description: | Link to the previous page returned in the response. current: type: string description: | Link to the current page returned in the response. example: '?page=1&limit=50' next: type: string description: | Link to the next page returned in the response. description: > Pagination links for the previous and next parts of the whole collection. description: Data about the response, including pagination and collection totals. x-internal: false metaEmpty_Full: type: object title: Response meta properties: {} additionalProperties: true description: Response metadata. parameters: ProductIdParam: name: product_id in: path description: | The ID of the `Product` to which the resource belongs. required: true schema: type: integer ValueIdParam: name: value_id description: | The ID of the `Modifier/Option Value`. required: true in: path schema: type: integer OptionIdParam: name: option_id description: | The ID of the `Option`. required: true in: path schema: type: integer Accept: name: Accept in: header required: true description: >- The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. schema: type: string default: application/json ContentType: name: Content-Type in: header required: true description: >- The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the request body. schema: type: string default: application/json securitySchemes: X-Auth-Token: name: X-Auth-Token description: >- ### OAuth scopes | UI Name | Permission | Parameter | |:--|:--|:-| | Products | modify | `store_v2_products` | | Products | read-only | `store_v2_products_read_only` | ### Authentication header | Header | Argument | Description | |:-|:|:| | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our [Guide to API Accounts](/docs/start/authentication/api-accounts). | ### Further reading For example requests and more information about authenticating BigCommerce APIs, see [Authentication and Example Requests](/docs/start/authentication#x-auth-token-header-example-requests). For more about BigCommerce OAuth scopes, see our [Guide to API Accounts](/docs/start/authentication/api-accounts#oauth-scopes). For a list of API status codes, see [API Status Codes](/docs/start/about/status-codes). type: apiKey in: header