openapi: 3.1.0
info:
  title: 'Admin Management: Inventory'
  version: 1.0.0
paths:
  /stores/{store_hash}/v3/inventory/adjustments/absolute:
    put:
      operationId: put-absolute-adjustment
      summary: Absolute Adjustment
      description: >
        Override the existing inventory levels for an inventory item at a location. Use absolute adjustments as the
        default method for updating inventory. This endpoint batches requests, making them more resource friendly than
        the [Catalog API](/developer/api-reference/rest/admin/catalog/products/update-products). Absolute adjustments
        have lower complexity than [relative
        adjustments](/developer/api-reference/rest/admin/management/inventory/adjustments/post-relative-adjustment),
        which synchronize with orders.


        **Limits**

        * For maximum inventory levels, see [Inventory
        adjustments](/developer/docs/admin/catalog-and-inventory/inventory-adjustments#inventory-adjustments). 

        * Limit of 2000 items for payload length, see [Optimizing
        performance](/developer/docs/admin/catalog-and-inventory/inventory-adjustments#optimizing-performance) for more
        information.
      tags:
        - adjustments
      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 |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: Request has been successfully processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SimpleTransactionResponse'
        '422':
          description: Incorrect entity.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdjustmentsAbsoluteRequest'
  /stores/{store_hash}/v3/inventory/adjustments/relative:
    post:
      operationId: post-relative-adjustment
      summary: Relative Adjustment
      description: >
        Add or subtract inventory for an inventory item at a location. Use this endpoint only when you do not know
        absolute quantities. For example, making order-related inventory changes through a third-party may require
        relative adjustments. Otherwise, use the [Absolute
        adjustment](/developer/api-reference/rest/admin/management/inventory/adjustments/put-absolute-adjustment)
        endpoint for updating inventory.


        **Limits**

        * For maximum inventory levels, see [Inventory
        adjustments](/developer/docs/admin/catalog-and-inventory/inventory-adjustments#inventory-adjustments). 

        * Limit of 2000 items for payload length, see [Optimizing
        performance](/developer/docs/admin/catalog-and-inventory/inventory-adjustments#optimizing-performance) for more
        information.
      tags:
        - adjustments
      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 |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: Request has been successfully processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SimpleTransactionResponse'
        '422':
          description: >
            Incorrect entity. The adjustment was not valid. This is the result of missing required fields or invalid
            data. See the response for more details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdjustmentsRelativeRequest'
  /stores/{store_hash}/v3/inventory/items:
    get:
      operationId: get-inventory-items
      summary: List Inventory at Locations
      description: |
        Return a list of inventory and inventory settings for all items in all locations.

        **Limits**
        * Limit of 1000 items for payload length.
      tags:
        - items
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: sku:in
          in: query
          description: List of `sku` separated by comma.
          required: false
          schema:
            type: string
        - name: variant_id:in
          in: query
          description: List of `variant_id` separated by comma.
          required: false
          schema:
            type: integer
        - name: product_id:in
          in: query
          description: List of `product_id` separated by comma.
          required: false
          schema:
            type: integer
        - name: location_id:in
          in: query
          description: Comma separated list of `location_id`.
          required: false
          schema:
            type: integer
        - name: location_code:in
          in: query
          description: Comma separated list of `location_code`.
          required: false
          schema:
            type: string
        - name: page
          in: query
          description: Specifies the page number in a limited (paginated) list.
          required: false
          schema:
            type: integer
        - name: limit
          in: query
          description: Controls the number of items per page in a limited (paginated) list.
          required: false
          schema:
            type: integer
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: Request has been successfully processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Items_get-inventory-items_Response_200'
  /stores/{store_hash}/v3/inventory/locations/{location_id}/items:
    get:
      operationId: get-location-inventory-items
      summary: Get Inventory at Location
      description: |
        Return a list of inventory and inventory settings for all items in a location.

        **Limits**
        * Limit of 1000 items for payload length.
      tags:
        - items
      parameters:
        - name: location_id
          in: path
          description: Unique identifier for a location.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: variant_id:in
          in: query
          description: List of `variant_id` separated by comma.
          required: false
          schema:
            type: integer
        - name: product_id:in
          in: query
          description: List of `product_id` separated by comma.
          required: false
          schema:
            type: integer
        - name: sku:in
          in: query
          description: List of `sku` separated by comma.
          required: false
          schema:
            type: string
        - name: page
          in: query
          description: Specifies the page number in a limited (paginated) list.
          required: false
          schema:
            type: integer
        - name: limit
          in: query
          description: Controls the number of items per page in a limited (paginated) list.
          required: false
          schema:
            type: integer
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: Request has been successfully processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Items_get-location-inventory-items_Response_200'
        '404':
          description: Request has been rejected due to resource not being found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    put:
      operationId: put-location-inventory-items
      summary: Update Inventory Settings for Location
      description: |

        Update inventory settings for items at a location.

        **Limits**
        * Limit of 2000 items for payload length.
      tags:
        - items
      parameters:
        - name: location_id
          in: path
          description: Unique identifier for a location.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: Request has been successfully processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SimpleTransactionResponse'
        '422':
          description: >
            Incorrect entity. Item was not valid due to missing required fields or invalid data. See the response for
            more details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LocationItemsSettingsRequest'
  /stores/{store_hash}/v3/inventory/locations:
    post:
      operationId: createLocations
      summary: Create Locations
      description: |
        Create new locations.

        **Limits**
        * Limit of 50 concurrent requests.
        * Limit of 100 active locations.
      tags:
        - locations
      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 |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: Locations have been successfully created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SimpleTransactionResponse'
        '422':
          description: >
            Incorrect entity. Locations were not valid. This results from missing required fields, invalid data, or
            partial error. See the response for more details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LocationsCreateRequest'
    get:
      operationId: getLocations
      summary: List Locations
      description: |
        List locations. You can use optional filter parameters.

        **Limits**
        * Limit of 50 concurrent requests.
        * Limit of 1000 items for payload length.
      tags:
        - locations
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: location_id:in
          in: query
          description: Comma separated list of `location_id`.
          required: false
          schema:
            type: integer
        - name: location_code:in
          in: query
          description: Comma separated list of `location_code`.
          required: false
          schema:
            type: string
        - name: type_id:in
          in: query
          description: Comma separated list of locations type codes.
          required: false
          schema:
            type: string
        - name: managed_by_external_source
          in: query
          description: Filter whether an external source manages location inventory levels.
          required: false
          schema:
            type: boolean
        - name: is_active
          in: query
          description: Filter by active locations flag; return both if not specified.
          required: false
          schema:
            type: boolean
        - name: storefront_visibility
          in: query
          description: Filter by storefront_visibility flag; return both if not specified.
          required: false
          schema:
            type: boolean
        - 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: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: The request has been successfully processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Locations_getLocations_Response_200'
    put:
      operationId: updateLocations
      summary: Update Locations
      description: |

        Update existing locations.

        **Limits**
        * Limit of 50 concurrent requests.
        * Limit of 100 active locations.
      tags:
        - locations
      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 |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: The request has been successfully processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SimpleTransactionResponse'
        '422':
          description: >
            Incorrect entity. Locations were not valid. This results from missing required fields, invalid data, or
            partial error. See the response for more details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LocationsUpdateRequest'
    delete:
      operationId: deleteLocations
      summary: Delete Locations
      description: >
        Delete existing locations. 


        You cannot delete locations that are shipping origins or have open order transactions. The location with a
        `location_id` of 1 is the storeʼs default shipping origin, and you cannot change the shipping origin.


        You can delete locations assigned to pickup methods.


        > Warning:

        >

        > Deleting locations that have inventory also deletes its stock.
      tags:
        - locations
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: location_id:in
          in: query
          description: Comma separated list of `location_id`.
          required: true
          schema:
            type: integer
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: Request has been successfully processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SimpleTransactionResponse'
        '404':
          description: Request has been rejected due to resource not being found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: >
            Incorrect entity. The location is not valid. This error is the result of missing required fields or  invalid
            data. See the response for more details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /stores/{store_hash}/v3/inventory/locations/{location_id}/metafields:
    get:
      operationId: getLocationMetafields
      summary: List Metafields
      description: Retrieve metafields for a location.
      tags:
        - metafields
      parameters:
        - name: location_id
          in: path
          description: Unique identifier for a location.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: The request has been successfully processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Metafields_getLocationMetafields_Response_200'
    post:
      operationId: createLocationMetafield
      summary: Create Metafield
      description: Create a location metafield.
      tags:
        - metafields
      parameters:
        - name: location_id
          in: path
          description: Unique identifier for a location.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: The request has been successfully processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Metafields_createLocationMetafield_Response_200'
        '400':
          description: Bad Request. Metafield is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateLocationMetafieldRequestBadRequestError'
        '409':
          description: >
            The `Metafield` conflicted 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/CreateLocationMetafieldRequestConflictError'
        '422':
          description: >
            The `Metafield` was not valid. This is the result of missing required fields or invalid data. See the
            response for more details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MetafieldBase'
  /stores/{store_hash}/v3/inventory/locations/{location_id}/metafields/{metafield_id}:
    get:
      operationId: getLocationMetafield
      summary: Get Metafield
      description: Get a metafield by location.
      tags:
        - metafields
      parameters:
        - name: location_id
          in: path
          description: Unique identifier for a location.
          required: true
          schema:
            type: integer
        - name: metafield_id
          in: path
          description: Unique identifier for a metafield.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: The request has been successfully processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Metafields_getLocationMetafield_Response_200'
        '404':
          description: The resource was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    put:
      operationId: updateLocationMetafield
      summary: Update Metafield
      description: Update a metafield.
      tags:
        - metafields
      parameters:
        - name: location_id
          in: path
          description: Unique identifier for a location.
          required: true
          schema:
            type: integer
        - name: metafield_id
          in: path
          description: Unique identifier for a metafield.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: The request has been successfully processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Metafields_updateLocationMetafield_Response_200'
        '400':
          description: Bad Request. Metafield is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateLocationMetafieldRequestBadRequestError'
        '404':
          description: The resource was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MetafieldBase'
    delete:
      operationId: deleteLocationMetafield
      summary: Delete Metafield
      description: Delete a metafield.
      tags:
        - metafields
      parameters:
        - name: location_id
          in: path
          description: Unique identifier for a location.
          required: true
          schema:
            type: integer
        - name: metafield_id
          in: path
          description: Unique identifier for a metafield.
          required: true
          schema:
            type: integer
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: The resource was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /stores/{store_hash}/v3/inventory/locations/metafields:
    get:
      operationId: getLocationsMetafields
      summary: List Metafields
      description: Get all location 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 namespaces.
          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/InventoryLocationsMetafieldsGetParametersDirection'
        - 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/InventoryLocationsMetafieldsGetParametersIncludeFieldsSchemaItems'
        - name: date_modified:min
          in: query
          description: >
            'Query parameter that lets you filter by the minimum date modified, for example, `2024-05-14T09:34:00`,
            `2024-05-14T09:34:00` or `2024-05-14`. Returns metafields modified after this date.' 
          required: false
          schema:
            type: string
        - name: date_modified:max
          in: query
          description: >
            'Query parameter that lets you filter by the maximum date modified, for example, `2024-05-14T09:34:00`,
            `2024-05-14T09:34:00` or `2024-05-14`. Returns metafields modified before this date.' 
          required: false
          schema:
            type: string
        - name: date_created:min
          in: query
          description: >
            'Query parameter that lets you filter by the minimum date created, for example, `2024-05-14T09:34:00`,
            `2024-05-14T09:34:00` or `2024-05-14`. Returns metafields created after this date.'
          required: false
          schema:
            type: string
        - name: date_created:max
          in: query
          description: >
            'Query parameter that lets you filter by the maximum date created, for example, `2024-05-14T09:34:00`,
            `2024-05-14T09:34:00` or `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 |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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: createLocationsMetafields
      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 |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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. # TODO
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetaFieldCollectionResponse_POST_PUT'
        '400':
          description: Bad Request. Metafield is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateLocationsMetafieldsRequestBadRequestError'
        '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/InventoryLocationsMetafieldsPostRequestBodyContentApplicationJsonSchemaItems'
    put:
      operationId: updateLocationsMetafields
      summary: Update 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 |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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. Metafield is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateLocationsMetafieldsRequestBadRequestError'
        '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/InventoryLocationsMetafieldsPutRequestBodyContentApplicationJsonSchemaItems'
    delete:
      operationId: deleteLocationsMetafields
      summary: Delete Multiple Metafields
      description: Delete all location 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 |

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

            |  Store Inventory | read-only | `store_inventory_read_only` |

            |  Store Inventory | modify | `store_inventory` |


            ### Authentication header


            | Header | Argument | Description |

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

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API
            Accounts and OAuth Scopes](/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).


            For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
            Scopes](/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'
        '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
servers:
  - url: https://api.bigcommerce.com
    description: https://api.bigcommerce.com
components:
  schemas:
    AdjustmentsAbsoluteRequestItemsItems0:
      type: object
      properties:
        location_id:
          type: integer
          description: ID of location. This is empty in the case of the default allotment.
        sku:
          type: string
          description: '"Stock keeping unit" identifier of an item.'
        quantity:
          type: integer
          description: Amount of items that will be moved.
      required:
        - location_id
        - sku
        - quantity
      title: AdjustmentsAbsoluteRequestItemsItems0
    AdjustmentsAbsoluteRequestItemsItems1:
      type: object
      properties:
        location_id:
          type: integer
          description: ID of location. This is empty in the case of the default allotment.
        variant_id:
          type: integer
          description: variant_id identifier of item.
        quantity:
          type: integer
          description: Amount of items that will be moved.
      required:
        - location_id
        - variant_id
        - quantity
      title: AdjustmentsAbsoluteRequestItemsItems1
    AdjustmentsAbsoluteRequestItemsItems2:
      type: object
      properties:
        location_id:
          type: integer
          description: ID of location. This is empty in the case of the default allotment.
        product_id:
          type: integer
          description: product_id identifier of item.
        quantity:
          type: integer
          description: Amount of items that will be moved.
      required:
        - location_id
        - product_id
        - quantity
      title: AdjustmentsAbsoluteRequestItemsItems2
    AdjustmentsAbsoluteRequestItemsItems:
      oneOf:
        - $ref: '#/components/schemas/AdjustmentsAbsoluteRequestItemsItems0'
        - $ref: '#/components/schemas/AdjustmentsAbsoluteRequestItemsItems1'
        - $ref: '#/components/schemas/AdjustmentsAbsoluteRequestItemsItems2'
      title: AdjustmentsAbsoluteRequestItemsItems
    AdjustmentsAbsoluteRequest:
      type: object
      properties:
        reason:
          type: string
          description: Reason for the adjustment operation.
        items:
          type: array
          items:
            $ref: '#/components/schemas/AdjustmentsAbsoluteRequestItemsItems'
          description: One of the `sku`, `product_id`, or `variant_id` is required to identify the item.
      required:
        - items
      title: AdjustmentsAbsoluteRequest
    SimpleTransactionResponse:
      type: object
      properties:
        transaction_id:
          type: string
          description: Unique identifier of performed action.
      title: SimpleTransactionResponse
    ErrorResponseErrors:
      type: object
      properties: {}
      description: The detailed summary describing the particular error.
      title: ErrorResponseErrors
    ErrorResponse:
      type: object
      properties:
        status:
          type: integer
          description: The HTTP status code generated by the origin server for this occurrence of the problem.
        title:
          type: string
          description: Human readable error message.
        type:
          type: string
          description: |
            URL identifying the error type. Dereferencing the URL leads to documentation about the error type.
        errors:
          $ref: '#/components/schemas/ErrorResponseErrors'
          description: The detailed summary describing the particular error.
      title: ErrorResponse
    AdjustmentsRelativeRequestItemsItems0:
      type: object
      properties:
        location_id:
          type: integer
          description: ID of location. This is empty in the case of the default allotment.
        sku:
          type: string
          description: '"Stock keeping unit" identifier of an item.'
        quantity:
          type: integer
          description: Amount of items that will be moved.
      required:
        - location_id
        - sku
        - quantity
      title: AdjustmentsRelativeRequestItemsItems0
    AdjustmentsRelativeRequestItemsItems1:
      type: object
      properties:
        location_id:
          type: integer
          description: ID of location. This is empty in the case of the default allotment.
        variant_id:
          type: integer
          description: ID of variant.
        quantity:
          type: integer
          description: Amount of items that will be moved.
      required:
        - location_id
        - variant_id
        - quantity
      title: AdjustmentsRelativeRequestItemsItems1
    AdjustmentsRelativeRequestItemsItems2:
      type: object
      properties:
        location_id:
          type: integer
          description: ID of location. This is empty in the case of the default allotment.
        product_id:
          type: integer
          description: ID of product.
        quantity:
          type: integer
          description: Amount of items that will be moved.
      required:
        - location_id
        - product_id
        - quantity
      title: AdjustmentsRelativeRequestItemsItems2
    AdjustmentsRelativeRequestItemsItems:
      oneOf:
        - $ref: '#/components/schemas/AdjustmentsRelativeRequestItemsItems0'
        - $ref: '#/components/schemas/AdjustmentsRelativeRequestItemsItems1'
        - $ref: '#/components/schemas/AdjustmentsRelativeRequestItemsItems2'
      title: AdjustmentsRelativeRequestItemsItems
    AdjustmentsRelativeRequest:
      type: object
      properties:
        reason:
          type: string
          description: Reason for the adjustment operation.
        items:
          type: array
          items:
            $ref: '#/components/schemas/AdjustmentsRelativeRequestItemsItems'
          description: One of the `sku`, `product_id`, or `variant_id` is required to identify the item.
      required:
        - items
      title: AdjustmentsRelativeRequest
    ItemResponseIdentity:
      type: object
      properties:
        sku:
          type: string
          description: '"Stock keeping unit" identifier of an item.'
        variant_id:
          type: integer
          description: ID of variant.
        product_id:
          type: integer
          description: ID of product.
        sku_id:
          type: integer
          description: Read-only reference to Catalog V2 API's SKU ID. `null` if the item is a base variant.
      title: ItemResponseIdentity
    ItemResponseLocationsItemsSettings:
      type: object
      properties:
        safety_stock:
          type: integer
          description: Decreases the amount available for selling items at that amount.
        is_in_stock:
          type: boolean
          description: Shows whether an item is available for purchase independent of quantity.
        warning_level:
          type: integer
          description: >-
            Inventory warning level for the product. The store owner will be informed when the product inventory level
            drops below the warning level.
        bin_picking_number:
          type: string
          description: Warehouse location identifier; bin picking number for the item.
      title: ItemResponseLocationsItemsSettings
    ItemResponseLocationsItems:
      type: object
      properties:
        location_id:
          type: integer
          description: ID of location.
        location_code:
          type: string
          description: Code of location.
        location_name:
          type: string
          description: Name of location.
        available_to_sell:
          type: integer
          description: Available to sell. Total inventory on hand minus the safety stock.
        total_inventory_onhand:
          type: integer
          description: Total inventory on hand.
        location_enabled:
          type: boolean
          description: Status of the location. Indicates whether a location is enabled.
        settings:
          $ref: '#/components/schemas/ItemResponseLocationsItemsSettings'
      title: ItemResponseLocationsItems
    ItemResponse:
      type: object
      properties:
        identity:
          $ref: '#/components/schemas/ItemResponseIdentity'
        locations:
          type: array
          items:
            $ref: '#/components/schemas/ItemResponseLocationsItems'
      title: ItemResponse
    MetaPaginationLinks:
      type: object
      properties:
        previous:
          type: string
          description: The link to the previous page is returned in the response.
        current:
          type: string
          description: A link to the current page is 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: MetaPaginationLinks
    MetaPagination:
      type: object
      properties:
        total:
          type: integer
          description: The total number of items in the result set.
        count:
          type: integer
          description: The total number of items in the collection on current page.
        per_page:
          type: integer
          description: The number 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/MetaPaginationLinks'
          description: Pagination links for the previous and next parts of the whole collection.
      title: MetaPagination
    Meta:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/MetaPagination'
      title: Meta
    Items_get-inventory-items_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ItemResponse'
        meta:
          $ref: '#/components/schemas/Meta'
      title: Items_get-inventory-items_Response_200
    LocationItemsResponseIdentity:
      type: object
      properties:
        sku:
          type: string
          description: '"Stock keeping unit" identifier of item.'
        variant_id:
          type: integer
          description: ID of variant.
        product_id:
          type: integer
          description: ID of product.
      title: LocationItemsResponseIdentity
    LocationItemsResponseSettings:
      type: object
      properties:
        safety_stock:
          type: integer
          default: 0
          description: >
            Safety stock. Decreases the amount available for selling an item. If missing, the value will remain the
            same.
        is_in_stock:
          type: boolean
          default: true
          description: Shows whether an item is available for purchase independent of quantity.
        warning_level:
          type: integer
          default: 0
          description: >
            Inventory warning level for the product. The store owner will be informed when the product's inventory level
            drops below the warning level. If missing, the value will remain the same.
        bin_picking_number:
          type: string
          description: |
            Warehouse location identifier; bin picking number for the item.
      title: LocationItemsResponseSettings
    LocationItemsResponse:
      type: object
      properties:
        identity:
          $ref: '#/components/schemas/LocationItemsResponseIdentity'
        available_to_sell:
          type: integer
          description: Amount of available items.
        total_inventory_onhand:
          type: integer
          description: Amount of available items on hand minus `safety_stock`.
        settings:
          $ref: '#/components/schemas/LocationItemsResponseSettings'
      title: LocationItemsResponse
    Items_get-location-inventory-items_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/LocationItemsResponse'
        meta:
          $ref: '#/components/schemas/Meta'
      title: Items_get-location-inventory-items_Response_200
    LocationItemsSettingsRequestSettingsItemsIdentity0:
      type: object
      properties:
        sku:
          type: string
          description: '"Stock keeping unit" identifier of an item.'
      title: LocationItemsSettingsRequestSettingsItemsIdentity0
    LocationItemsSettingsRequestSettingsItemsIdentity1:
      type: object
      properties:
        variant_id:
          type: integer
          description: ID of variant.
      title: LocationItemsSettingsRequestSettingsItemsIdentity1
    LocationItemsSettingsRequestSettingsItemsIdentity2:
      type: object
      properties:
        product_id:
          type: integer
          description: ID of product.
      title: LocationItemsSettingsRequestSettingsItemsIdentity2
    LocationItemsSettingsRequestSettingsItemsIdentity:
      oneOf:
        - $ref: '#/components/schemas/LocationItemsSettingsRequestSettingsItemsIdentity0'
        - $ref: '#/components/schemas/LocationItemsSettingsRequestSettingsItemsIdentity1'
        - $ref: '#/components/schemas/LocationItemsSettingsRequestSettingsItemsIdentity2'
      description: One of the `sku`, `product_id`, or `variant_id` is required to identify the item.
      title: LocationItemsSettingsRequestSettingsItemsIdentity
    LocationItemsSettingsRequestSettingsItems:
      type: object
      properties:
        identity:
          $ref: '#/components/schemas/LocationItemsSettingsRequestSettingsItemsIdentity'
          description: One of the `sku`, `product_id`, or `variant_id` is required to identify the item.
        safety_stock:
          type: integer
          description: >
            Safety stock. Decreases the amount available for selling items at that amount. If missing, the value will
            remain the same.
        is_in_stock:
          type: boolean
          description: >
            Shows whether an item is available for purchase independent of quantity. If missing, the value will remain
            the same.
        warning_level:
          type: integer
          description: >
            Inventory warning level for the product. The store owner will be informed when the product's inventory level
            drops below the warning level. If missing, the value will remain the same.
        bin_picking_number:
          type: string
          description: |
            Warehouse location identifier; bin picking number for the item.
      title: LocationItemsSettingsRequestSettingsItems
    LocationItemsSettingsRequest:
      type: object
      properties:
        settings:
          type: array
          items:
            $ref: '#/components/schemas/LocationItemsSettingsRequestSettingsItems'
      required:
        - settings
      title: LocationItemsSettingsRequest
    LocationsCreateRequestItemsTypeId:
      type: string
      enum:
        - PHYSICAL
        - VIRTUAL
      default: PHYSICAL
      description: Describe type of given location.
      title: LocationsCreateRequestItemsTypeId
    OperatingHoursForDay:
      type: object
      properties:
        open:
          type: boolean
          default: false
          description: Boolean variable that defines if the location is open or not.
        opening:
          type: string
          format: string
          description: Opening time.
        closing:
          type: string
          format: string
          description: Closing time.
      title: OperatingHoursForDay
    OperatingHours:
      type: object
      properties:
        sunday:
          $ref: '#/components/schemas/OperatingHoursForDay'
        monday:
          $ref: '#/components/schemas/OperatingHoursForDay'
        tuesday:
          $ref: '#/components/schemas/OperatingHoursForDay'
        wednesday:
          $ref: '#/components/schemas/OperatingHoursForDay'
        thursday:
          $ref: '#/components/schemas/OperatingHoursForDay'
        friday:
          $ref: '#/components/schemas/OperatingHoursForDay'
        saturday:
          $ref: '#/components/schemas/OperatingHoursForDay'
      description: Schedule with opening and closing hours for each day of the week.
      title: OperatingHours
    LocationsCreateRequestItemsAddressGeoCoordinates:
      type: object
      properties:
        latitude:
          type: string
          title: float
          description: Latitude.
        longitude:
          type: string
          title: float
          description: Longitude.
      required:
        - latitude
        - longitude
      description: Object with latitude and longitude that points at the location.
      title: LocationsCreateRequestItemsAddressGeoCoordinates
    LocationsCreateRequestItemsAddress:
      type: object
      properties:
        address1:
          type: string
          description: Main address information.
        address2:
          type: string
          description: Additional address information.
        city:
          type: string
          description: The city where the location is located.
        state:
          type: string
          format: enum
          description: The state where the location is located.
        zip:
          type: string
          description: Zip code of the location.
        email:
          type: string
          format: email
          description: Email of the location.
        phone:
          type: string
          description: Phone number of the location.
        geo_coordinates:
          $ref: '#/components/schemas/LocationsCreateRequestItemsAddressGeoCoordinates'
          description: Object with latitude and longitude that points at the location.
        country_code:
          type: string
          format: enum
          description: ISO 3166-1 alpha-3 code.
      required:
        - address1
        - city
        - state
        - zip
        - email
        - geo_coordinates
        - country_code
      description: Address is required if the locationʼs `type_id` is `PHYSICAL`.
      title: LocationsCreateRequestItemsAddress
    BlackoutHoursItems:
      type: object
      properties:
        label:
          type: string
        date:
          type: string
          format: date
        open:
          type: boolean
        opening:
          type: string
          format: string
          default: '00:00'
        closing:
          type: string
          format: string
          default: '00:00'
        all_day:
          type: boolean
          default: false
        annual:
          type: boolean
          default: false
      required:
        - label
        - date
        - open
      title: BlackoutHoursItems
    BlackoutHours:
      type: array
      items:
        $ref: '#/components/schemas/BlackoutHoursItems'
      title: BlackoutHours
    LocationsCreateRequestItems:
      type: object
      properties:
        code:
          type: string
          description: Location user-defined unique identifier.
        label:
          type: string
          description: Location label.
        description:
          type: string
          description: >-
            Description of location. This field can be returned by the GraphQL Storefront API so that additional details
            can be exposed to customers on the storefront (customer-facing). 
        managed_by_external_source:
          type: boolean
          default: false
          description: >
            Indicates if the third-party system is the source of truth for inventory values. If set to true, manually
            editing inventory in the BigCommerce control panel will be disabled.
        type_id:
          $ref: '#/components/schemas/LocationsCreateRequestItemsTypeId'
          default: PHYSICAL
          description: Describe type of given location.
        enabled:
          type: boolean
          default: true
        operating_hours:
          $ref: '#/components/schemas/OperatingHours'
        time_zone:
          type: string
          description: >-
            Time zone of location. For a list of valid time zones, please view:
            https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
        address:
          $ref: '#/components/schemas/LocationsCreateRequestItemsAddress'
          description: Address is required if the locationʼs `type_id` is `PHYSICAL`.
        storefront_visibility:
          type: boolean
          default: true
        special_hours:
          $ref: '#/components/schemas/BlackoutHours'
      title: LocationsCreateRequestItems
    LocationsCreateRequest:
      type: array
      items:
        $ref: '#/components/schemas/LocationsCreateRequestItems'
      title: LocationsCreateRequest
    LocationResponseTypeId:
      type: string
      enum:
        - PHYSICAL
        - VIRTUAL
      default: PHYSICAL
      description: Describe type of given location.
      title: LocationResponseTypeId
    LocationResponseAddressGeoCoordinates:
      type: object
      properties:
        latitude:
          type: string
          title: float
          description: Latitude.
        longitude:
          type: string
          title: float
          description: Longitude.
      description: Object with latitude and longitude that points at the location.
      title: LocationResponseAddressGeoCoordinates
    LocationResponseAddress:
      type: object
      properties:
        address1:
          type: string
          description: Main address information.
        address2:
          type: string
          description: Additional address information.
        city:
          type: string
          description: The city where the location is located.
        state:
          type: string
          description: The state where the location is located.
        zip:
          type: string
          description: Zip code of the location.
        email:
          type: string
          format: email
          description: Email of the location.
        phone:
          type: string
          description: Phone number of the location.
        geo_coordinates:
          $ref: '#/components/schemas/LocationResponseAddressGeoCoordinates'
          description: Object with latitude and longitude that points at the location.
        country_code:
          type: string
          description: ISO 3166-1 alpha-3 code.
      title: LocationResponseAddress
    LocationResponseSpecialHoursItems:
      type: object
      properties:
        label:
          type: string
        date:
          type: string
          format: date
        open:
          type: boolean
        opening:
          type: string
          format: string
          default: '00:00'
        closing:
          type: string
          format: string
          default: '00:00'
        all_day:
          type: boolean
          default: false
        annual:
          type: boolean
          default: false
      title: LocationResponseSpecialHoursItems
    LocationResponse:
      type: object
      properties:
        id:
          type: integer
          description: Location immutable unique identifier.
        code:
          type: string
          description: Location user-defined unique identifier.
        label:
          type: string
          description: Location label.
        description:
          type: string
          description: Description of location.
        managed_by_external_source:
          type: boolean
          default: false
          description: >
            Indicates if the third-party system is the source of truth for inventory values. If set to true, manually
            editing inventory in the BigCommerce control panel will be disabled.
        type_id:
          $ref: '#/components/schemas/LocationResponseTypeId'
          default: PHYSICAL
          description: Describe type of given location.
        enabled:
          type: boolean
          default: true
          description: Indicator of accessibility of the location.
        operating_hours:
          $ref: '#/components/schemas/OperatingHours'
        time_zone:
          type: string
          description: Time zone of location.
        created_at:
          type: string
          format: date-time
          description: Time when location was created.
        updated_at:
          type: string
          format: date-time
          description: Time of last update of the location.
        address:
          $ref: '#/components/schemas/LocationResponseAddress'
        storefront_visibility:
          type: boolean
          default: true
          description: Indicator of accessibility of location on the storefront.
        special_hours:
          type: array
          items:
            $ref: '#/components/schemas/LocationResponseSpecialHoursItems'
      title: LocationResponse
    Locations_getLocations_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/LocationResponse'
        meta:
          $ref: '#/components/schemas/Meta'
      title: Locations_getLocations_Response_200
    LocationsUpdateRequestItemsTypeId:
      type: string
      enum:
        - PHYSICAL
        - VIRTUAL
      default: PHYSICAL
      description: Describe type of given location.
      title: LocationsUpdateRequestItemsTypeId
    LocationsUpdateRequestItemsAddressGeoCoordinates:
      type: object
      properties:
        latitude:
          type: string
          title: float
          description: Latitude.
        longitude:
          type: string
          title: float
          description: Longitude.
      required:
        - latitude
        - longitude
      description: Object with latitude and longitude that points at the location.
      title: LocationsUpdateRequestItemsAddressGeoCoordinates
    LocationsUpdateRequestItemsAddressCountryCode:
      type: string
      enum:
        - US
      default: US
      description: ISO 3166-1 alpha-3 code.
      title: LocationsUpdateRequestItemsAddressCountryCode
    LocationsUpdateRequestItemsAddress:
      type: object
      properties:
        address1:
          type: string
          description: Main address information.
        address2:
          type: string
          description: Additional address information.
        city:
          type: string
          description: The city where the location is located.
        state:
          type: string
          description: The state where the location is located.
        zip:
          type: string
          description: Zip code of the location.
        email:
          type: string
          format: email
          description: Email of the location.
        phone:
          type: string
          description: Phone number of the location.
        geo_coordinates:
          $ref: '#/components/schemas/LocationsUpdateRequestItemsAddressGeoCoordinates'
          description: Object with latitude and longitude that points at the location.
        country_code:
          $ref: '#/components/schemas/LocationsUpdateRequestItemsAddressCountryCode'
          description: ISO 3166-1 alpha-3 code.
      required:
        - country_code
      title: LocationsUpdateRequestItemsAddress
    LocationsUpdateRequestItems:
      type: object
      properties:
        id:
          type: integer
          description: Location immutable unique identifier.
        code:
          type: string
          description: Location user-defined unique identifier.
        label:
          type: string
          description: Location label.
        description:
          type: string
          description: Description of location.
        managed_by_external_source:
          type: boolean
          default: false
          description: >
            Indicates if the third-party system is the source of truth for inventory values. If set to true, manually
            editing inventory in the BigCommerce control panel will be disabled.
        type_id:
          $ref: '#/components/schemas/LocationsUpdateRequestItemsTypeId'
          default: PHYSICAL
          description: Describe type of given location.
        enabled:
          type: boolean
          default: true
          description: Indicator of accessibility of the location.
        operating_hours:
          $ref: '#/components/schemas/OperatingHours'
        time_zone:
          type: string
          description: Time zone of location.
        address:
          $ref: '#/components/schemas/LocationsUpdateRequestItemsAddress'
        storefront_visibility:
          type: boolean
          default: true
          description: Indicator of accessibility of location on the storefront.
        special_hours:
          $ref: '#/components/schemas/BlackoutHours'
      required:
        - id
      description: A request to update an existing locations.
      title: LocationsUpdateRequestItems
    LocationsUpdateRequest:
      type: array
      items:
        $ref: '#/components/schemas/LocationsUpdateRequestItems'
      title: LocationsUpdateRequest
    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:
        - location
      description: |
        The type of resource with which the metafield is associated.
      title: MetafieldResourceType
    Metafield:
      type: object
      properties:
        id:
          type: integer
          description: Unique ID for the metafield.
        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`.
        namespace:
          type: string
          description: |
            Namespace for the metafield, for organizational purposes.
        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.
            |
        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.
        date_created:
          type: string
          format: date-time
          description: |
            Date and time when the metafield was created.
        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.
      description: |
        Allows app partners to write custom data to various resources in the API.
      title: Metafield
    InventoryLocationsLocationIdMetafieldsGetResponsesContentApplicationJsonSchemaMetaPaginationLinks:
      type: object
      properties:
        current:
          type: string
          description: A link to the current page is returned in the response.
      description: Pagination links for parts of the whole collection.
      title: InventoryLocationsLocationIdMetafieldsGetResponsesContentApplicationJsonSchemaMetaPaginationLinks
    InventoryLocationsLocationIdMetafieldsGetResponsesContentApplicationJsonSchemaMetaPagination:
      type: object
      properties:
        total:
          type: integer
          description: The total number of items in the result set.
        count:
          type: integer
          description: The total number of items in the collection on current page.
        per_page:
          type: integer
          description: The number 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/InventoryLocationsLocationIdMetafieldsGetResponsesContentApplicationJsonSchemaMetaPaginationLinks
          description: Pagination links for parts of the whole collection.
      title: InventoryLocationsLocationIdMetafieldsGetResponsesContentApplicationJsonSchemaMetaPagination
    InventoryLocationsLocationIdMetafieldsGetResponsesContentApplicationJsonSchemaMeta:
      type: object
      properties:
        pagination:
          $ref: >-
            #/components/schemas/InventoryLocationsLocationIdMetafieldsGetResponsesContentApplicationJsonSchemaMetaPagination
      title: InventoryLocationsLocationIdMetafieldsGetResponsesContentApplicationJsonSchemaMeta
    Metafields_getLocationMetafields_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Metafield'
        meta:
          $ref: '#/components/schemas/InventoryLocationsLocationIdMetafieldsGetResponsesContentApplicationJsonSchemaMeta'
      title: Metafields_getLocationMetafields_Response_200
    MetafieldBasePermissionSet:
      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: MetafieldBasePermissionSet
    MetafieldBase:
      type: object
      properties:
        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`.
        namespace:
          type: string
          description: |
            Namespace for the metafield, for organizational purposes.
        permission_set:
          $ref: '#/components/schemas/MetafieldBasePermissionSet'
          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.
            |
        description:
          type: string
          description: |
            Description for the metafields.
      description: |
        Common metafield properties.
      title: MetafieldBase
    InventoryLocationsLocationIdMetafieldsPostResponsesContentApplicationJsonSchemaMeta:
      type: object
      properties: {}
      title: InventoryLocationsLocationIdMetafieldsPostResponsesContentApplicationJsonSchemaMeta
    Metafields_createLocationMetafield_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Metafield'
        meta:
          $ref: '#/components/schemas/InventoryLocationsLocationIdMetafieldsPostResponsesContentApplicationJsonSchemaMeta'
      title: Metafields_createLocationMetafield_Response_200
    CreateLocationMetafieldRequestBadRequestError:
      type: object
      properties:
        status:
          type: number
          format: double
        title:
          type: string
        type:
          type: string
        detail:
          type: string
      title: CreateLocationMetafieldRequestBadRequestError
    CreateLocationMetafieldRequestConflictError:
      type: object
      properties:
        status:
          type: integer
          description: The HTTP status code generated by the origin server for this occurrence of the problem.
        title:
          type: string
          description: Human readable error message.
        type:
          type: string
          description: URL identifying the error type. Dereferencing the URL leads to documentation about the error type.
      title: CreateLocationMetafieldRequestConflictError
    InventoryLocationsLocationIdMetafieldsMetafieldIdGetResponsesContentApplicationJsonSchemaMeta:
      type: object
      properties: {}
      title: InventoryLocationsLocationIdMetafieldsMetafieldIdGetResponsesContentApplicationJsonSchemaMeta
    Metafields_getLocationMetafield_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Metafield'
        meta:
          $ref: >-
            #/components/schemas/InventoryLocationsLocationIdMetafieldsMetafieldIdGetResponsesContentApplicationJsonSchemaMeta
      title: Metafields_getLocationMetafield_Response_200
    InventoryLocationsLocationIdMetafieldsMetafieldIdPutResponsesContentApplicationJsonSchemaMeta:
      type: object
      properties: {}
      title: InventoryLocationsLocationIdMetafieldsMetafieldIdPutResponsesContentApplicationJsonSchemaMeta
    Metafields_updateLocationMetafield_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Metafield'
        meta:
          $ref: >-
            #/components/schemas/InventoryLocationsLocationIdMetafieldsMetafieldIdPutResponsesContentApplicationJsonSchemaMeta
      title: Metafields_updateLocationMetafield_Response_200
    UpdateLocationMetafieldRequestBadRequestError:
      type: object
      properties:
        status:
          type: number
          format: double
        title:
          type: string
        type:
          type: string
        detail:
          type: string
      title: UpdateLocationMetafieldRequestBadRequestError
    InventoryLocationsMetafieldsGetParametersDirection:
      type: string
      enum:
        - asc
        - desc
      title: InventoryLocationsMetafieldsGetParametersDirection
    InventoryLocationsMetafieldsGetParametersIncludeFieldsSchemaItems:
      type: string
      enum:
        - resource_id
        - key
        - value
        - namespace
        - permission_set
        - resource_type
        - description
        - owner_client_id
        - date_created
        - date modified
      title: InventoryLocationsMetafieldsGetParametersIncludeFieldsSchemaItems
    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
    InventoryLocationsMetafieldsPostRequestBodyContentApplicationJsonSchemaItemsPermissionSet:
      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: InventoryLocationsMetafieldsPostRequestBodyContentApplicationJsonSchemaItemsPermissionSet
    InventoryLocationsMetafieldsPostRequestBodyContentApplicationJsonSchemaItems:
      type: object
      properties:
        permission_set:
          $ref: >-
            #/components/schemas/InventoryLocationsMetafieldsPostRequestBodyContentApplicationJsonSchemaItemsPermissionSet
          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 of the location with which the metafield is associated.
      required:
        - permission_set
        - namespace
        - key
        - value
        - resource_id
      description: |
        Common Metafield properties.
      title: InventoryLocationsMetafieldsPostRequestBodyContentApplicationJsonSchemaItems
    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
    CreateLocationsMetafieldsRequestBadRequestError:
      type: object
      properties:
        status:
          type: number
          format: double
        title:
          type: string
        type:
          type: string
        detail:
          type: string
      title: CreateLocationsMetafieldsRequestBadRequestError
    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.
        type:
          type: string
          description: |
            The error type.
        errors:
          $ref: '#/components/schemas/ErrorDetail'
      description: |
        Error response payload for the BigCommerce API.
      title: Error
    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
    InventoryLocationsMetafieldsPutRequestBodyContentApplicationJsonSchemaItemsPermissionSet:
      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: InventoryLocationsMetafieldsPutRequestBodyContentApplicationJsonSchemaItemsPermissionSet
    InventoryLocationsMetafieldsPutRequestBodyContentApplicationJsonSchemaItems:
      type: object
      properties:
        permission_set:
          $ref: >-
            #/components/schemas/InventoryLocationsMetafieldsPutRequestBodyContentApplicationJsonSchemaItemsPermissionSet
          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: string
          description: |
            The ID of metafield to update.
      required:
        - id
      description: |
        Common Metafield properties.
      title: InventoryLocationsMetafieldsPutRequestBodyContentApplicationJsonSchemaItems
    UpdateLocationsMetafieldsRequestBadRequestError:
      type: object
      properties:
        status:
          type: number
          format: double
        title:
          type: string
        type:
          type: string
        detail:
          type: string
      title: UpdateLocationsMetafieldsRequestBadRequestError
    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
    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
  securitySchemes:
    X-Auth-Token:
      type: apiKey
      in: header
      name: X-Auth-Token
      description: >-
        ### OAuth scopes


        | UI Name | Permission | Parameter |

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

        |  Store Inventory | read-only | `store_inventory_read_only` |

        |  Store Inventory | modify | `store_inventory` |


        ### Authentication header


        | Header | Argument | Description |

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

        | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API Accounts
        and OAuth Scopes](/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).


        For more about BigCommerce OAuth scopes, see [API Accounts and OAuth
        Scopes](/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).
