openapi: 3.1.0
info:
  title: 'Admin Catalog: Product Modifiers'
  version: 1.0.0
paths:
  /stores/{store_hash}/v3/catalog/products/{product_id}/modifiers:
    get:
      operationId: getProductModifiers
      summary: List Product Modifiers
      description: Returns a list of all product modifiers. Optional parameters can be passed in.
      tags:
        - productModifiers
      parameters:
        - name: product_id
          in: path
          description: |
            The ID of the product to which the resource belongs.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: include_fields
          in: query
          description: Fields to include, in a comma-separated list. The ID and the specified fields will be returned.
          required: false
          schema:
            type: array
            items:
              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.
          required: false
          schema:
            type: array
            items:
              type: string
        - name: page
          in: query
          description: |
            Specifies the page number in a limited (paginated) list of products.
          required: false
          schema:
            type: integer
        - name: limit
          in: query
          description: |
            Controls the number of items per page in a limited (paginated) list of products.
          required: false
          schema:
            type: integer
            default: 50
        - name: X-Auth-Token
          in: header
          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](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product modifiers_getProductModifiers_Response_200'
    post:
      operationId: createProductModifier
      summary: Create Product Modifier
      description: >-
        Creates a product modifier.


        **Notes**

        It takes two separate requests to create a new checkbox modifier with option values. Perform a request to create
        a modifier, then perform a second request to update option values.


        Date modifiers are required to be provided in [ISO-8601
        ATOM](https://www.php.net/manual/en/class.datetimeinterface.php#datetimeinterface.constants.atom) format.
        Excluding them in a request will throw a server error.


        **Setting an option value image**

        `adjusters.image_url` is read-only on this endpoint. To attach or replace the image shown on the storefront for
        an option value, upload it via [Create Product Modifier
        Image](/developer/api-reference/rest/admin/catalog/product-modifiers/images/create-product-modifier-image). The
        upload binds the image to the value automatically; no follow-up call is needed.
      tags:
        - productModifiers
      parameters:
        - name: product_id
          in: path
          description: |
            The ID of the product to which the resource belongs.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          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](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product modifiers_createProductModifier_Response_200'
        '409':
          description: >
            The `Modifier` was in conflict with another option. This is the result of duplicate unique fields, such as
            `name`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateProductModifierRequestConflictError'
        '422':
          description: >
            The `Modifier` 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:
                $ref: '#/components/schemas/CreateProductModifierRequestUnprocessableEntityError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/productModifier_Post'
  /stores/{store_hash}/v3/catalog/products/{product_id}/modifiers/{modifier_id}:
    get:
      operationId: getProductModifier
      summary: Get Product Modifier
      description: Returns a single product modifier. Optional parameters can be passed in.
      tags:
        - productModifiers
      parameters:
        - name: product_id
          in: path
          description: |
            The ID of the product to which the resource belongs.
          required: true
          schema:
            type: integer
        - name: modifier_id
          in: path
          description: |
            The ID of the product modifier.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: include_fields
          in: query
          description: Fields to include, in a comma-separated list. The ID and the specified fields will be returned.
          required: false
          schema:
            type: array
            items:
              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.
          required: false
          schema:
            type: array
            items:
              type: string
        - name: X-Auth-Token
          in: header
          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](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product modifiers_getProductModifier_Response_200'
        '404':
          description: |
            The resource was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetProductModifierRequestNotFoundError'
    put:
      operationId: updateProductModifier
      summary: Update Product Modifier
      description: >-
        Updates a product modifier.


        Date modifiers are required to be provided in [ISO-8601
        ATOM](https://www.php.net/manual/en/class.datetimeinterface.php#datetimeinterface.constants.atom) format.
        Excluding them in a request will throw a server error.


        **Setting an option value image**

        `adjusters.image_url` is read-only on this endpoint. To attach or replace the image shown on the storefront for
        an option value, upload it via [Create Product Modifier
        Image](/developer/api-reference/rest/admin/catalog/product-modifiers/images/create-product-modifier-image). The
        upload binds the image to the value automatically; no follow-up call is needed.
      tags:
        - productModifiers
      parameters:
        - name: product_id
          in: path
          description: |
            The ID of the product to which the resource belongs.
          required: true
          schema:
            type: integer
        - name: modifier_id
          in: path
          description: |
            The ID of the product modifier.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          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](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product modifiers_updateProductModifier_Response_200'
        '409':
          description: >
            The `Modifier` was in conflict with another modifier or option. This is the result of duplicate unique
            fields, such as `name`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateProductModifierRequestConflictError'
        '422':
          description: >
            The `Modifier` 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:
                $ref: '#/components/schemas/UpdateProductModifierRequestUnprocessableEntityError'
      requestBody:
        description: Common Modifier properties.
        content:
          application/json:
            schema:
              type: object
              properties:
                type:
                  $ref: >-
                    #/components/schemas/CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaType
                  description: >
                    BigCommerce API, which determines how it will display on the storefront. Acceptable values: `date`,
                    `checkbox`, `file`, `text`, `multi_line_text`, `numbers_only_text`, `radio_buttons`, `rectangles`,
                    `dropdown`, `product_list`, `product_list_with_images`, `swatch`. Required in a /POST.
                required:
                  type: boolean
                  description: |
                    Whether or not this modifier is required at checkout. Required in a /POST.
                sort_order:
                  type: integer
                  description: The order the modifiers display on the product detail page.
                config:
                  $ref: >-
                    #/components/schemas/CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfig
                  description: >-
                    The values for option config can vary based on the Modifier created. See [Configs](#configs) to
                    learn more about the type-specific `config` fields.
                option_values:
                  type: array
                  items:
                    $ref: '#/components/schemas/productModifierOptionValue_Full'
                  description: >-
                    Contains information about the values for modifier types with options. Certain fields are not used
                    for specific modifier types. See [Option Values](#option-values) for more details.
                display_name:
                  type: string
                  description: |
                    The name of the option shown on the storefront.
    delete:
      operationId: deleteProductModifier
      summary: Delete Product Modifier
      description: Deletes a product modifier.
      tags:
        - productModifiers
      parameters:
        - name: product_id
          in: path
          description: |
            The ID of the product to which the resource belongs.
          required: true
          schema:
            type: integer
        - name: modifier_id
          in: path
          description: |
            The ID of the product modifier.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          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](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '204':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
  /stores/{store_hash}/v3/catalog/products/{product_id}/modifiers/{modifier_id}/values/{value_id}/image:
    post:
      operationId: createProductModifierImage
      summary: Create Product Modifier Image
      description: >-
        Creates a *Modifier Image*.


        The image will show on the storefront when the value is selected. Upload via multipart form post; this is the
        only accepted upload method.
      tags:
        - images
      parameters:
        - name: product_id
          in: path
          description: |
            The ID of the product to which the resource belongs.
          required: true
          schema:
            type: integer
        - name: modifier_id
          in: path
          description: |
            The ID of the product modifier.
          required: true
          schema:
            type: integer
        - name: value_id
          in: path
          description: |
            The ID of the product modifier value.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          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](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Images_createProductModifierImage_Response_200'
        '400':
          description: >-
            Bad Request. The requested resource could not be downloaded and may be invalid. Possible reasons include
            malformed request syntax or the file host blocking requests.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateProductModifierImageRequestBadRequestError'
        '404':
          description: |
            The resource was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateProductModifierImageRequestNotFoundError'
        '422':
          description: >
            Modifier image was not valid. This is the result of missing `image_file` fields, or of a non-URL value for
            the `image_file` field. See the response for more details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateProductModifierImageRequestUnprocessableEntityError'
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                image_file:
                  type: string
                  format: binary
                  description: The image file to upload. Maximum 8 MB.
              required:
                - image_file
  /stores/{store_hash}/v3/catalog/products/{product_id}/modifiers/{modifier_id}/values:
    get:
      operationId: getProductModifierValues
      summary: List Product Modifier Values
      description: Returns a list of all product *Modifier Values*. Optional parameters can be passed in.
      tags:
        - values
      parameters:
        - name: product_id
          in: path
          description: |
            The ID of the product to which the resource belongs.
          required: true
          schema:
            type: integer
        - name: modifier_id
          in: path
          description: |
            The ID of the product modifier.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: include_fields
          in: query
          description: Fields to include, in a comma-separated list. The ID and the specified fields will be returned.
          required: false
          schema:
            type: array
            items:
              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.
          required: false
          schema:
            type: array
            items:
              type: string
        - name: page
          in: query
          description: |
            Specifies the page number in a limited (paginated) list of products.
          required: false
          schema:
            type: integer
        - name: limit
          in: query
          description: |
            Controls the number of items per page in a limited (paginated) list of products.
          required: false
          schema:
            type: integer
            default: 50
        - name: X-Auth-Token
          in: header
          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](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Values_getProductModifierValues_Response_200'
    post:
      operationId: createProductModifierValue
      summary: Create Product Modifier Value
      description: >-
        Creates a modifier value.


        **Read-Only Fields**

        * is_default


        **Setting an option value image**

        `adjusters.image_url` is read-only on this endpoint. To attach the image shown on the storefront for the value,
        upload it via [Create Product Modifier
        Image](/developer/api-reference/rest/admin/catalog/product-modifiers/images/create-product-modifier-image) after
        creating the value.


        > `is_default` is derived from the parent modifier configuration and cannot be set on individual values. To
        change which value is the default, use [Update Product
        Modifier](/developer/api-reference/rest/admin/catalog/product-modifiers/update-product-modifier) and include the
        full `option_values` array with the desired `is_default` flags.
      tags:
        - values
      parameters:
        - name: product_id
          in: path
          description: |
            The ID of the product to which the resource belongs.
          required: true
          schema:
            type: integer
        - name: modifier_id
          in: path
          description: |
            The ID of the product modifier.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          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](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Values_createProductModifierValue_Response_200'
        '422':
          description: >
            The `ModifierValue` 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:
                $ref: '#/components/schemas/CreateProductModifierValueRequestUnprocessableEntityError'
      requestBody:
        description: The model for a POST to create a modifier value on a product.
        content:
          application/json:
            schema:
              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. Read-only on this endpoint; use [Update Product
                    Modifier](/developer/api-reference/rest/admin/catalog/product-modifiers/update-product-modifier)
                    with the full `option_values` array to change the default.
                label:
                  type: string
                  description: |
                    The text display identifying the value on the storefront. Required in a /POST.
                sort_order:
                  type: integer
                  description: |
                    The order in which the value will be displayed on the product page. Required in a /POST.
                value_data:
                  $ref: >-
                    #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaValueData
                  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 hexadecimal
                    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.
                adjusters:
                  $ref: >-
                    #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjusters
              required:
                - label
                - sort_order
  /stores/{store_hash}/v3/catalog/products/{product_id}/modifiers/{modifier_id}/values/{value_id}:
    get:
      operationId: getProductModifierValue
      summary: Get Product Modifier Value
      description: Returns a single modifier value. Optional parameters can be passed in.
      tags:
        - values
      parameters:
        - name: product_id
          in: path
          description: |
            The ID of the product to which the resource belongs.
          required: true
          schema:
            type: integer
        - name: modifier_id
          in: path
          description: |
            The ID of the product modifier.
          required: true
          schema:
            type: integer
        - name: value_id
          in: path
          description: |
            The ID of the product modifier value.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: include_fields
          in: query
          description: Fields to include, in a comma-separated list. The ID and the specified fields will be returned.
          required: false
          schema:
            type: array
            items:
              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.
          required: false
          schema:
            type: array
            items:
              type: string
        - name: X-Auth-Token
          in: header
          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](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Values_getProductModifierValue_Response_200'
        '404':
          description: |
            The resource was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetProductModifierValueRequestNotFoundError'
    put:
      operationId: updateProductModifierValue
      summary: Update Product Modifier Value
      description: >-
        Updates a modifier value.


        **Read-Only Fields**

        * is_default


        **Setting an option value image**

        `adjusters.image_url` is read-only on this endpoint. To replace the image shown on the storefront for the value,
        upload a new image via [Create Product Modifier
        Image](/developer/api-reference/rest/admin/catalog/product-modifiers/images/create-product-modifier-image). The
        upload binds the image to the value automatically; no follow-up call is needed.


        > `is_default` is derived from the parent modifier configuration and cannot be set on individual values. To
        change which value is the default, use [Update Product
        Modifier](/developer/api-reference/rest/admin/catalog/product-modifiers/update-product-modifier) and include the
        full `option_values` array with the desired `is_default` flags.
      tags:
        - values
      parameters:
        - name: product_id
          in: path
          description: |
            The ID of the product to which the resource belongs.
          required: true
          schema:
            type: integer
        - name: modifier_id
          in: path
          description: |
            The ID of the product modifier.
          required: true
          schema:
            type: integer
        - name: value_id
          in: path
          description: |
            The ID of the product modifier value.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          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](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Values_updateProductModifierValue_Response_200'
        '422':
          description: >
            The `ModifierValue` 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:
                $ref: '#/components/schemas/UpdateProductModifierValueRequestUnprocessableEntityError'
      requestBody:
        description: The model for a PUT to update a modifier value on a product.
        content:
          application/json:
            schema:
              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. Read-only on this endpoint; use [Update Product
                    Modifier](/developer/api-reference/rest/admin/catalog/product-modifiers/update-product-modifier)
                    with the full `option_values` array to change the default.
                label:
                  type: string
                  description: |
                    The text display identifying the value on the storefront. Required in a /POST.
                sort_order:
                  type: integer
                  description: |
                    The order in which the value will be displayed on the product page. Required in a /POST.
                value_data:
                  $ref: >-
                    #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaValueData
                  description: >
                    Extra data describing the value, based on the type of option or modifier with which the value is
                    associated.  See [Option Values](#option-values) for more details.
                adjusters:
                  $ref: >-
                    #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjusters
                id:
                  type: integer
                  description: |
                    The unique numeric ID of the value; increments sequentially.
              required:
                - label
                - sort_order
    delete:
      operationId: deleteProductModifierValue
      summary: Delete Product Modifier Value
      description: Deletes a modifier value.
      tags:
        - values
      parameters:
        - name: product_id
          in: path
          description: |
            The ID of the product to which the resource belongs.
          required: true
          schema:
            type: integer
        - name: modifier_id
          in: path
          description: |
            The ID of the product modifier.
          required: true
          schema:
            type: integer
        - name: value_id
          in: path
          description: |
            The ID of the product modifier value.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          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](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '204':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
servers:
  - url: https://api.bigcommerce.com
    description: https://api.bigcommerce.com
components:
  schemas:
    ProductModifierBaseType:
      type: string
      enum:
        - date
        - checkbox
        - file
        - text
        - multi_line_text
        - numbers_only_text
        - radio_buttons
        - rectangles
        - dropdown
        - product_list
        - product_list_with_images
        - swatch
      description: >
        BigCommerce API, which determines how it will display on the storefront. Acceptable values: `date`, `checkbox`,
        `file`, `text`, `multi_line_text`, `numbers_only_text`, `radio_buttons`, `rectangles`, `dropdown`,
        `product_list`, `product_list_with_images`, `swatch`. Required in a /POST.
      title: ProductModifierBaseType
    ConfigFullDateLimitMode:
      type: string
      enum:
        - earliest
        - range
        - latest
      description: |
        (date) The type of limit that is allowed to be entered on a date option.
      title: ConfigFullDateLimitMode
    ConfigFullFileTypesMode:
      type: string
      enum:
        - specific
        - all
      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.
      title: ConfigFullFileTypesMode
    ConfigFullNumberLimitMode:
      type: string
      enum:
        - lowest
        - highest
        - range
      description: |
        (numbers_only_text) The type of limit on values entered for a number option.
      title: ConfigFullNumberLimitMode
    ConfigFullProductListShippingCalc:
      type: string
      enum:
        - none
        - weight
        - package
      description: >
        (product_list, product_list_with_images) How to factor the optional product's weight and package dimensions into
        the shipping quote. See [Configs](#configs) for more details.
      title: ConfigFullProductListShippingCalc
    config_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
            ATOM formatted string, or on a text option as a string. See [Configs](#configs) for more details.
        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:
          $ref: '#/components/schemas/ConfigFullDateLimitMode'
          description: |
            (date) The type of limit that is allowed to be entered on a date option.
        date_earliest_value:
          type: string
          description: |
            (date) The earliest date allowed to be entered on the date option, as an ISO-8601 ATOM formatted string.
        date_latest_value:
          type: string
          description: |
            (date) The latest date allowed to be entered on the date option, as an ISO-8601 ATOM formatted string.
        file_types_mode:
          $ref: '#/components/schemas/ConfigFullFileTypesMode'
          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.
        file_types_supported:
          type: array
          items:
            type: string
          description: >
            (file) The type of files allowed to be uploaded if the `file_type_option` is set to `specific`.  See
            [Supported File Types](#supported-file-types) for more details.       
        file_types_other:
          type: array
          items:
            type: string
          description: >
            (file) A list of other file types allowed with the file upload option. See [Supported File
            Types](#supported-file-types) for more details.
        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. See [Configs](#configs) for more details.
        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.
        text_max_length:
          type: integer
          description: |
            (text, multi_line_text) The maximum length allowed for a text or multi line text option.
        text_lines_limited:
          type: boolean
          description: |
            (multi_line_text) Flag to validate the maximum number of lines allowed on a multi-line text input.
        text_max_lines:
          type: integer
          description: |
            (multi_line_text) The maximum number of lines allowed on a multi-line text input.
        number_limited:
          type: boolean
          description: |
            (numbers_only_text) Flag to limit the value of a number option.
        number_limit_mode:
          $ref: '#/components/schemas/ConfigFullNumberLimitMode'
          description: |
            (numbers_only_text) The type of limit on values entered for a number option.
        number_lowest_value:
          type: number
          format: double
          description: |
            (numbers_only_text) The lowest allowed value for a number option if `number_limited` is true.
        number_highest_value:
          type: number
          format: double
          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.
        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:
          $ref: '#/components/schemas/ConfigFullProductListShippingCalc'
          description: >
            (product_list, product_list_with_images) How to factor the optional product's weight and package dimensions
            into the shipping quote. See [Configs](#configs) for more details.
      description: >-
        The values for option config can vary based on the Modifier created. See [Configs](#configs) to learn more about
        the type-specific `config` fields.
      title: config_Full
    ProductModifierOptionValueBaseValueData:
      type: object
      properties: {}
      description: >
        Extra data describing the value, based on the type of option or modifier with which the value is associated. 
        See [Option Values](#option-values) for more details.
      title: ProductModifierOptionValueBaseValueData
    AdjusterFullAdjuster:
      type: string
      enum:
        - relative
        - percentage
      description: >
        The type of adjuster for either the price or the weight of the variant, when the modifier value is selected on
        the storefront.
      title: AdjusterFullAdjuster
    adjuster_Full:
      type: object
      properties:
        adjuster:
          oneOf:
            - $ref: '#/components/schemas/AdjusterFullAdjuster'
            - type: 'null'
          description: >
            The type of adjuster for either the price or the weight of the variant, when the modifier value is selected
            on the storefront.
        adjuster_value:
          type: number
          format: double
          description: >
            The numeric amount by which the adjuster will change either the price or the weight of the variant, when the
            modifier value is selected on the storefront.
      description: Adjuster for Complex Rules.
      title: adjuster_Full
    AdjustersFullPurchasingDisabled:
      type: object
      properties:
        status:
          type: boolean
          description: >
            Flag for whether the modifier value disables purchasing when selected on the storefront. This can be used
            for temporarily disabling a particular modifier value.
        message:
          type: string
          description: |
            The message displayed on the storefront when the purchasing disabled status is `true`.
      title: AdjustersFullPurchasingDisabled
    adjusters_Full:
      type: object
      properties:
        price:
          $ref: '#/components/schemas/adjuster_Full'
        weight:
          $ref: '#/components/schemas/adjuster_Full'
        image_url:
          type: string
          description: >
            The URL for an image displayed on the storefront when the modifier value is selected. Read-only on modifier
            and option-value endpoints. To set or replace the image, use the [Create Product Modifier
            Image](/developer/api-reference/rest/admin/catalog/product-modifiers/images/create-product-modifier-image)
            endpoint. Limit of 8MB per file.
        purchasing_disabled:
          $ref: '#/components/schemas/AdjustersFullPurchasingDisabled'
      title: adjusters_Full
    productModifierOptionValue_Full:
      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.
        label:
          type: string
          description: |
            The text display identifying the value on the storefront. Required in a /POST.
        sort_order:
          type: integer
          description: |
            The order in which the value will be displayed on the product page. Required in a /POST.
        value_data:
          oneOf:
            - $ref: '#/components/schemas/ProductModifierOptionValueBaseValueData'
            - type: 'null'
          description: >
            Extra data describing the value, based on the type of option or modifier with which the value is
            associated.  See [Option Values](#option-values) for more details.
        adjusters:
          $ref: '#/components/schemas/adjusters_Full'
        id:
          type: integer
          description: |
            The unique numeric ID of the value; increments sequentially.
        option_id:
          type: integer
      description: Product modifier `option_value`.
      title: productModifierOptionValue_Full
    productModifier_Full:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/ProductModifierBaseType'
          description: >
            BigCommerce API, which determines how it will display on the storefront. Acceptable values: `date`,
            `checkbox`, `file`, `text`, `multi_line_text`, `numbers_only_text`, `radio_buttons`, `rectangles`,
            `dropdown`, `product_list`, `product_list_with_images`, `swatch`. Required in a /POST.
        required:
          type: boolean
          description: |
            Whether or not this modifier is required at checkout. Required in a /POST.
        sort_order:
          type: integer
          description: The order the modifiers display on the product detail page.
        config:
          $ref: '#/components/schemas/config_Full'
        display_name:
          type: string
          description: The name of the option shown on the storefront.
        id:
          type: integer
          description: |
            The unique numeric ID of the modifier; increments sequentially.
        product_id:
          type: integer
          description: |
            The unique numeric ID of the product to which the option belongs.
        name:
          type: string
          description: |
            The unique option name. Auto-generated from the display name, a timestamp, and the product ID.
        option_values:
          type: array
          items:
            $ref: '#/components/schemas/productModifierOptionValue_Full'
          description: >-
            Contains information about the values for modifier types with options. Certain fields are not used for
            specific modifier types. See [Option Values](#option-values) for more details.
      required:
        - type
        - required
      description: Product modifier
      title: productModifier_Full
    PaginationFullLinks:
      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.
        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.
      title: PaginationFullLinks
    pagination_Full:
      type: object
      properties:
        total:
          type: integer
          description: |
            Total number of items in the result set.
        count:
          type: integer
          description: |
            Total number of items in the collection response.
        per_page:
          type: integer
          description: |
            The amount of items returned in the collection per page, controlled by the limit parameter.
        current_page:
          type: integer
          description: |
            The page you are currently on within the collection.
        total_pages:
          type: integer
          description: |
            The total number of pages in the collection.
        links:
          $ref: '#/components/schemas/PaginationFullLinks'
          description: |
            Pagination links for the previous and next parts of the whole collection.
      description: Data about the response, including pagination and collection totals.
      title: pagination_Full
    metaCollection_Full:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/pagination_Full'
      description: Data about the response, including pagination and collection totals.
      title: metaCollection_Full
    Product modifiers_getProductModifiers_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/productModifier_Full'
        meta:
          $ref: '#/components/schemas/metaCollection_Full'
      description: Modifier Collection Response return for /GET All Modifiers.
      title: Product modifiers_getProductModifiers_Response_200
    ProductModifierPostType:
      type: string
      enum:
        - date
        - checkbox
        - file
        - text
        - multi_line_text
        - numbers_only_text
        - radio_buttons
        - rectangles
        - dropdown
        - product_list
        - product_list_with_images
        - swatch
      description: >
        BigCommerce API, which determines how it will display on the storefront. Acceptable values: `date`, `checkbox`,
        `file`, `text`, `multi_line_text`, `numbers_only_text`, `radio_buttons`, `rectangles`, `dropdown`,
        `product_list`, `product_list_with_images`, `swatch`. Required in a /POST.
      title: ProductModifierPostType
    productModifierOptionValue_Post:
      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.
        label:
          type: string
          description: |
            The text display identifying the value on the storefront. Required in a /POST.
        sort_order:
          type: integer
          description: |
            The order in which the value will be displayed on the product page. Required in a /POST.
        value_data:
          oneOf:
            - $ref: '#/components/schemas/ProductModifierOptionValueBaseValueData'
            - type: 'null'
          description: >
            Extra data describing the value, based on the type of option or modifier with which the value is
            associated.  See [Option Values](#option-values) for more details.
        adjusters:
          $ref: '#/components/schemas/adjusters_Full'
      description: Product modifier `option_value` for POST requests. Adds POST-only required fields on top of the shared base.
      title: productModifierOptionValue_Post
    productModifier_Post:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/ProductModifierPostType'
          description: >
            BigCommerce API, which determines how it will display on the storefront. Acceptable values: `date`,
            `checkbox`, `file`, `text`, `multi_line_text`, `numbers_only_text`, `radio_buttons`, `rectangles`,
            `dropdown`, `product_list`, `product_list_with_images`, `swatch`. Required in a /POST.
        required:
          type: boolean
          description: |
            Whether or not this modifier is required at checkout. Required in a /POST.
        sort_order:
          type: integer
          description: The order the modifiers display on the product detail page.
        config:
          $ref: '#/components/schemas/config_Full'
        option_values:
          type: array
          items:
            $ref: '#/components/schemas/productModifierOptionValue_Post'
          description: >-
            Contains information about the values for modifier types with options. Certain fields are not used for
            specific modifier types. See [Option Values](#option-values) for more details.
        display_name:
          type: string
          description: The name of the option shown on the storefront.
      required:
        - type
        - required
        - display_name
      description: Common Modifier properties.
      title: productModifier_Post
    metaEmpty_Full:
      type: object
      properties: {}
      description: Response metadata.
      title: metaEmpty_Full
    Product modifiers_createProductModifier_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/productModifier_Full'
        meta:
          $ref: '#/components/schemas/metaEmpty_Full'
      title: Product modifiers_createProductModifier_Response_200
    CatalogProductsProductIdModifiersPostResponsesContentApplicationJsonSchemaErrors:
      type: object
      properties: {}
      title: CatalogProductsProductIdModifiersPostResponsesContentApplicationJsonSchemaErrors
    CreateProductModifierRequestConflictError:
      type: object
      properties:
        errors:
          $ref: '#/components/schemas/CatalogProductsProductIdModifiersPostResponsesContentApplicationJsonSchemaErrors'
        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
      title: CreateProductModifierRequestConflictError
    CreateProductModifierRequestUnprocessableEntityError:
      type: object
      properties:
        errors:
          $ref: '#/components/schemas/CatalogProductsProductIdModifiersPostResponsesContentApplicationJsonSchemaErrors'
        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
      title: CreateProductModifierRequestUnprocessableEntityError
    Product modifiers_getProductModifier_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/productModifier_Full'
        meta:
          $ref: '#/components/schemas/metaEmpty_Full'
      title: Product modifiers_getProductModifier_Response_200
    GetProductModifierRequestNotFoundError:
      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.
      title: GetProductModifierRequestNotFoundError
    CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaType:
      type: string
      enum:
        - date
        - checkbox
        - file
        - text
        - multi_line_text
        - numbers_only_text
        - radio_buttons
        - rectangles
        - dropdown
        - product_list
        - product_list_with_images
        - swatch
      description: >
        BigCommerce API, which determines how it will display on the storefront. Acceptable values: `date`, `checkbox`,
        `file`, `text`, `multi_line_text`, `numbers_only_text`, `radio_buttons`, `rectangles`, `dropdown`,
        `product_list`, `product_list_with_images`, `swatch`. Required in a /POST.
      title: CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaType
    CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfigDateLimitMode:
      type: string
      enum:
        - earliest
        - range
        - latest
      description: |
        (date) The type of limit that is allowed to be entered on a date option.
      title: CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfigDateLimitMode
    CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfigFileTypesMode:
      type: string
      enum:
        - specific
        - all
      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.
      title: CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfigFileTypesMode
    CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfigNumberLimitMode:
      type: string
      enum:
        - lowest
        - highest
        - range
      description: |
        (numbers_only_text) The type of limit on values entered for a number option.
      title: CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfigNumberLimitMode
    CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfigProductListShippingCalc:
      type: string
      enum:
        - none
        - weight
        - package
      description: >
        (product_list, product_list_with_images) How to factor the optional product's weight and package dimensions into
        the shipping quote. See [Configs](#configs) for more details.
      title: >-
        CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfigProductListShippingCalc
    CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfig:
      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
            ATOM formatted string, or on a text option as a string. See [Configs](#configs) for more details.
        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:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfigDateLimitMode
          description: |
            (date) The type of limit that is allowed to be entered on a date option.
        date_earliest_value:
          type: string
          description: |
            (date) The earliest date allowed to be entered on the date option, as an ISO-8601 ATOM formatted string.
        date_latest_value:
          type: string
          description: |
            (date) The latest date allowed to be entered on the date option, as an ISO-8601 ATOM formatted string.
        file_types_mode:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfigFileTypesMode
          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.
        file_types_supported:
          type: array
          items:
            type: string
          description: >
            (file) The type of files allowed to be uploaded if the `file_type_option` is set to `specific`. See
            [Supported File Types](#supported-file-types) for more details.
        file_types_other:
          type: array
          items:
            type: string
          description: >
            (file) A list of other file types allowed with the file upload option. See [Supported File
            Types](#supported-file-types) for more details.
        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. See [Configs](#configs) for more details.
        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.
        text_max_length:
          type: integer
          description: |
            (text, multi_line_text) The maximum length allowed for a text or multi line text option.
        text_lines_limited:
          type: boolean
          description: |
            (multi_line_text) Flag to validate the maximum number of lines allowed on a multi-line text input.
        text_max_lines:
          type: integer
          description: |
            (multi_line_text) The maximum number of lines allowed on a multi-line text input.
        number_limited:
          type: boolean
          description: |
            (numbers_only_text) Flag to limit the value of a number option.
        number_limit_mode:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfigNumberLimitMode
          description: |
            (numbers_only_text) The type of limit on values entered for a number option.
        number_lowest_value:
          type: number
          format: double
          description: |
            (numbers_only_text) The lowest allowed value for a number option if `number_limited` is true.
        number_highest_value:
          type: number
          format: double
          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.
        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:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfigProductListShippingCalc
          description: >
            (product_list, product_list_with_images) How to factor the optional product's weight and package dimensions
            into the shipping quote. See [Configs](#configs) for more details.
      description: >-
        The values for option config can vary based on the Modifier created. See [Configs](#configs) to learn more about
        the type-specific `config` fields.
      title: CatalogProductsProductIdModifiersModifierIdPutRequestBodyContentApplicationJsonSchemaConfig
    Product modifiers_updateProductModifier_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/productModifier_Full'
        meta:
          $ref: '#/components/schemas/metaEmpty_Full'
      title: Product modifiers_updateProductModifier_Response_200
    CatalogProductsProductIdModifiersModifierIdPutResponsesContentApplicationJsonSchemaErrors:
      type: object
      properties: {}
      title: CatalogProductsProductIdModifiersModifierIdPutResponsesContentApplicationJsonSchemaErrors
    UpdateProductModifierRequestConflictError:
      type: object
      properties:
        errors:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdPutResponsesContentApplicationJsonSchemaErrors
        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
      title: UpdateProductModifierRequestConflictError
    UpdateProductModifierRequestUnprocessableEntityError:
      type: object
      properties:
        errors:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdPutResponsesContentApplicationJsonSchemaErrors
        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
      title: UpdateProductModifierRequestUnprocessableEntityError
    CatalogProductsProductIdModifiersModifierIdValuesValueIdImagePostResponsesContentApplicationJsonSchemaData:
      type: object
      properties:
        image_url:
          type: string
          description: |
            A public URL for a GIF, JPEG, or PNG image. Limit of 8MB per file.
      description: An object containing a publicly accessible image URL, or a form post that contains an image file.
      title: CatalogProductsProductIdModifiersModifierIdValuesValueIdImagePostResponsesContentApplicationJsonSchemaData
    Images_createProductModifierImage_Response_200:
      type: object
      properties:
        data:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesValueIdImagePostResponsesContentApplicationJsonSchemaData
          description: An object containing a publicly accessible image URL, or a form post that contains an image file.
        meta:
          $ref: '#/components/schemas/metaEmpty_Full'
      description: |-
        Image Response returns for:
        * Create Variant Image
        * Create Modifier Image
        * Create Category Image
        * Create Brand Image
      title: Images_createProductModifierImage_Response_200
    CreateProductModifierImageRequestBadRequestError:
      type: object
      properties: {}
      title: CreateProductModifierImageRequestBadRequestError
    CreateProductModifierImageRequestNotFoundError:
      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.
      title: CreateProductModifierImageRequestNotFoundError
    CatalogProductsProductIdModifiersModifierIdValuesValueIdImagePostResponsesContentApplicationJsonSchemaErrors:
      type: object
      properties: {}
      title: CatalogProductsProductIdModifiersModifierIdValuesValueIdImagePostResponsesContentApplicationJsonSchemaErrors
    CreateProductModifierImageRequestUnprocessableEntityError:
      type: object
      properties:
        errors:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesValueIdImagePostResponsesContentApplicationJsonSchemaErrors
        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
      title: CreateProductModifierImageRequestUnprocessableEntityError
    Values_getProductModifierValues_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/productModifierOptionValue_Full'
        meta:
          $ref: '#/components/schemas/metaCollection_Full'
      description: Returns for GET All Modifier Values on a Product
      title: Values_getProductModifierValues_Response_200
    CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaValueData:
      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 hexadecimal 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.
      title: CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaValueData
    CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersPriceAdjuster:
      type: string
      enum:
        - relative
        - percentage
      description: >
        The type of adjuster for either the price or the weight of the variant, when the modifier value is selected on
        the storefront.
      title: >-
        CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersPriceAdjuster
    CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersPrice:
      type: object
      properties:
        adjuster:
          oneOf:
            - $ref: >-
                #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersPriceAdjuster
            - type: 'null'
          description: >
            The type of adjuster for either the price or the weight of the variant, when the modifier value is selected
            on the storefront.
        adjuster_value:
          type: number
          format: double
          description: >
            The numeric amount by which the adjuster will change either the price or the weight of the variant, when the
            modifier value is selected on the storefront.
      description: Adjuster for Complex Rules.
      title: CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersPrice
    CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersWeightAdjuster:
      type: string
      enum:
        - relative
        - percentage
      description: >
        The type of adjuster for either the price or the weight of the variant, when the modifier value is selected on
        the storefront.
      title: >-
        CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersWeightAdjuster
    CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersWeight:
      type: object
      properties:
        adjuster:
          oneOf:
            - $ref: >-
                #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersWeightAdjuster
            - type: 'null'
          description: >
            The type of adjuster for either the price or the weight of the variant, when the modifier value is selected
            on the storefront.
        adjuster_value:
          type: number
          format: double
          description: >
            The numeric amount by which the adjuster will change either the price or the weight of the variant, when the
            modifier value is selected on the storefront.
      description: Adjuster for Complex Rules.
      title: CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersWeight
    CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersPurchasingDisabled:
      type: object
      properties:
        status:
          type: boolean
          description: >
            Flag for whether the modifier value disables purchasing when selected on the storefront. This can be used
            for temporarily disabling a particular modifier value.
        message:
          type: string
          description: |
            The message displayed on the storefront when the purchasing disabled status is `true`.
      title: >-
        CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersPurchasingDisabled
    CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjusters:
      type: object
      properties:
        price:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersPrice
          description: Adjuster for Complex Rules.
        weight:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersWeight
          description: Adjuster for Complex Rules.
        image_url:
          type: string
          description: |
            The URL for an image displayed on the storefront when the modifier value is selected.Limit of 8MB per file.
        purchasing_disabled:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjustersPurchasingDisabled
      title: CatalogProductsProductIdModifiersModifierIdValuesPostRequestBodyContentApplicationJsonSchemaAdjusters
    Values_createProductModifierValue_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/productModifierOptionValue_Full'
        meta:
          $ref: '#/components/schemas/metaEmpty_Full'
      title: Values_createProductModifierValue_Response_200
    CatalogProductsProductIdModifiersModifierIdValuesPostResponsesContentApplicationJsonSchemaErrors:
      type: object
      properties: {}
      title: CatalogProductsProductIdModifiersModifierIdValuesPostResponsesContentApplicationJsonSchemaErrors
    CreateProductModifierValueRequestUnprocessableEntityError:
      type: object
      properties:
        errors:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesPostResponsesContentApplicationJsonSchemaErrors
        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
      title: CreateProductModifierValueRequestUnprocessableEntityError
    Values_getProductModifierValue_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/productModifierOptionValue_Full'
        meta:
          $ref: '#/components/schemas/metaEmpty_Full'
      title: Values_getProductModifierValue_Response_200
    GetProductModifierValueRequestNotFoundError:
      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.
      title: GetProductModifierValueRequestNotFoundError
    CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaValueData:
      type: object
      properties: {}
      description: >
        Extra data describing the value, based on the type of option or modifier with which the value is associated. 
        See [Option Values](#option-values) for more details.
      title: CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaValueData
    CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersPriceAdjuster:
      type: string
      enum:
        - relative
        - percentage
      description: >
        The type of adjuster for either the price or the weight of the variant, when the modifier value is selected on
        the storefront.
      title: >-
        CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersPriceAdjuster
    CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersPrice:
      type: object
      properties:
        adjuster:
          oneOf:
            - $ref: >-
                #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersPriceAdjuster
            - type: 'null'
          description: >
            The type of adjuster for either the price or the weight of the variant, when the modifier value is selected
            on the storefront.
        adjuster_value:
          type: number
          format: double
          description: >
            The numeric amount by which the adjuster will change either the price or the weight of the variant, when the
            modifier value is selected on the storefront.
      description: Adjuster for Complex Rules.
      title: CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersPrice
    CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersWeightAdjuster:
      type: string
      enum:
        - relative
        - percentage
      description: >
        The type of adjuster for either the price or the weight of the variant, when the modifier value is selected on
        the storefront.
      title: >-
        CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersWeightAdjuster
    CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersWeight:
      type: object
      properties:
        adjuster:
          oneOf:
            - $ref: >-
                #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersWeightAdjuster
            - type: 'null'
          description: >
            The type of adjuster for either the price or the weight of the variant, when the modifier value is selected
            on the storefront.
        adjuster_value:
          type: number
          format: double
          description: >
            The numeric amount by which the adjuster will change either the price or the weight of the variant, when the
            modifier value is selected on the storefront.
      description: Adjuster for Complex Rules.
      title: >-
        CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersWeight
    CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersPurchasingDisabled:
      type: object
      properties:
        status:
          type: boolean
          description: >
            Flag for whether the modifier value disables purchasing when selected on the storefront. This can be used
            for temporarily disabling a particular modifier value.
        message:
          type: string
          description: |
            The message displayed on the storefront when the purchasing disabled status is `true`.
      title: >-
        CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersPurchasingDisabled
    CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjusters:
      type: object
      properties:
        price:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersPrice
          description: Adjuster for Complex Rules.
        weight:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersWeight
          description: Adjuster for Complex Rules.
        image_url:
          type: string
          description: |
            The URL for an image displayed on the storefront when the modifier value is selected.Limit of 8MB per file.
        purchasing_disabled:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjustersPurchasingDisabled
      title: CatalogProductsProductIdModifiersModifierIdValuesValueIdPutRequestBodyContentApplicationJsonSchemaAdjusters
    Values_updateProductModifierValue_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/productModifierOptionValue_Full'
        meta:
          $ref: '#/components/schemas/metaEmpty_Full'
      title: Values_updateProductModifierValue_Response_200
    CatalogProductsProductIdModifiersModifierIdValuesValueIdPutResponsesContentApplicationJsonSchemaErrors:
      type: object
      properties: {}
      title: CatalogProductsProductIdModifiersModifierIdValuesValueIdPutResponsesContentApplicationJsonSchemaErrors
    UpdateProductModifierValueRequestUnprocessableEntityError:
      type: object
      properties:
        errors:
          $ref: >-
            #/components/schemas/CatalogProductsProductIdModifiersModifierIdValuesValueIdPutResponsesContentApplicationJsonSchemaErrors
        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
      title: UpdateProductModifierValueRequestUnprocessableEntityError
  securitySchemes:
    X-Auth-Token:
      type: apiKey
      in: header
      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](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


        ### Further reading


        For example requests and more information about authenticating BigCommerce APIs, see [Authentication and Example
        Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


        For more about BigCommerce OAuth scopes, see our [Guide to API
        Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


        For a list of API status codes, see [API Status
        Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
