For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Dev Portal
DocsAPI ReferenceLearnCommunityChangelog
DocsAPI ReferenceLearnCommunityChangelog
    • About Our APIs
  • REST
    • Overview
      • Overview
        • Brands
        • Categories
        • Category Trees
        • Products
        • Product Modifiers
        • Product Variants
            • GETList Product Variants
            • POSTCreate Product Variant
            • GETGet Product Variant
            • PUTUpdate Product Variant
            • DELDelete Product Variant
              • GETList Variants
              • PUTUpdate Variants (batch)
        • Product Variant Options
      • Payments
  • GraphQL
    • Overview
  • MCP
    • Overview
Dev Portal
LogoLogo
RESTAdminCatalogProduct VariantsVariants Batch

List Variants

GET
https://api.bigcommerce.com/stores/:store_hash/v3/catalog/variants
GET
/stores/:store_hash/v3/catalog/variants
$curl https://api.bigcommerce.com/stores/store_hash/v3/catalog/variants \
> -H "Accept: application/json" \
> -H "X-Auth-Token: <apiKey>" \
> -H "Content-Type: application/json"
1{
2 "data": [
3 {
4 "cost_price": 12.5,
5 "price": 19.99,
6 "sale_price": 17.99,
7 "retail_price": 24.99,
8 "weight": 0.75,
9 "width": 10,
10 "height": 5,
11 "depth": 8,
12 "is_free_shipping": true,
13 "fixed_cost_shipping_price": 0,
14 "purchasing_disabled": false,
15 "purchasing_disabled_message": "",
16 "upc": "0123456789123",
17 "inventory_level": 150,
18 "inventory_warning_level": 10,
19 "bin_picking_number": "A12-B34",
20 "id": 1024,
21 "product_id": 256,
22 "sku": "HTS-RED-42",
23 "sku_id": 2048,
24 "option_values": [
25 {
26 "option_display_name": "Color",
27 "label": "Red",
28 "id": 5,
29 "option_id": 2
30 },
31 {
32 "option_display_name": "Size",
33 "label": "42",
34 "id": 12,
35 "option_id": 3
36 }
37 ],
38 "calculated_price": 17.99
39 }
40 ],
41 "meta": {
42 "pagination": {
43 "total": 36,
44 "count": 36,
45 "per_page": 50,
46 "current_page": 1,
47 "total_pages": 1,
48 "links": {
49 "previous": null,
50 "current": "?page=1&limit=50",
51 "next": null
52 }
53 }
54 }
55}
Returns a list of all variants in your catalog. Optional parameters can be passed in.
Was this page helpful?
Previous

Delete Product Variant Metafield

Next

Update Variants (batch)

Built with

Authentication

X-Auth-Tokenstring
### OAuth scopes | UI Name | Permission | Parameter | |:--------|:-----------|:----------| | Products | modify | `store_v2_products` | | Products | read-only | `store_v2_products_read_only` | ### Authentication header | Header | Argument | Description | |:-------|:---------|:------------| | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). | ### Further reading For example requests and more information about authenticating BigCommerce APIs, see [Authentication and Example Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests). For more about BigCommerce OAuth scopes, see our [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes). For a list of API status codes, see [API Status Codes](/developer/api-reference/rest/overview#rest-http-status-codes).

Path parameters

store_hashstringRequired
Permanent ID of the BigCommerce store.

Headers

AcceptstringRequiredDefaults to application/json
The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body.

Query parameters

idintegerOptional
Filter items by variant ID.
skustringOptional

Filter items by variant SKU. To filter by product / base variant SKU, see Get all products.

upcstringOptional
Filter items by UPC.
include_fieldslist of stringsOptional

Fields to include, in a comma-separated list. The ID and the specified fields will be returned.

exclude_fieldslist of stringsOptional

Fields to exclude, in a comma-separated list. The specified fields will be excluded from a response. The ID cannot be excluded.

pageintegerOptional

Specifies the page number in a limited (paginated) list of products.

limitintegerOptional

Controls the number of items per page in a limited (paginated) list of products.

product_id:inlist of integersOptional

A comma-separated list of IDs of products you want to request. For example, ?product_id:in=77,80,81.

Response

datalist of objects
metaobject
Data about the response, including pagination and collection totals.

Errors

404
Not Found Error

OAuth scopes

UI NamePermissionParameter
Productsmodifystore_v2_products
Productsread-onlystore_v2_products_read_only

Authentication header

HeaderArgumentDescription
X-Auth-Tokenaccess_tokenFor more about API accounts that generate access_tokens, see our Guide to API Accounts.

Further reading

For example requests and more information about authenticating BigCommerce APIs, see Authentication and Example Requests.

For more about BigCommerce OAuth scopes, see our Guide to API Accounts.

For a list of API status codes, see API Status Codes.

The MIME type of the response body.