openapi: 3.1.0
info:
  title: 'Admin Management: Channels'
  version: 1.0.0
paths:
  /stores/{store_hash}/v3/channels:
    get:
      operationId: getChannels
      summary: List Channels
      description: >-
        Returns a list of *Channels*.


        Will always return the default BigCommerce storefront with an ID of `1`. This storefront is created by default
        when you provision a BigCommerce store.
      tags:
        - channels
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: include
          in: query
          description: Channels subresources that can be included in the response.
          required: false
          schema:
            $ref: '#/components/schemas/ChannelsGetParametersInclude'
        - name: available
          in: query
          description: >-
            Filter items based on whether the channel is currently available for integration. Setting this query
            parameter to `true` will return channels with the status of `prelaunch`, `active` , `inactive`, and
            `connected`. Setting this query parameter to `false` will return channels with the status of `disconnected`,
            `archived`, `deleted`, and `terminated`.
          required: false
          schema:
            type: boolean
        - name: status:in
          in: query
          description: Filter items by a comma-separated list of statuses.
          required: false
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ChannelsGetParametersStatusInSchemaItems'
        - name: type:in
          in: query
          description: Filter items by a comma-separated list of types.
          required: false
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ChannelsGetParametersTypeInSchemaItems'
        - name: platform:in
          in: query
          description: >-
            Filter items by a comma-separated list of platforms. For a list of supported platforms, see
            [Platform](/developer/api-reference/rest/admin/management/channels#platform).
          required: false
          schema:
            type: array
            items:
              type: string
        - name: date_created
          in: query
          description: Filter items by date created. For example, `date_created=2024-05-14T09:34:00` or `date_created=2024-05-14`.
          required: false
          schema:
            type: string
        - name: date_created:min
          in: query
          description: >-
            Filter items by minimum date created. For example, `date_created=2024-05-14T09:34:00` or
            `date_created=2024-05-14`. Returns metafields created after this date.
          required: false
          schema:
            type: string
        - name: date_created:max
          in: query
          description: >-
            Filter items by maximum date created. For example, `date_created=2024-05-14T09:34:00` or
            `date_created=2024-05-14`. Returns metafields created before this date.
          required: false
          schema:
            type: string
        - name: date_modified
          in: query
          description: Filter items by date modified. For example, `date_created=2024-05-14T09:34:00` or `date_created=2024-05-14`.
          required: false
          schema:
            type: string
        - name: date_modified:min
          in: query
          description: >-
            Filter items by minimum date modified. For example, `date_created=2024-05-14T09:34:00` or
            `date_created=2024-05-14`. Returns metafields modified after this date.
          required: false
          schema:
            type: string
        - name: date_modified:max
          in: query
          description: >-
            Filter items by maximum date modified. For example, `date_created=2024-05-14T09:34:00` or
            `date_created=2024-05-14`. Returns metafields modified before this date.
          required: false
          schema:
            type: string
        - name: limit
          in: query
          description: Controls the number of items per page for paginated responses.
          required: false
          schema:
            type: integer
        - name: page
          in: query
          description: Specifies the page number for a paginated response.
          required: false
          schema:
            type: integer
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Channels_getChannels_Response_200'
        '422':
          description: Invalid value is provided to the query parameter(s).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    post:
      operationId: createChannel
      summary: Create Channel
      description: Creates a *Channel*.
      tags:
        - channels
      parameters:
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Channels_createChannel_Response_200'
        '422':
          description: >-
            The request is missing one or more required fields or invalid data is submitted. Commonly, an invalid
            combination of `type` and `platform` was provided.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateChannelReq'
  /stores/{store_hash}/v3/channels/{channel_id}:
    get:
      operationId: getChannel
      summary: Get Channel
      description: Returns a *Channel*. Channel ID `1` returns the default BigCommerce storefront.
      tags:
        - channels
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: include
          in: query
          description: Channels subresources that can be included in the response.
          required: false
          schema:
            $ref: '#/components/schemas/ChannelsChannelIdGetParametersInclude'
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Channels_getChannel_Response_200'
        '404':
          description: A *Channel* with the provided ID was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    put:
      operationId: updateChannel
      summary: Update Channel
      description: >-
        Updates a *Channel*.


        ## Updatable Fields


        The following fields can be updated.

        * `name`

        * `external_id`

        * `status`

        * `is_listable_from_ui`

        * `is_visible`



        > #### Note

        > * Partial updates are supported. In most cases, if a field that *cannot* be updated is passed in, the API
        **will not** respond with an error. It returns a 200 response with the object, in which you will see the
        field(s) were not updated.

        > * `platform` and `type` cannot be updated after a channel is created.

        > * A channel with status `deleted` or `terminated` cannot be updated.
      tags:
        - channels
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Channels_updateChannel_Response_200'
        '404':
          description: A *Channel* with the provided ID was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: A *Channel* with the same combination of `name`, `platform`, and `type` already exists.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: >-
            When an invalid value or invalid field is submitted, a 422 response will be sent. Note that attempt to
            update a deleted or terminated channel will also result in 422 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateChannelReq'
  /stores/{store_hash}/v3/channels/{channel_id}/active-theme:
    get:
      operationId: getChannelActiveTheme
      summary: Get Channel Active Theme
      description: |-
        Returns details of the theme active on the specified channel.
        Does not support active Blueprint (legacy) themes.
      tags:
        - activeTheme
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Active Theme_getChannelActiveTheme_Response_200'
        '404':
          description: Active Theme of the *Channel* was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /stores/{store_hash}/v3/channels/metafields:
    get:
      operationId: getChannelsMetafields
      summary: List Channel Metafields
      description: Get all channel metafields.
      tags:
        - batchMetafields
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            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
        - name: key
          in: query
          description: |
            Filter based on a metafieldʼs key.
          required: false
          schema:
            type: string
        - name: key:in
          in: query
          description: Filter based on comma-separated metafieldʼs keys. Could be used with vanilla `key` query parameter.
          required: false
          schema:
            type: array
            items:
              type: string
        - name: namespace
          in: query
          description: Filter based on a metafieldʼs namespace.
          required: false
          schema:
            type: string
        - name: namespace:in
          in: query
          description: >-
            Filter based on comma-separated metafieldʼs namespaces. Could be used with vanilla `namespace` query
            parameter.
          required: false
          schema:
            type: array
            items:
              type: string
        - name: direction
          in: query
          description: 'Sort direction. Acceptable values are: `asc`, `desc`.'
          required: false
          schema:
            $ref: '#/components/schemas/ChannelsMetafieldsGetParametersDirection'
        - 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:
              $ref: '#/components/schemas/ChannelsMetafieldsGetParametersIncludeFieldsSchemaItems'
        - name: date_modified:min
          in: query
          description: >-
            Filter items by minimum date modified. For example, `date_created=2024-05-14T09:34:00` or
            `date_created=2024-05-14`. Returns metafields modified after this date.
          required: false
          schema:
            type: string
        - name: date_modified:max
          in: query
          description: >-
            Filter items by maximum date modified. For example, `date_created=2024-05-14T09:34:00` or
            `date_created=2024-05-14`. Returns metafields modified before this date.
          required: false
          schema:
            type: string
        - name: date_created:min
          in: query
          description: >-
            Filter items by minimum date created. For example, `date_created=2024-05-14T09:34:00` or
            `date_created=2024-05-14`. Returns metafields created after this date.
          required: false
          schema:
            type: string
        - name: date_created:max
          in: query
          description: >-
            Filter items by maximum date created. For example, `date_created=2024-05-14T09:34:00` or
            `date_created=2024-05-14`. Returns metafields created before this date.
          required: false
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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
      responses:
        '200':
          description: |
            List of `Metafield` objects.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetaFieldCollectionResponse'
    post:
      operationId: createChannelsMetafields
      summary: Create Multiple Metafields
      description: Create multiple metafields.
      tags:
        - batchMetafields
      parameters:
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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
      responses:
        '200':
          description: |
            List of created `Metafield` objects.  
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetaFieldCollectionResponse_POST_PUT'
        '400':
          description: Bad Request. Input is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateChannelsMetafieldsRequestBadRequestError'
        '422':
          description: Unprocessable entity (The following fields are invalid.)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/MetafieldPost'
    put:
      operationId: updateChannelsMetafields
      summary: Update Multiple Metafields
      description: Update multiple metafields.
      tags:
        - batchMetafields
      parameters:
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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
      responses:
        '200':
          description: |
            List of updated `Metafield` objects.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetaFieldCollectionResponse_POST_PUT'
        '400':
          description: Bad Request. Input is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateChannelsMetafieldsRequestBadRequestError'
        '422':
          description: |
            Response object for metafields creation with partial success.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetaFieldCollectionResponsePartialSuccess_POST_PUT'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/MetafieldPut'
    delete:
      operationId: deleteChannelsMetafields
      summary: Delete Multiple Metafields
      description: Delete all channel metafields.
      tags:
        - batchMetafields
      parameters:
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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
      responses:
        '200':
          description: |
            Response object for metafields deletion with success.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetaFieldCollectionDeleteResponseSuccess'
        '400':
          description: Bad Request. Input is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteChannelsMetafieldsRequestBadRequestError'
        '422':
          description: |
            Response object for metafields deletion with partial success.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetaFieldCollectionResponsePartialSuccess_DELETE'
      requestBody:
        description: List of metafield IDs.
        content:
          application/json:
            schema:
              type: array
              items:
                type: integer
  /stores/{store_hash}/v3/channels/currency-assignments:
    get:
      operationId: getAllCurrencyAssignments
      summary: List Channels Currency Assignments
      description: Returns a list of currency assignments for all channels.
      tags:
        - currencyAssignments
      parameters:
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Currency Assignments_getAllCurrencyAssignments_Response_200'
    post:
      operationId: createMultipleChannelsCurrencyAssignments
      summary: Create Multiple Channels Currency Assignments
      description: >-
        Sets enabled currencies and default currency for multiple channels. Note that currencies must be added first in
        the **Settings > Setup > Currencies** settings from an active MSF-enabled BigCommerce store control panel before
        the currencies can be assigned to a channel.
      tags:
        - currencyAssignments
      parameters:
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Currency Assignments_createMultipleChannelsCurrencyAssignments_Response_200'
        '422':
          description: The request is missing one or more required fields or invalid data is submitted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpsertMultipleChannelsCurrencyAssignmentsReq'
    put:
      operationId: updateMultipleChannelsCurrencyAssignments
      summary: Update Multiple Channels Currency Assignments
      description: >-
        Updates enabled currencies and default currency for multiple channels. Note that currencies must be added first
        in the **Settings > Setup > Currencies** settings from an active MSF-enabled BigCommerce store control panel
        before the currencies can be assigned to a channel.
      tags:
        - currencyAssignments
      parameters:
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Currency Assignments_updateMultipleChannelsCurrencyAssignments_Response_200'
        '422':
          description: The request is missing one or more required fields or invalid data is submitted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpsertMultipleChannelsCurrencyAssignmentsReq'
  /stores/{store_hash}/v3/channels/{channel_id}/currency-assignments:
    get:
      operationId: getSingleChannelCurrencyAssignments
      summary: List Channel Currency Assignments
      description: Returns a list of currency assignments for a specific channel.
      tags:
        - currencyAssignments
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Currency Assignments_getSingleChannelCurrencyAssignments_Response_200'
        '404':
          description: A *Channel* with the provided ID was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    post:
      operationId: createSingleChannelCurrencyAssignments
      summary: Create Channel Currency Assignments
      description: >-
        Sets enabled currencies and default currency for a specific channel. Note that currencies must be added first in
        the **Settings > Setup > Currencies** settings from an active MSF-enabled BigCommerce store control panel before
        the currencies can be assigned to a channel.
      tags:
        - currencyAssignments
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Currency Assignments_createSingleChannelCurrencyAssignments_Response_200'
        '422':
          description: The request is missing one or more required fields or invalid data is submitted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CurrencyRequiredWithoutChannelId'
    put:
      operationId: updateSingleChannelCurrencyAssignments
      summary: Update Channel Currency Assignments
      description: >-
        Updates enabled currencies and default currency for a specific channel. Note that currencies must be added first
        in the **Settings > Setup > Currencies** settings from an active MSF-enabled BigCommerce store control panel
        before the currencies can be assigned to a channel.
      tags:
        - currencyAssignments
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Currency Assignments_updateSingleChannelCurrencyAssignments_Response_200'
        '422':
          description: The request is missing one or more required fields or invalid data is submitted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CurrencyRequiredWithoutChannelId'
    delete:
      operationId: deleteSingleChannelCurrencyAssignments
      summary: Delete Channel Currency Assignments
      description: >-
        Deletes currency assignments for a specific channel. Once done, this channel will inherit the store’s currency
        settings.
      tags:
        - currencyAssignments
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Currency Assignments_deleteSingleChannelCurrencyAssignments_Response_200'
        '404':
          description: A *Channel* with the provided ID was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /stores/{store_hash}/v3/channels/{channel_id}/listings:
    get:
      operationId: getChannelListings
      summary: List Channel Listings
      description: >-
        Returns a list of all *Channel Listings* for a specific channel. We recommend using this endpoint for
        non-storefront channels like marketplaces, marketing channels, and point of sale (POS) channels. Note that if
        the *Channel* is not found or there is no listing associated with the *Channel*, it will return a 200 response
        with empty data.
      tags:
        - listings
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: limit
          in: query
          description: Controls the number of items per page for paginated responses.
          required: false
          schema:
            type: integer
        - name: after
          in: query
          description: Specifies the prior listing ID in a limited (paginated) list of listings.
          required: false
          schema:
            type: integer
        - name: product_id:in
          in: query
          description: Filter items by a comma-separated list of product IDs.
          required: false
          schema:
            type: array
            items:
              type: integer
              format: int64
        - name: date_created
          in: query
          description: Filter items by date created. For example, `date_created=2024-05-14T09:34:00` or `date_created=2024-05-14`.
          required: false
          schema:
            type: string
        - name: date_created:min
          in: query
          description: >-
            Filter items by minimum date created. For example, `date_created=2024-05-14T09:34:00` or
            `date_created=2024-05-14`. Returns metafields created after this date.
          required: false
          schema:
            type: string
        - name: date_created:max
          in: query
          description: >-
            Filter items by maximum date created. For example, `date_created=2024-05-14T09:34:00` or
            `date_created=2024-05-14`. Returns metafields created before this date.
          required: false
          schema:
            type: string
        - name: date_modified
          in: query
          description: Filter items by date modified. For example, `date_created=2024-05-14T09:34:00` or `date_created=2024-05-14`.
          required: false
          schema:
            type: string
        - name: date_modified:min
          in: query
          description: >-
            Filter items by minimum date modified. For example, `date_created=2024-05-14T09:34:00` or
            `date_created=2024-05-14`. Returns metafields modified after this date.
          required: false
          schema:
            type: string
        - name: date_modified:max
          in: query
          description: >-
            Filter items by maximum date modified. For example, `date_created=2024-05-14T09:34:00` or
            `date_created=2024-05-14`. Returns metafields modified before this date.
          required: false
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Listings_getChannelListings_Response_200'
        '400':
          description: Invalid channel ID is provided.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: When an invalid value or invalid query parameter is submitted, a 422 response will be sent.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    post:
      operationId: createChannelListings
      summary: Create Channel Listings
      description: >-
        Creates one or more *Channel Listings* for a specific channel. We recommend using this endpoint for
        non-storefront channels like marketplaces, marketing channels, and point of sale (POS) channels.
      tags:
        - listings
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Listings_createChannelListings_Response_200'
        '422':
          description: The request is missing one or more required fields or invalid data is submitted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateMultipleListingsReq'
    put:
      operationId: updateChannelListings
      summary: Update Channel Listings
      description: >-
        Updates one or more *Channel Listings* for a specific channel. We recommend using this endpoint for
        non-storefront channels like marketplaces, marketing channels, and point of sale (POS) channels. 


        > #### Note

        > * Partial updates are supported. In most cases, if a field that *cannot* be updated is passed in, the API
        **will not** respond with an error. It returns a 200 response with the object, in which you will see the
        field(s) were not updated.

        > * If a new variant is provided, the API will append the variant to the list. If a variant already exists, the
        API will update the existing variant. Other variants that are not provided in the payload remains unchanged.

        > * If `listing_id` does not exist, the API will return a 200 response with empty data.

        > * `listing_id` is required and cannot be less than or equal to zero.

        > * `product_id` cannot be updated after a channel listing is created.

        > * `product_id` of a variant must match the `product_id` of the channel listing.
      tags:
        - listings
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Listings_updateChannelListings_Response_200'
        '422':
          description: >-
            The request is missing one or more required fields or invalid data is submitted. Note that the `group_id` in
            the Invalid Listing ID example refers to `listing_id`. Please use `listing_id` instead of `group_id` in the
            request payload.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateMultipleListingsReq'
  /stores/{store_hash}/v3/channels/{channel_id}/listings/{listing_id}:
    get:
      operationId: getChannelListing
      summary: Get Channel Listing
      description: >-
        Returns a *Channel Listing* for a specific channel. We recommend using this endpoint for non-storefront channels
        like marketplaces, marketing channels, and point of sale (POS) channels.
      tags:
        - listings
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - name: listing_id
          in: path
          description: The ID of a channel listing.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Listings_getChannelListing_Response_200'
        '404':
          description: A *Channel Listing* with the provided channel ID and listing ID was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /stores/{store_hash}/v3/channels/{channel_id}/channel-menus:
    get:
      operationId: getChannelMenus
      summary: List Channel Menus
      description: |
        Returns a list of control panel side navigation menus for a channel.
      tags:
        - menus
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Menus_getChannelMenus_Response_200'
    post:
      operationId: createChannelMenus
      summary: Create Channel Menus
      description: Creates or replaces the list of control panel side navigation menus for a channel.
      tags:
        - menus
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Menus_createChannelMenus_Response_200'
        '422':
          description: |
            Unprocessable entity (The following fields are invalid.)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/channel_menus_Post'
    delete:
      operationId: deleteChannelMenus
      summary: Delete Channel Menus
      description: Deletes control panel side navigation menus for a channel.
      tags:
        - menus
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Menus_deleteChannelMenus_Response_200'
  /stores/{store_hash}/v3/channels/{channel_id}/metafields:
    get:
      operationId: getChannelMetafields
      summary: List Channel Metafields
      description: Returns a list of metafields on a channel. Optional filter parameters can be passed in.
      tags:
        - metafields
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            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
        - name: key
          in: query
          description: |
            Filter based on a metafieldʼs key.
          required: false
          schema:
            type: string
        - name: namespace
          in: query
          description: Filter based on a metafieldʼs namespace.
          required: false
          schema:
            type: string
        - name: direction
          in: query
          description: 'Sort direction. Acceptable values are: `asc`, `desc`.'
          required: false
          schema:
            $ref: '#/components/schemas/ChannelsChannelIdMetafieldsGetParametersDirection'
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Metafields_getChannelMetafields_Response_200'
    post:
      operationId: createChannelMetafield
      summary: Create Channel Metafield
      description: >-
        Creates a channel metafield.


        **Note:** The maxiumum number of metafields allowed on each order, product, category, variant, channel, or brand
        is 250 per client ID. For more information, see [Platform
        Limits](https://support.bigcommerce.com/s/article/Platform-Limits) in the Help Center.
      tags:
        - metafields
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Metafields_createChannelMetafield_Response_200'
        '400':
          description: Bad Request. Input is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateChannelMetafieldRequestBadRequestError'
        '409':
          description: >
            The `Metafield` conflicts with another `Metafield`. This can result from duplicate unique key combinations
            of the appʼs client id, namespace, key, resource_type, and resource_id.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: >
            The `Metafield` 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/ErrorResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/metafield_Post'
  /stores/{store_hash}/v3/channels/{channel_id}/metafields/{metafield_id}:
    get:
      operationId: getChannelMetafield
      summary: Get Channel Metafield
      description: Returns a single channel metafield.
      tags:
        - metafields
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - name: metafield_id
          in: path
          required: true
          schema:
            type: string
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Metafields_getChannelMetafield_Response_200'
        '404':
          description: |
            Not found (A metafield was not found with this query).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
    put:
      operationId: updateChannelMetafield
      summary: Update Channel Metafield
      description: >-
        Updates a single channel metafield.


        **Usage Notes**

        * Attempting to modify `namespace`, `key`, and `permission_set` fields using a client ID different from the one
        used to create those metafields will result in a `403` error message. 
      tags:
        - metafields
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - name: metafield_id
          in: path
          required: true
          schema:
            type: string
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Metafields_updateChannelMetafield_Response_200'
        '400':
          description: Bad Request. Input is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateChannelMetafieldRequestBadRequestError'
        '404':
          description: |
            Not found (A metafield was not found with this query).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/metafield_Put'
    delete:
      operationId: deleteChannelMetafield
      summary: Delete Channel Metafield
      description: Deletes a single channel metafield.
      tags:
        - metafields
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - name: metafield_id
          in: path
          required: true
          schema:
            type: string
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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: No Content
          content:
            application/json:
              schema:
                type: object
                properties: {}
        '404':
          description: |
            Not found (A metafield was not found with this query).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
  /stores/{store_hash}/v3/channels/{channel_id}/site:
    get:
      operationId: getChannelSite
      summary: Get Channel Site
      description: |
        Alias of `GET /sites?channel_id=channel_id`

        Returns site data for the specified channel.

        <Callout type="info">
          For the "urls" object, we no longer modify the `www` prefix of the primary URL. The API returns URLs exactly as the customer enters them, similar to the "url" field.
          
            * If the customer saves a URL with `www`, the API returns it with `www`.
            * If the customer saves a URL without `www`, the API returns it without `www`.
        </Callout>
      tags:
        - site
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Site_getChannelSite_Response_200'
    post:
      operationId: createChannelSite
      summary: Create Channel Site
      description: |-
        Alias of POST `/sites`. Creates a site for provided channel.

         <Callout type="info">
            For the "urls" object, we no longer modify the `www` prefix of the primary URL. The API returns URLs exactly as the customer enters them, similar to the "url" field.
            
              * If the customer saves a URL with `www`, the API returns it with `www`.
              * If the customer saves a URL without `www`, the API returns it without `www`.
          </Callout>
      tags:
        - site
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Site_createChannelSite_Response_200'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/site_Post'
    put:
      operationId: updateChannelSite
      summary: Update Channel Site
      description: |-
        Updates a site for provided channel.

          <Callout type="info">
            For the "urls" object, we no longer modify the `www` prefix of the primary URL. The API returns URLs exactly as the customer enters them, similar to the "url" field.
            
              * If the customer saves a URL with `www`, the API returns it with `www`.
              * If the customer saves a URL without `www`, the API returns it without `www`.
          </Callout>
      tags:
        - site
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Site_updateChannelSite_Response_200'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/site_Put'
    delete:
      operationId: deleteChannelSite
      summary: Delete Channel Site
      description: Deletes the Channelʼs site.
      tags:
        - site
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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/Site_deleteChannelSite_Response_200'
  /stores/{store_hash}/v3/channels/{channel_id}/site/checkout-url:
    put:
      operationId: updateCheckoutUrl
      summary: Upsert Siteʼs Checkout URL
      description: |-
        Creates or updates (upserts) a siteʼs checkout URL

        <Callout type="info">
            For the "urls" object, we no longer modify the `www` prefix of the primary URL. The API returns URLs exactly as the customer enters them, similar to the "url" field.
            
              * If the customer saves a URL with `www`, the API returns it with `www`.
              * If the customer saves a URL without `www`, the API returns it without `www`.
          </Callout>
      tags:
        - siteCheckoutUrl
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Site'
        '422':
          description: >-
            Unprocessable Entity. Your checkout and storefront must be within the same main domain like `example.com`
            and `subdomain.example.com`
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateCheckoutUrlRequestUnprocessableEntityError'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PutCheckoutUrl'
    delete:
      operationId: deleteCheckoutUrl
      summary: Delete Siteʼs Checkout URL
      description: Deletes a siteʼs checkout URL. After deletion, a shared checkout URL is used.
      tags:
        - siteCheckoutUrl
      parameters:
        - name: channel_id
          in: path
          description: The ID of a channel.
          required: true
          schema:
            type: integer
            format: int64
        - 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 |

            |:--------|:-----------|:----------|

            |  Channel Listings | modify | `store_channel_listings` |

            |  Channel Listings | read-only | `store_channel_listings_read_only` |

            |  Channel Settings | modify | `store_channel_settings` |

            |  Channel Settings | read-only | `store_channel_settings_read_only` |

            |  Sites & Routes | modify | `store_sites` |

            |  Sites & Routes | read-only | `store_sites_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: OK. `data` and `meta` are empty objects.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Site Checkout URL_deleteCheckoutUrl_Response_200'
servers:
  - url: https://api.bigcommerce.com
    description: https://api.bigcommerce.com
components:
  schemas:
    ChannelsGetParametersInclude:
      type: string
      enum:
        - currencies
      title: ChannelsGetParametersInclude
    ChannelsGetParametersStatusInSchemaItems:
      type: string
      enum:
        - prelaunch
        - active
        - inactive
        - connected
        - disconnected
        - archived
        - deleted
        - terminated
      title: ChannelsGetParametersStatusInSchemaItems
    ChannelsGetParametersTypeInSchemaItems:
      type: string
      enum:
        - marketplace
        - marketing
        - pos
        - storefront
      title: ChannelsGetParametersTypeInSchemaItems
    ChannelId:
      type: integer
      format: int64
      description: The ID of the channel.
      title: ChannelId
    ExternalId:
      type: string
      description: Associated ID within a system / platform outside of BC.
      title: ExternalId
    IsListableFromUI:
      type: boolean
      description: >-
        Indicates if a channel can create listings from the BigCommerce UI. Default value for this field is based on the
        channel type and platform combination if not specified on create.
      title: IsListableFromUI
    IsVisible:
      type: boolean
      description: >-
        Indicates if a channel is visible in the BigCommerce control panel. If `false`, the channel will not show in
        Channel Manager or in channels dropdowns elsewhere in the UI. Default value for this field is `true` if not
        specified on create.
      title: IsVisible
    ChannelStatus:
      type: string
      enum:
        - active
        - prelaunch
        - inactive
        - connected
        - disconnected
        - archived
        - deleted
        - terminated
      description: >-
        The status of the channel; channel `type`, `platform`, and `status` must be a [valid
        combination](/developer/api-reference/rest/admin/management/channels#status). `terminated` is not valid for
        `PUT` or `POST` requests. `deleted` is not valid for `POST` requests. `prelaunch` is not valid for `PUT`
        requests.
      title: ChannelStatus
    ChannelName:
      type: string
      description: >-
        Name of the channel as it will appear in the store control panel. The only characters it can include are Latin
        alphabet letters, Arabic numerals, dashes, and underscores.
      title: ChannelName
    ChannelType:
      type: string
      enum:
        - pos
        - marketplace
        - storefront
        - marketing
      description: >-
        The type of channel; channel `platform` and `type` must be a [valid
        combination](/developer/api-reference/rest/admin/management/channels#status).
      title: ChannelType
    ChannelPlatform:
      type: string
      description: >-
        The name of the platform for the channel; channel `platform` and `type` must be a [valid
        combination](/developer/api-reference/rest/admin/management/channels#status).
      title: ChannelPlatform
    ChannelDateCreated:
      type: string
      format: date-time
      description: Date on which the channel was first created.
      title: ChannelDateCreated
    ChannelDateModified:
      type: string
      format: date-time
      description: Date on which the channel was most recently changed.
      title: ChannelDateModified
    IconUrl:
      type: string
      format: url
      description: Link to the platform icon.
      title: IconUrl
    ChannelWithoutCurrencies:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/ChannelId'
        external_id:
          $ref: '#/components/schemas/ExternalId'
        is_listable_from_ui:
          $ref: '#/components/schemas/IsListableFromUI'
        is_enabled:
          type: boolean
          description: >-
            This deprecated field was originally used to enable or disable a channel. Use the `status` field instead of
            `is_enabled`. If the channel status is `prelaunch`, `active`, or `connected`, then `is_enabled` will be
            `true`. If the status is `inactive`, `disconnected`, `archived`, `deleted`, or `terminated`, then
            `is_enabled` will be false.
        is_visible:
          $ref: '#/components/schemas/IsVisible'
        status:
          $ref: '#/components/schemas/ChannelStatus'
        name:
          $ref: '#/components/schemas/ChannelName'
        type:
          $ref: '#/components/schemas/ChannelType'
        platform:
          $ref: '#/components/schemas/ChannelPlatform'
        date_created:
          $ref: '#/components/schemas/ChannelDateCreated'
        date_modified:
          $ref: '#/components/schemas/ChannelDateModified'
        icon_url:
          $ref: '#/components/schemas/IconUrl'
      required:
        - id
        - name
      title: ChannelWithoutCurrencies
    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, current, or next parts of the whole collection.
      title: PaginationFullLinks
    pagination_Full:
      type: object
      properties:
        per_page:
          type: integer
          description: |
            The maximum number of items per page.
        total:
          type: integer
          description: |
            Total number of items in the result set.
        count:
          type: integer
          description: |
            Total number of items in the collection response.
        total_pages:
          type: integer
          description: |
            The total number of pages in the collection.
        current_page:
          type: integer
          description: The current page number.
        links:
          $ref: '#/components/schemas/PaginationFullLinks'
          description: |
            Pagination links for the previous, current, or next parts of the whole collection.
      description: |
        Data about the pagination.
      title: pagination_Full
    MetaWithFullPagination:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/pagination_Full'
      description: Data about the response, including pagination.
      title: MetaWithFullPagination
    Channels_getChannels_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ChannelWithoutCurrencies'
        meta:
          $ref: '#/components/schemas/MetaWithFullPagination'
      required:
        - data
        - meta
      title: Channels_getChannels_Response_200
    ErrorDetail:
      type: object
      properties: {}
      description: |
        Error detail response payload for the BigCommerce API.
      title: ErrorDetail
    Error:
      type: object
      properties:
        status:
          type: integer
          description: |
            The HTTP status code for the error.
        title:
          type: string
          description: |
            The error title describing the particular error.
        type:
          type: string
          description: |
            The error type.
        errors:
          $ref: '#/components/schemas/ErrorDetail'
      description: |
        Error response payload for the BigCommerce API.
      title: Error
    CreateChannelReq:
      type: object
      properties:
        external_id:
          $ref: '#/components/schemas/ExternalId'
        is_listable_from_ui:
          $ref: '#/components/schemas/IsListableFromUI'
        is_visible:
          $ref: '#/components/schemas/IsVisible'
        status:
          $ref: '#/components/schemas/ChannelStatus'
        name:
          $ref: '#/components/schemas/ChannelName'
        type:
          $ref: '#/components/schemas/ChannelType'
        platform:
          $ref: '#/components/schemas/ChannelPlatform'
      required:
        - name
        - type
        - platform
      title: CreateChannelReq
    EmptyMeta:
      type: object
      properties: {}
      description: Response metadata.
      title: EmptyMeta
    Channels_createChannel_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ChannelWithoutCurrencies'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Channels_createChannel_Response_200
    ChannelsChannelIdGetParametersInclude:
      type: string
      enum:
        - currencies
      title: ChannelsChannelIdGetParametersInclude
    EnabledCurrencies:
      type: array
      items:
        type: string
      description: >-
        Currencies that are enabled for the specified channel in [ISO
        4217](https://www.iso.org/iso-4217-currency-codes.html) three character alphabetic format.
      title: EnabledCurrencies
    DefaultCurrency:
      type: string
      description: >-
        Default currency for the channel in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) three character
        alphabetic format. Will be used on storefront when other currencies cannot.
      title: DefaultCurrency
    CurrencyNotRequiredWithChannelId:
      type: object
      properties:
        channel_id:
          $ref: '#/components/schemas/ChannelId'
        enabled_currencies:
          $ref: '#/components/schemas/EnabledCurrencies'
        default_currency:
          $ref: '#/components/schemas/DefaultCurrency'
      description: Details about currency assignments for a specific channel.
      title: CurrencyNotRequiredWithChannelId
    ChannelWithCurrencies:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/ChannelId'
        external_id:
          $ref: '#/components/schemas/ExternalId'
        is_listable_from_ui:
          $ref: '#/components/schemas/IsListableFromUI'
        is_enabled:
          type: boolean
          description: >-
            This deprecated field was originally used to enable or disable a channel. Use the `status` field instead of
            `is_enabled`. If the channel status is `prelaunch`, `active`, or `connected`, then `is_enabled` will be
            `true`. If the status is `inactive`, `disconnected`, `archived`, `deleted`, or `terminated`, then
            `is_enabled` will be `false`.
        is_visible:
          $ref: '#/components/schemas/IsVisible'
        status:
          $ref: '#/components/schemas/ChannelStatus'
        name:
          $ref: '#/components/schemas/ChannelName'
        type:
          $ref: '#/components/schemas/ChannelType'
        platform:
          $ref: '#/components/schemas/ChannelPlatform'
        date_created:
          $ref: '#/components/schemas/ChannelDateCreated'
        date_modified:
          $ref: '#/components/schemas/ChannelDateModified'
        icon_url:
          $ref: '#/components/schemas/IconUrl'
        currencies:
          $ref: '#/components/schemas/CurrencyNotRequiredWithChannelId'
      title: ChannelWithCurrencies
    Channels_getChannel_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ChannelWithCurrencies'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Channels_getChannel_Response_200
    UpdateChannelReq:
      type: object
      properties:
        external_id:
          $ref: '#/components/schemas/ExternalId'
        is_listable_from_ui:
          $ref: '#/components/schemas/IsListableFromUI'
        is_visible:
          $ref: '#/components/schemas/IsVisible'
        name:
          $ref: '#/components/schemas/ChannelName'
        status:
          $ref: '#/components/schemas/ChannelStatus'
      title: UpdateChannelReq
    Channels_updateChannel_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ChannelWithoutCurrencies'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Channels_updateChannel_Response_200
    ActiveTheme:
      type: object
      properties:
        active_theme_uuid:
          type: string
          description: The UUID of the currently active Theme on the Channel.
        active_theme_configuration_uuid:
          type: string
          description: The UUID of the currently active Theme Configuration on the Channel.
        active_theme_version_uuid:
          type: string
          description: >-
            The UUID of the currently active Theme Version on the Channel. Needed to look up the available Custom
            Templates for the Theme.
        saved_theme_configuration_uuid:
          type: string
          description: >-
            The UUID of the most recently saved Theme Configuration. If this is different from the active Theme
            Configuration UUID, this indicates that some changes have been saved in the control panel Theme Editor that
            have not yet been published.
      description: Details about the Channelʼs relationship to Themes.
      title: ActiveTheme
    Active Theme_getChannelActiveTheme_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ActiveTheme'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Active Theme_getChannelActiveTheme_Response_200
    ChannelsMetafieldsGetParametersDirection:
      type: string
      enum:
        - asc
        - desc
      title: ChannelsMetafieldsGetParametersDirection
    ChannelsMetafieldsGetParametersIncludeFieldsSchemaItems:
      type: string
      enum:
        - resource_id
        - key
        - value
        - namespace
        - permission_set
        - resource_type
        - description
        - owner_client_id
        - date_created
        - date_modified
      title: ChannelsMetafieldsGetParametersIncludeFieldsSchemaItems
    MetafieldPermissionSet:
      type: string
      enum:
        - app_only
        - read
        - write
        - read_and_sf_access
        - write_and_sf_access
      description: |
        Determines the visibility and writeability of the field by other API consumers.
        | Value | Description |
        | :--- | :--- |
        | `app_only` | Private to the app that owns the field. |
        | `read` | Visible to other API consumers. |
        | `write` | Open for reading and writing by other API consumers. |
        | `read_and_sf_access` | Visible to other API consumers, including on the storefront. |
        | `write_and_sf_access` | Open for reading and writing by other API consumers, including on the storefront. |
      title: MetafieldPermissionSet
    MetafieldResourceType:
      type: string
      enum:
        - brand
        - product
        - variant
        - category
        - cart
        - channel
        - location
        - order
        - customer
      description: |
        The type of resource with which the metafield is associated.
      title: MetafieldResourceType
    Metafield:
      type: object
      properties:
        permission_set:
          $ref: '#/components/schemas/MetafieldPermissionSet'
          description: >
            Determines the visibility and writeability of the field by other API consumers.

            | Value | Description |

            | :--- | :--- |

            | `app_only` | Private to the app that owns the field. |

            | `read` | Visible to other API consumers. |

            | `write` | Open for reading and writing by other API consumers. |

            | `read_and_sf_access` | Visible to other API consumers, including on the storefront. |

            | `write_and_sf_access` | Open for reading and writing by other API consumers, including on the storefront.
            |
        namespace:
          type: string
          description: |
            Namespace for the metafield, for organizational purposes.
        key:
          type: string
          description: |
            The name of the field, for example: `location_id`, `color`.
        value:
          type: string
          description: |
            The value of the field, for example: `1`, `blue`.
        description:
          type: string
          description: |
            Description for the metafields.
        resource_type:
          $ref: '#/components/schemas/MetafieldResourceType'
          description: |
            The type of resource with which the metafield is associated.
        resource_id:
          type: integer
          description: |
            The unique identifier for the resource with which the metafield is associated.
        id:
          type: integer
          description: The unique identifier for the metafield.
        date_created:
          type: string
          format: date-time
          description: Date and time of the metafieldʼs creation.
        date_modified:
          type: string
          format: date-time
          description: Date and time when the metafield was last updated.
        owner_client_id:
          type: string
          description: Client ID for the metafieldʼs creator.
      required:
        - permission_set
        - namespace
        - key
        - value
        - description
        - resource_type
        - resource_id
        - id
        - date_created
        - date_modified
      description: |
        Common Metafield properties.
      title: Metafield
    CollectionMetaPaginationLinks:
      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: CollectionMetaPaginationLinks
    CollectionMetaPagination:
      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/CollectionMetaPaginationLinks'
          description: |
            Pagination links for the previous and next parts of the whole collection.
      description: Data about the response, including pagination and collection totals.
      title: CollectionMetaPagination
    CollectionMeta:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/CollectionMetaPagination'
          description: Data about the response, including pagination and collection totals.
      description: Data about the response, including pagination and collection totals.
      title: CollectionMeta
    MetaFieldCollectionResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Metafield'
        meta:
          $ref: '#/components/schemas/CollectionMeta'
      description: |
        Response payload for the BigCommerce API.
      title: MetaFieldCollectionResponse
    MetafieldBasePostPermissionSet:
      type: string
      enum:
        - app_only
        - read
        - write
        - read_and_sf_access
        - write_and_sf_access
      description: |
        Determines the visibility and writeability of the field by other API consumers.
        | Value | Description |
        | :--- | :--- |
        | `app_only` | Private to the app that owns the field. |
        | `read` | Visible to other API consumers. |
        | `write` | Open for reading and writing by other API consumers. |
        | `read_and_sf_access` | Visible to other API consumers, including on the storefront. |
        | `write_and_sf_access` | Open for reading and writing by other API consumers, including on the storefront. |
      title: MetafieldBasePostPermissionSet
    MetafieldPost:
      type: object
      properties:
        permission_set:
          $ref: '#/components/schemas/MetafieldBasePostPermissionSet'
          description: >
            Determines the visibility and writeability of the field by other API consumers.

            | Value | Description |

            | :--- | :--- |

            | `app_only` | Private to the app that owns the field. |

            | `read` | Visible to other API consumers. |

            | `write` | Open for reading and writing by other API consumers. |

            | `read_and_sf_access` | Visible to other API consumers, including on the storefront. |

            | `write_and_sf_access` | Open for reading and writing by other API consumers, including on the storefront.
            |
        namespace:
          type: string
          description: |
            Namespace for the metafield, for organizational purposes.
        key:
          type: string
          description: |
            The name of the field, for example: `location_id`, `color`.
        value:
          type: string
          description: |
            The value of the field, for example: `1`, `blue`.
        description:
          type: string
          description: |
            Description for the metafields.
        resource_id:
          type: integer
          description: |
            The ID for the resource with which the metafield is associated.
      required:
        - permission_set
        - namespace
        - key
        - value
        - resource_id
      description: |
        The model for a POST to create metafield.
      title: MetafieldPost
    MetaFieldCollectionResponse_POST_PUT:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Metafield'
        errors:
          type: array
          items:
            description: Any type
          description: Empty for 200 responses.
        meta:
          $ref: '#/components/schemas/CollectionMeta'
      description: |
        Response payload for the BigCommerce API.
      title: MetaFieldCollectionResponse_POST_PUT
    CreateChannelsMetafieldsRequestBadRequestError:
      type: object
      properties:
        status:
          type: number
          format: double
        title:
          type: string
        type:
          type: string
        detail:
          type: string
      title: CreateChannelsMetafieldsRequestBadRequestError
    ErrorResponseErrors:
      type: object
      properties: {}
      title: ErrorResponseErrors
    ErrorResponse:
      type: object
      properties:
        status:
          type: integer
        title:
          type: string
        type:
          type: string
        instance:
          type: string
        errors:
          $ref: '#/components/schemas/ErrorResponseErrors'
      title: ErrorResponse
    MetafieldBasePutPermissionSet:
      type: string
      enum:
        - app_only
        - read
        - write
        - read_and_sf_access
        - write_and_sf_access
      description: |
        Determines the visibility and writeability of the field by other API consumers.
        | Value | Description |
        | :--- | :--- |
        | `app_only` | Private to the app that owns the field. |
        | `read` | Visible to other API consumers. |
        | `write` | Open for reading and writing by other API consumers. |
        | `read_and_sf_access` | Visible to other API consumers, including on the storefront. |
        | `write_and_sf_access` | Open for reading and writing by other API consumers, including on the storefront. |
      title: MetafieldBasePutPermissionSet
    MetafieldPut:
      type: object
      properties:
        permission_set:
          $ref: '#/components/schemas/MetafieldBasePutPermissionSet'
          description: >
            Determines the visibility and writeability of the field by other API consumers.

            | Value | Description |

            | :--- | :--- |

            | `app_only` | Private to the app that owns the field. |

            | `read` | Visible to other API consumers. |

            | `write` | Open for reading and writing by other API consumers. |

            | `read_and_sf_access` | Visible to other API consumers, including on the storefront. |

            | `write_and_sf_access` | Open for reading and writing by other API consumers, including on the storefront.
            |
        namespace:
          type: string
          description: |
            Namespace for the metafield, for organizational purposes.
        key:
          type: string
          description: |
            The name of the field, for example: `location_id`, `color`.
        value:
          type: string
          description: |
            The value of the field, for example: `1`, `blue`.
        description:
          type: string
          description: |
            Description for the metafields.
        id:
          type: integer
          description: |
            The ID of metafield to update.
      required:
        - id
      description: |
        The model for a PUT to create metafield.
      title: MetafieldPut
    UpdateChannelsMetafieldsRequestBadRequestError:
      type: object
      properties:
        status:
          type: number
          format: double
        title:
          type: string
        type:
          type: string
        detail:
          type: string
      title: UpdateChannelsMetafieldsRequestBadRequestError
    WriteCollectionPartialSuccessMeta:
      type: object
      properties:
        total:
          type: integer
          description: |
            Total number of items in the result set.
        success:
          type: integer
          description: |
            Total number of items that were successfully deleted.
        failed:
          type: integer
          description: |
            Total number of items that failed to be deleted.
      description: Additional data about the response.
      title: WriteCollectionPartialSuccessMeta
    MetaFieldCollectionResponsePartialSuccess_POST_PUT:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Metafield'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Error'
        meta:
          $ref: '#/components/schemas/WriteCollectionPartialSuccessMeta'
      description: |
        Response payload for the BigCommerce API.
      title: MetaFieldCollectionResponsePartialSuccess_POST_PUT
    WriteCollectionSuccessMeta:
      type: object
      properties:
        total:
          type: integer
          description: |
            Total number of items in the result set.
        success:
          type: integer
          description: |
            Total number of items that were successfully deleted.
        failed:
          type: integer
          description: |
            Total number of items that failed to be deleted.
      description: Additional data about the response.
      title: WriteCollectionSuccessMeta
    MetaFieldCollectionDeleteResponseSuccess:
      type: object
      properties:
        data:
          type: array
          items:
            type: integer
        errors:
          type: array
          items:
            description: Any type
          description: Empty for 200 responses.
        meta:
          $ref: '#/components/schemas/WriteCollectionSuccessMeta'
      description: |
        Response payload for the BigCommerce API.
      title: MetaFieldCollectionDeleteResponseSuccess
    DeleteChannelsMetafieldsRequestBadRequestError:
      type: object
      properties:
        status:
          type: number
          format: double
        title:
          type: string
        type:
          type: string
        detail:
          type: string
      title: DeleteChannelsMetafieldsRequestBadRequestError
    MetaFieldCollectionResponsePartialSuccess_DELETE:
      type: object
      properties:
        data:
          type: array
          items:
            type: integer
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Error'
        meta:
          $ref: '#/components/schemas/WriteCollectionPartialSuccessMeta'
      description: |
        Response payload for the BigCommerce API.
      title: MetaFieldCollectionResponsePartialSuccess_DELETE
    Currency Assignments_getAllCurrencyAssignments_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/CurrencyNotRequiredWithChannelId'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Currency Assignments_getAllCurrencyAssignments_Response_200
    CurrencyRequiredWithChannelId:
      type: object
      properties:
        channel_id:
          $ref: '#/components/schemas/ChannelId'
        enabled_currencies:
          $ref: '#/components/schemas/EnabledCurrencies'
        default_currency:
          $ref: '#/components/schemas/DefaultCurrency'
      required:
        - channel_id
        - enabled_currencies
        - default_currency
      description: Details about currency assignments for a specific channel.
      title: CurrencyRequiredWithChannelId
    UpsertMultipleChannelsCurrencyAssignmentsReq:
      type: array
      items:
        $ref: '#/components/schemas/CurrencyRequiredWithChannelId'
      title: UpsertMultipleChannelsCurrencyAssignmentsReq
    Currency Assignments_createMultipleChannelsCurrencyAssignments_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/CurrencyNotRequiredWithChannelId'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Currency Assignments_createMultipleChannelsCurrencyAssignments_Response_200
    Currency Assignments_updateMultipleChannelsCurrencyAssignments_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/CurrencyNotRequiredWithChannelId'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Currency Assignments_updateMultipleChannelsCurrencyAssignments_Response_200
    Currency Assignments_getSingleChannelCurrencyAssignments_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/CurrencyNotRequiredWithChannelId'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Currency Assignments_getSingleChannelCurrencyAssignments_Response_200
    CurrencyRequiredWithoutChannelId:
      type: object
      properties:
        enabled_currencies:
          $ref: '#/components/schemas/EnabledCurrencies'
        default_currency:
          $ref: '#/components/schemas/DefaultCurrency'
      required:
        - enabled_currencies
        - default_currency
      description: Details about currency assignments for a specific channel.
      title: CurrencyRequiredWithoutChannelId
    Currency Assignments_createSingleChannelCurrencyAssignments_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/CurrencyNotRequiredWithChannelId'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Currency Assignments_createSingleChannelCurrencyAssignments_Response_200
    Currency Assignments_updateSingleChannelCurrencyAssignments_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/CurrencyNotRequiredWithChannelId'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Currency Assignments_updateSingleChannelCurrencyAssignments_Response_200
    Currency Assignments_deleteSingleChannelCurrencyAssignments_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ChannelId'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Currency Assignments_deleteSingleChannelCurrencyAssignments_Response_200
    ChannelIdForListing:
      type: integer
      format: int64
      description: The ID of the channel associated with this channel listing.
      title: ChannelIdForListing
    ListingId:
      type: integer
      format: int64
      description: >-
        The ID of the channel listing that has been created, returned, or updated. In a 422 error, you may receive a
        response that references the `group_id`. The `group_id` in the Invalid Listing ID example refers to the
        `listing_id`. Please use `listing_id` instead of `group_id` in the request payload.
      title: ListingId
    ProductId:
      type: integer
      format: int64
      description: The ID of the product associated with this channel listing.
      title: ProductId
    ListingState:
      type: string
      enum:
        - active
        - disabled
        - error
        - pending
        - pending_disable
        - pending_delete
        - partially_rejected
        - queued
        - rejected
        - submitted
        - deleted
      description: The state of the product assignment or channel listing.
      title: ListingState
    ChannelProductName:
      type: string
      description: >-
        Name of the product for this channel listing specifically. This is an optional field that can be used to
        override the product name in the catalog.
      title: ChannelProductName
    ChannelProductDescription:
      type: string
      description: >-
        Description of the product for this channel listing specifically. This is an optional field that can be used to
        override the product description in the catalog.
      title: ChannelProductDescription
    ChannelListingDateCreated:
      type: string
      format: date-time
      description: Date on which the channel listing was first created.
      title: ChannelListingDateCreated
    ChannelListingDateModified:
      type: string
      format: date-time
      description: Date on which the channel listing was most recently changed.
      title: ChannelListingDateModified
    VariantId:
      type: integer
      format: int64
      description: The ID of the product variant associated with this channel listing.
      title: VariantId
    VariantState:
      type: string
      enum:
        - active
        - disabled
        - error
        - pending
        - pending_disable
        - pending_delete
        - queued
        - rejected
        - submitted
        - deleted
      description: The state of the channel listing variant.
      title: VariantState
    ChannelProductVariantName:
      type: string
      description: >-
        Name of the product variant for this channel listing specifically. This is an optional field that can be used to
        override the name of the product variant in the catalog.
      title: ChannelProductVariantName
    ChannelProductVariantDescription:
      type: string
      description: >-
        Description of the product variant for this channel listing specifically. This is an optional field that can be
        used to override the description of the product variant in the catalog.
      title: ChannelProductVariantDescription
    ChannelListingVariantDateCreated:
      type: string
      format: date-time
      description: Date on which the channel listing variant was first created.
      title: ChannelListingVariantDateCreated
    ChannelListingVariantDateModified:
      type: string
      format: date-time
      description: Date on which the channel listing variant was most recently changed.
      title: ChannelListingVariantDateModified
    ChannelProductVariantFull:
      type: object
      properties:
        channel_id:
          $ref: '#/components/schemas/ChannelIdForListing'
        product_id:
          $ref: '#/components/schemas/ProductId'
        variant_id:
          $ref: '#/components/schemas/VariantId'
        external_id:
          $ref: '#/components/schemas/ExternalId'
        state:
          $ref: '#/components/schemas/VariantState'
        name:
          $ref: '#/components/schemas/ChannelProductVariantName'
        description:
          $ref: '#/components/schemas/ChannelProductVariantDescription'
        date_created:
          $ref: '#/components/schemas/ChannelListingVariantDateCreated'
        date_modified:
          $ref: '#/components/schemas/ChannelListingVariantDateModified'
      description: Details about a variant of the product for this channel listing.
      title: ChannelProductVariantFull
    Listing:
      type: object
      properties:
        channel_id:
          $ref: '#/components/schemas/ChannelIdForListing'
        listing_id:
          $ref: '#/components/schemas/ListingId'
        external_id:
          $ref: '#/components/schemas/ExternalId'
        product_id:
          $ref: '#/components/schemas/ProductId'
        state:
          $ref: '#/components/schemas/ListingState'
        name:
          $ref: '#/components/schemas/ChannelProductName'
        description:
          $ref: '#/components/schemas/ChannelProductDescription'
        date_created:
          $ref: '#/components/schemas/ChannelListingDateCreated'
        date_modified:
          $ref: '#/components/schemas/ChannelListingDateModified'
        variants:
          type: array
          items:
            $ref: '#/components/schemas/ChannelProductVariantFull'
      title: Listing
    PaginationPartialLinks:
      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, current, or next parts of the whole collection.
      title: PaginationPartialLinks
    pagination_Partial:
      type: object
      properties:
        count:
          type: integer
          description: |
            Total number of items in the collection response.
        total:
          type: integer
          description: |
            Total number of items in the result set.
        links:
          $ref: '#/components/schemas/PaginationPartialLinks'
          description: |
            Pagination links for the previous, current, or next parts of the whole collection.
        total_pages:
          type: integer
          description: |
            The total number of pages in the collection.
      description: |
        Data about the pagination.
      title: pagination_Partial
    MetaWithPartialPagination:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/pagination_Partial'
      description: Data about the response, including pagination.
      title: MetaWithPartialPagination
    Listings_getChannelListings_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Listing'
        meta:
          $ref: '#/components/schemas/MetaWithPartialPagination'
      title: Listings_getChannelListings_Response_200
    ChannelProductVariantPartial:
      type: object
      properties:
        product_id:
          $ref: '#/components/schemas/ProductId'
        variant_id:
          $ref: '#/components/schemas/VariantId'
        external_id:
          $ref: '#/components/schemas/ExternalId'
        state:
          $ref: '#/components/schemas/VariantState'
        name:
          $ref: '#/components/schemas/ChannelProductVariantName'
        description:
          $ref: '#/components/schemas/ChannelProductVariantDescription'
      required:
        - product_id
        - variant_id
        - state
      description: Details about a variant of the product for this channel listing.
      title: ChannelProductVariantPartial
    ChannelProductMultipleVariants:
      type: array
      items:
        $ref: '#/components/schemas/ChannelProductVariantPartial'
      title: ChannelProductMultipleVariants
    UpsertListingWithoutListingIdReq:
      type: object
      properties:
        product_id:
          $ref: '#/components/schemas/ProductId'
        external_id:
          $ref: '#/components/schemas/ExternalId'
        state:
          $ref: '#/components/schemas/ListingState'
        name:
          $ref: '#/components/schemas/ChannelProductName'
        description:
          $ref: '#/components/schemas/ChannelProductDescription'
        variants:
          $ref: '#/components/schemas/ChannelProductMultipleVariants'
      required:
        - product_id
        - state
        - variants
      description: Details about assigning a product to a specific channel.
      title: UpsertListingWithoutListingIdReq
    CreateMultipleListingsReq:
      type: array
      items:
        $ref: '#/components/schemas/UpsertListingWithoutListingIdReq'
      title: CreateMultipleListingsReq
    Listings_createChannelListings_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Listing'
        meta:
          $ref: '#/components/schemas/MetaWithPartialPagination'
      title: Listings_createChannelListings_Response_200
    UpsertListingWithListingIdReq:
      type: object
      properties:
        listing_id:
          $ref: '#/components/schemas/ListingId'
        product_id:
          $ref: '#/components/schemas/ProductId'
        external_id:
          $ref: '#/components/schemas/ExternalId'
        state:
          $ref: '#/components/schemas/ListingState'
        name:
          $ref: '#/components/schemas/ChannelProductName'
        description:
          $ref: '#/components/schemas/ChannelProductDescription'
        variants:
          $ref: '#/components/schemas/ChannelProductMultipleVariants'
      required:
        - listing_id
        - product_id
        - state
        - variants
      description: Details about assigning a product to a specific channel.
      title: UpsertListingWithListingIdReq
    UpdateMultipleListingsReq:
      type: array
      items:
        $ref: '#/components/schemas/UpsertListingWithListingIdReq'
      title: UpdateMultipleListingsReq
    Listings_updateChannelListings_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Listing'
        meta:
          $ref: '#/components/schemas/MetaWithPartialPagination'
      title: Listings_updateChannelListings_Response_200
    Listings_getChannelListing_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Listing'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Listings_getChannelListing_Response_200
    BigCommerceProtectedAppSectionsItems:
      type: string
      enum:
        - overview
        - storefront_settings
        - localization
        - carousel
        - script_manager
        - currencies
        - payments
        - checkout
        - domains
        - notifications
        - social
        - pages
        - data_solutions
      title: BigCommerceProtectedAppSectionsItems
    BigCommerceProtectedAppSections:
      type: array
      items:
        $ref: '#/components/schemas/BigCommerceProtectedAppSectionsItems'
      description: >-
        List of channel-specific control panel menu navigation items and corresponding settings pages an app developer
        can choose to enable for the subject channel. Protected settings override any settings set in those UI sections
        at the storewide level. Learn more in the [Building Storefront
        Channels](/developer/docs/integrations/channels/guide/building-storefront-channels#protected-ui-sections)
        tutorial.
      title: BigCommerceProtectedAppSections
    CustomAppSectionsItems:
      type: object
      properties:
        title:
          type: string
          description: Text displayed to the merchant.
        query_path:
          type: string
          description: Value used in the `section` query param.
      title: CustomAppSectionsItems
    CustomAppSections:
      type: array
      items:
        $ref: '#/components/schemas/CustomAppSectionsItems'
      title: CustomAppSections
    ChannelsChannelIdChannelMenusGetResponsesContentApplicationJsonSchemaData:
      type: object
      properties:
        bigcommerce_protected_app_sections:
          $ref: '#/components/schemas/BigCommerceProtectedAppSections'
        custom_app_sections:
          $ref: '#/components/schemas/CustomAppSections'
      title: ChannelsChannelIdChannelMenusGetResponsesContentApplicationJsonSchemaData
    Menus_getChannelMenus_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ChannelsChannelIdChannelMenusGetResponsesContentApplicationJsonSchemaData'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Menus_getChannelMenus_Response_200
    channel_menus_Post:
      type: object
      properties:
        bigcommerce_protected_app_sections:
          $ref: '#/components/schemas/BigCommerceProtectedAppSections'
        custom_app_sections:
          $ref: '#/components/schemas/CustomAppSections'
      title: channel_menus_Post
    ChannelsChannelIdChannelMenusPostResponsesContentApplicationJsonSchemaData:
      type: object
      properties:
        bigcommerce_protected_app_sections:
          $ref: '#/components/schemas/BigCommerceProtectedAppSections'
        custom_app_sections:
          $ref: '#/components/schemas/CustomAppSections'
      title: ChannelsChannelIdChannelMenusPostResponsesContentApplicationJsonSchemaData
    Menus_createChannelMenus_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ChannelsChannelIdChannelMenusPostResponsesContentApplicationJsonSchemaData'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Menus_createChannelMenus_Response_200
    Menus_deleteChannelMenus_Response_200:
      type: object
      properties:
        data:
          type: integer
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Menus_deleteChannelMenus_Response_200
    ChannelsChannelIdMetafieldsGetParametersDirection:
      type: string
      enum:
        - asc
        - desc
      title: ChannelsChannelIdMetafieldsGetParametersDirection
    ChannelsChannelIdMetafieldsGetResponsesContentApplicationJsonSchemaPermissionSet:
      type: string
      enum:
        - app_only
        - read
        - write
        - read_and_sf_access
        - write_and_sf_access
      description: |-
        Determines the visibility and writeability of the field by other API consumers.

        |Value|Description
        |-|-|
        |`app_only`|Private to the app that owns the field|
        |`read`|Visible to other API consumers|
        |`write`|Open for reading and writing by other API consumers|
        |`read_and_sf_access`|Visible to other API consumers, including on storefront|
        |`write_and_sf_access`|Open for reading and writing by other API consumers, including on storefront|
      title: ChannelsChannelIdMetafieldsGetResponsesContentApplicationJsonSchemaPermissionSet
    ChannelsChannelIdMetafieldsGetResponsesContentApplicationJsonSchemaResourceType:
      type: string
      enum:
        - category
        - brand
        - product
        - variant
      description: |
        The type of resource with which the metafield is associated.
      title: ChannelsChannelIdMetafieldsGetResponsesContentApplicationJsonSchemaResourceType
    Metafields_getChannelMetafields_Response_200:
      type: object
      properties:
        id:
          type: integer
          description: Unique ID of the *Metafield*.
        permission_set:
          $ref: '#/components/schemas/ChannelsChannelIdMetafieldsGetResponsesContentApplicationJsonSchemaPermissionSet'
          description: |-
            Determines the visibility and writeability of the field by other API consumers.

            |Value|Description
            |-|-|
            |`app_only`|Private to the app that owns the field|
            |`read`|Visible to other API consumers|
            |`write`|Open for reading and writing by other API consumers|
            |`read_and_sf_access`|Visible to other API consumers, including on storefront|
            |`write_and_sf_access`|Open for reading and writing by other API consumers, including on storefront|
        namespace:
          type: string
          description: Namespace for the metafield, for organizational purposes.
        key:
          type: string
          description: |
            The name of the field, for example: `location_id`, `color`. 
        value:
          type: string
          description: |
            The value of the field.
        description:
          type: string
          description: |
            Description for the metafields.
        resource_type:
          $ref: '#/components/schemas/ChannelsChannelIdMetafieldsGetResponsesContentApplicationJsonSchemaResourceType'
          description: |
            The type of resource with which the metafield is associated.
        resource_id:
          type: integer
          description: |
            The ID for the resource with which the metafield is associated.
        date_created:
          type: string
          format: date-time
          description: |
            Date and time of the metafieldʼs creation. Read-Only.
        date_modified:
          type: string
          format: date-time
          description: |
            Date and time when the metafield was last updated. Read-Only.
      description: >-
        Metafield for products, categories, variants, and brands. The max number of metafields allowed on each product,
        category, variant, or brand is 250. For more information, see [Platform
        Limits](https://support.bigcommerce.com/s/article/Platform-Limits) in the Help Center.
      title: Metafields_getChannelMetafields_Response_200
    MetafieldPostPermissionSet:
      type: string
      enum:
        - app_only
        - read
        - write
        - read_and_sf_access
        - write_and_sf_access
      description: |-
        Determines the visibility and writeability of the field by other API consumers.

        |Value|Description
        |-|-|
        |`app_only`|Private to the app that owns the field|
        |`read`|Visible to other API consumers|
        |`write`|Open for reading and writing by other API consumers|
        |`read_and_sf_access`|Visible to other API consumers, including on storefront|
        |`write_and_sf_access`|Open for reading and writing by other API consumers, including on storefront|
      title: MetafieldPostPermissionSet
    metafield_Post:
      type: object
      properties:
        namespace:
          type: string
          description: Namespace for the metafield, for organizational purposes. This is set by the developer.
        key:
          type: string
          description: |
            The name of the field.
        value:
          type: string
          description: |
            The value of the field.
        permission_set:
          $ref: '#/components/schemas/MetafieldPostPermissionSet'
          description: |-
            Determines the visibility and writeability of the field by other API consumers.

            |Value|Description
            |-|-|
            |`app_only`|Private to the app that owns the field|
            |`read`|Visible to other API consumers|
            |`write`|Open for reading and writing by other API consumers|
            |`read_and_sf_access`|Visible to other API consumers, including on storefront|
            |`write_and_sf_access`|Open for reading and writing by other API consumers, including on storefront|
        description:
          type: string
          description: |
            Description for the metafield.
      required:
        - namespace
        - key
        - value
        - permission_set
      description: >-
        Metafield for products, categories, variants, and brands. The max number of metafields allowed on each product,
        category, variant, or brand is 250. For more information, see [Platform
        Limits](https://support.bigcommerce.com/s/article/Platform-Limits) in the Help Center.
      title: metafield_Post
    ChannelsChannelIdMetafieldsPostResponsesContentApplicationJsonSchemaPermissionSet:
      type: string
      enum:
        - app_only
        - read
        - write
        - read_and_sf_access
        - write_and_sf_access
      description: |-
        Determines the visibility and writeability of the field by other API consumers.

        |Value|Description
        |-|-|
        |`app_only`|Private to the app that owns the field|
        |`read`|Visible to other API consumers|
        |`write`|Open for reading and writing by other API consumers|
        |`read_and_sf_access`|Visible to other API consumers, including on storefront|
        |`write_and_sf_access`|Open for reading and writing by other API consumers, including on storefront|
      title: ChannelsChannelIdMetafieldsPostResponsesContentApplicationJsonSchemaPermissionSet
    ChannelsChannelIdMetafieldsPostResponsesContentApplicationJsonSchemaResourceType:
      type: string
      enum:
        - category
        - brand
        - product
        - variant
      description: |
        The type of resource with which the metafield is associated.
      title: ChannelsChannelIdMetafieldsPostResponsesContentApplicationJsonSchemaResourceType
    Metafields_createChannelMetafield_Response_200:
      type: object
      properties:
        id:
          type: integer
          description: Unique ID of the *Metafield*.
        permission_set:
          $ref: '#/components/schemas/ChannelsChannelIdMetafieldsPostResponsesContentApplicationJsonSchemaPermissionSet'
          description: |-
            Determines the visibility and writeability of the field by other API consumers.

            |Value|Description
            |-|-|
            |`app_only`|Private to the app that owns the field|
            |`read`|Visible to other API consumers|
            |`write`|Open for reading and writing by other API consumers|
            |`read_and_sf_access`|Visible to other API consumers, including on storefront|
            |`write_and_sf_access`|Open for reading and writing by other API consumers, including on storefront|
        namespace:
          type: string
          description: Namespace for the metafield, for organizational purposes.
        key:
          type: string
          description: |
            The name of the field, for example: `location_id`, `color`. 
        value:
          type: string
          description: |
            The value of the field.
        description:
          type: string
          description: |
            Description for the metafields.
        resource_type:
          $ref: '#/components/schemas/ChannelsChannelIdMetafieldsPostResponsesContentApplicationJsonSchemaResourceType'
          description: |
            The type of resource with which the metafield is associated.
        resource_id:
          type: integer
          description: |
            The ID for the resource with which the metafield is associated.
        date_created:
          type: string
          format: date-time
          description: |
            Date and time of the metafieldʼs creation. Read-Only.
        date_modified:
          type: string
          format: date-time
          description: |
            Date and time when the metafield was last updated. Read-Only.
      description: >-
        Metafield for products, categories, variants, and brands. The max number of metafields allowed on each product,
        category, variant, or brand is 250. For more information, see [Platform
        Limits](https://support.bigcommerce.com/s/article/Platform-Limits) in the Help Center.
      title: Metafields_createChannelMetafield_Response_200
    CreateChannelMetafieldRequestBadRequestError:
      type: object
      properties:
        status:
          type: number
          format: double
        title:
          type: string
        type:
          type: string
        detail:
          type: string
      title: CreateChannelMetafieldRequestBadRequestError
    ChannelsChannelIdMetafieldsMetafieldIdGetResponsesContentApplicationJsonSchemaPermissionSet:
      type: string
      enum:
        - app_only
        - read
        - write
        - read_and_sf_access
        - write_and_sf_access
      description: |-
        Determines the visibility and writeability of the field by other API consumers.

        |Value|Description
        |-|-|
        |`app_only`|Private to the app that owns the field|
        |`read`|Visible to other API consumers|
        |`write`|Open for reading and writing by other API consumers|
        |`read_and_sf_access`|Visible to other API consumers, including on storefront|
        |`write_and_sf_access`|Open for reading and writing by other API consumers, including on storefront|
      title: ChannelsChannelIdMetafieldsMetafieldIdGetResponsesContentApplicationJsonSchemaPermissionSet
    ChannelsChannelIdMetafieldsMetafieldIdGetResponsesContentApplicationJsonSchemaResourceType:
      type: string
      enum:
        - category
        - brand
        - product
        - variant
      description: |
        The type of resource with which the metafield is associated.
      title: ChannelsChannelIdMetafieldsMetafieldIdGetResponsesContentApplicationJsonSchemaResourceType
    Metafields_getChannelMetafield_Response_200:
      type: object
      properties:
        id:
          type: integer
          description: Unique ID of the *Metafield*.
        permission_set:
          $ref: >-
            #/components/schemas/ChannelsChannelIdMetafieldsMetafieldIdGetResponsesContentApplicationJsonSchemaPermissionSet
          description: |-
            Determines the visibility and writeability of the field by other API consumers.

            |Value|Description
            |-|-|
            |`app_only`|Private to the app that owns the field|
            |`read`|Visible to other API consumers|
            |`write`|Open for reading and writing by other API consumers|
            |`read_and_sf_access`|Visible to other API consumers, including on storefront|
            |`write_and_sf_access`|Open for reading and writing by other API consumers, including on storefront|
        namespace:
          type: string
          description: Namespace for the metafield, for organizational purposes.
        key:
          type: string
          description: |
            The name of the field, for example: `location_id`, `color`. 
        value:
          type: string
          description: |
            The value of the field.
        description:
          type: string
          description: |
            Description for the metafields.
        resource_type:
          $ref: >-
            #/components/schemas/ChannelsChannelIdMetafieldsMetafieldIdGetResponsesContentApplicationJsonSchemaResourceType
          description: |
            The type of resource with which the metafield is associated.
        resource_id:
          type: integer
          description: |
            The ID for the resource with which the metafield is associated.
        date_created:
          type: string
          format: date-time
          description: |
            Date and time of the metafieldʼs creation. Read-Only.
        date_modified:
          type: string
          format: date-time
          description: |
            Date and time when the metafield was last updated. Read-Only.
      description: >-
        Metafield for products, categories, variants, and brands. The max number of metafields allowed on each product,
        category, variant, or brand is 250. For more information, see [Platform
        Limits](https://support.bigcommerce.com/s/article/Platform-Limits) in the Help Center.
      title: Metafields_getChannelMetafield_Response_200
    NotFound:
      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: NotFound
    MetafieldPutPermissionSet:
      type: string
      enum:
        - app_only
        - read
        - write
        - read_and_sf_access
        - write_and_sf_access
      description: |-
        Determines the visibility and writeability of the field by other API consumers.

        |Value|Description
        |-|-|
        |`app_only`|Private to the app that owns the field|
        |`read`|Visible to other API consumers|
        |`write`|Open for reading and writing by other API consumers|
        |`read_and_sf_access`|Visible to other API consumers, including on storefront|
        |`write_and_sf_access`|Open for reading and writing by other API consumers, including on storefront|
      title: MetafieldPutPermissionSet
    metafield_Put:
      type: object
      properties:
        namespace:
          type: string
          description: Namespace for the metafield, for organizational purposes.
        key:
          type: string
          description: |
            The name of the field.
        value:
          type: string
          description: |
            The value of the field.
        permission_set:
          $ref: '#/components/schemas/MetafieldPutPermissionSet'
          description: |-
            Determines the visibility and writeability of the field by other API consumers.

            |Value|Description
            |-|-|
            |`app_only`|Private to the app that owns the field|
            |`read`|Visible to other API consumers|
            |`write`|Open for reading and writing by other API consumers|
            |`read_and_sf_access`|Visible to other API consumers, including on storefront|
            |`write_and_sf_access`|Open for reading and writing by other API consumers, including on storefront|
        description:
          type: string
          description: |
            Description for the metafield.
      description: >-
        Metafield for products, categories, variants, and brands. The max number of metafields allowed on each product,
        category, variant, or brand 250. For more information, see [Platform
        Limits](https://support.bigcommerce.com/s/article/Platform-Limits) in the Help Center.
      title: metafield_Put
    ChannelsChannelIdMetafieldsMetafieldIdPutResponsesContentApplicationJsonSchemaPermissionSet:
      type: string
      enum:
        - app_only
        - read
        - write
        - read_and_sf_access
        - write_and_sf_access
      description: |-
        Determines the visibility and writeability of the field by other API consumers.

        |Value|Description
        |-|-|
        |`app_only`|Private to the app that owns the field|
        |`read`|Visible to other API consumers|
        |`write`|Open for reading and writing by other API consumers|
        |`read_and_sf_access`|Visible to other API consumers, including on storefront|
        |`write_and_sf_access`|Open for reading and writing by other API consumers, including on storefront|
      title: ChannelsChannelIdMetafieldsMetafieldIdPutResponsesContentApplicationJsonSchemaPermissionSet
    ChannelsChannelIdMetafieldsMetafieldIdPutResponsesContentApplicationJsonSchemaResourceType:
      type: string
      enum:
        - category
        - brand
        - product
        - variant
      description: |
        The type of resource with which the metafield is associated.
      title: ChannelsChannelIdMetafieldsMetafieldIdPutResponsesContentApplicationJsonSchemaResourceType
    Metafields_updateChannelMetafield_Response_200:
      type: object
      properties:
        id:
          type: integer
          description: Unique ID of the *Metafield*.
        permission_set:
          $ref: >-
            #/components/schemas/ChannelsChannelIdMetafieldsMetafieldIdPutResponsesContentApplicationJsonSchemaPermissionSet
          description: |-
            Determines the visibility and writeability of the field by other API consumers.

            |Value|Description
            |-|-|
            |`app_only`|Private to the app that owns the field|
            |`read`|Visible to other API consumers|
            |`write`|Open for reading and writing by other API consumers|
            |`read_and_sf_access`|Visible to other API consumers, including on storefront|
            |`write_and_sf_access`|Open for reading and writing by other API consumers, including on storefront|
        namespace:
          type: string
          description: Namespace for the metafield, for organizational purposes.
        key:
          type: string
          description: |
            The name of the field, for example: `location_id`, `color`. 
        value:
          type: string
          description: |
            The value of the field.
        description:
          type: string
          description: |
            Description for the metafields.
        resource_type:
          $ref: >-
            #/components/schemas/ChannelsChannelIdMetafieldsMetafieldIdPutResponsesContentApplicationJsonSchemaResourceType
          description: |
            The type of resource with which the metafield is associated.
        resource_id:
          type: integer
          description: |
            The ID for the resource with which the metafield is associated.
        date_created:
          type: string
          format: date-time
          description: |
            Date and time of the metafieldʼs creation. Read-Only.
        date_modified:
          type: string
          format: date-time
          description: |
            Date and time when the metafield was last updated. Read-Only.
      description: >-
        Metafield for products, categories, variants, and brands. The max number of metafields allowed on each product,
        category, variant, or brand is 250. For more information, see [Platform
        Limits](https://support.bigcommerce.com/s/article/Platform-Limits) in the Help Center.
      title: Metafields_updateChannelMetafield_Response_200
    UpdateChannelMetafieldRequestBadRequestError:
      type: object
      properties:
        status:
          type: number
          format: double
        title:
          type: string
        type:
          type: string
        detail:
          type: string
      title: UpdateChannelMetafieldRequestBadRequestError
    SiteSslStatus:
      type: string
      enum:
        - dedicated
        - shared
      description: Indicates if a private/dedicated SSL is installed on this site, or if itʼs using shared SSL.
      title: SiteSslStatus
    UrlType:
      type: string
      enum:
        - checkout
        - primary
        - canonical
      description: URL type
      title: UrlType
    Url:
      type: object
      properties:
        url:
          type: string
          description: URL of site
        type:
          $ref: '#/components/schemas/UrlType'
          description: URL type
        created_at:
          type: string
          format: date-time
          description: >-
            The date-time that this URL was created, formatted as an [RFC-3339](https://www.ietf.org/rfc/rfc3339.txt)
            string.
        updated_at:
          type: string
          format: date-time
          description: >-
            The date-time that this URL was last updated, formatted as an
            [RFC-3339](https://www.ietf.org/rfc/rfc3339.txt) string.
      title: Url
    Site:
      type: object
      properties:
        id:
          type: integer
          description: The ID of the site.
        url:
          type: string
          description: >-
            The fully qualified URL (including host and scheme) where this site is hosted. All URLs generated for this
            site will be appended to this.
        channel_id:
          type: integer
          description: >-
            The channel to which this site is attached. Each site belongs to a single channel, and each channel can have
            either zero or more sites.
        created_at:
          type: string
          format: date-time
          description: >-
            The date-time that this site was created, formatted as an [RFC-3339](https://www.ietf.org/rfc/rfc3339.txt)
            string.
        updated_at:
          type: string
          format: date-time
          description: >-
            The date-time that this site was last updated, formatted as an
            [RFC-3339](https://www.ietf.org/rfc/rfc3339.txt) string.
        ssl_status:
          $ref: '#/components/schemas/SiteSslStatus'
          description: Indicates if a private/dedicated SSL is installed on this site, or if itʼs using shared SSL.
        urls:
          type: array
          items:
            $ref: '#/components/schemas/Url'
          description: All URLs that belong to the site, including `primary`, `canonical`, and `checkout` URLs.
        is_checkout_url_customized:
          type: boolean
          description: >-
            Indicates whether the channel uses a custom checkout domain. When `false`, the checkout domain falls back to
            the default channel’s primary URL.
      title: Site
    Site_getChannelSite_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Site'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Site_getChannelSite_Response_200
    site_Post:
      type: object
      properties:
        url:
          type: string
          description: >-
            The Fully Qualified URL (including host and scheme) where this site is hosted. All URLs generated for this
            site will be appended to this.
        channel_id:
          type: integer
          description: >-
            The channel this site is attached to. Each site belongs to a single channel, and each channel can have
            either zero or one sites.
      title: site_Post
    Site_createChannelSite_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Site'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Site_createChannelSite_Response_200
    site_Put:
      type: object
      properties:
        url:
          type: string
          description: >-
            The Fully Qualified URL (including host and scheme) where this site is hosted. All URLs generated for this
            site will be appended to this.
      title: site_Put
    Site_updateChannelSite_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Site'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Site_updateChannelSite_Response_200
    Site_deleteChannelSite_Response_200:
      type: object
      properties: {}
      title: Site_deleteChannelSite_Response_200
    PutCheckoutUrl:
      type: object
      properties:
        url:
          type: string
          format: uri
          description: >-
            Unique site checkout URL. It must be valid and a sub-domain of the primary channel URL. Note: The API will
            change all URLs using the HTTP protocol to HTTPS.
      title: PutCheckoutUrl
    ChannelsChannelIdSiteCheckoutUrlPutResponsesContentApplicationJsonSchemaErrors:
      type: object
      properties: {}
      title: ChannelsChannelIdSiteCheckoutUrlPutResponsesContentApplicationJsonSchemaErrors
    UpdateCheckoutUrlRequestUnprocessableEntityError:
      type: object
      properties:
        status:
          type: integer
          default: 422
        title:
          type: string
        type:
          type: string
          default: /developer/api-reference/rest/overview#rest-http-status-codes
        errors:
          $ref: '#/components/schemas/ChannelsChannelIdSiteCheckoutUrlPutResponsesContentApplicationJsonSchemaErrors'
      title: UpdateCheckoutUrlRequestUnprocessableEntityError
    ChannelsChannelIdSiteCheckoutUrlDeleteResponsesContentApplicationJsonSchemaData:
      type: object
      properties: {}
      title: ChannelsChannelIdSiteCheckoutUrlDeleteResponsesContentApplicationJsonSchemaData
    Site Checkout URL_deleteCheckoutUrl_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ChannelsChannelIdSiteCheckoutUrlDeleteResponsesContentApplicationJsonSchemaData'
        meta:
          $ref: '#/components/schemas/EmptyMeta'
      title: Site Checkout URL_deleteCheckoutUrl_Response_200
  securitySchemes:
    X-Auth-Token:
      type: apiKey
      in: header
      name: X-Auth-Token
      description: >-
        ### OAuth scopes


        | UI Name | Permission | Parameter |

        |:--------|:-----------|:----------|

        |  Channel Listings | modify | `store_channel_listings` |

        |  Channel Listings | read-only | `store_channel_listings_read_only` |

        |  Channel Settings | modify | `store_channel_settings` |

        |  Channel Settings | read-only | `store_channel_settings_read_only` |

        |  Sites & Routes | modify | `store_sites` |

        |  Sites & Routes | read-only | `store_sites_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).
