Catalog
The Catalog endpoints in the B2B Edition Storefront API enable you to retrieve product and variant information from a BigCommerce store. These endpoints are designed for fast, programmatic access to variant data, supporting use cases such as catalog display, quick ordering, and integration with external systems.
Use these endpoints to:
- List variants for a specific product (
/catalogs/variants
) - Fetch details for one or more variants by SKU (
/catalogs/quick-product
) - Retrieve comprehensive variant data for quick order workflows (
/catalogs/quick-order-pad
)
All endpoints require a Bearer token for authentication. For details, see the REST Storefront API authentication guide.
These endpoints mirror the functionality of standard BigCommerce REST API endpoints and provide data similar to Storefront GraphQL API queries like productVariantsInfo
and variantSku
. For more information, see the GraphQL Playground (opens in a new tab).
Refer to the individual endpoint documentation below for parameters, responses, and usage examples.
Get Product Variants Info
GET https://api-b2b.bigcommerce.com/api/v2/catalogs/variantsRequest
Returns a list of variants associated with the product identified by the productId
parameter.
Analogous to the Get all product variants endpoint in the default BigCommerce API.
Equivalent Storefront GraphQL API Query: productVariantsInfo
. For more information, see the GraphQL Playground.
Authentication
- Authorization in header in the format of Bearer {{token}}
Parameters
- productId in query - stringrequiredThe unique product ID as assigned by BigCommerce.Example: 123
example
Response
Body
codeinteger
HTTP status code indicating the result of the API operation.Default: 200
dataarray[object]
List of variant identifiers and their corresponding SKUs.
example
Get Variant Information
GET https://api-b2b.bigcommerce.com/api/v2/catalogs/quick-productRequest
Returns detailed information for each product variant provided in the variantSkus
parameter. Several fields are duplicated in other formats for convenience.
Analogous to the Get a product variant endpoint in the default BigCommerce API.
Equivalent Storefront GraphQL API Query: variantSku
. For more information, see the GraphQL Playground.
Authentication
- Authorization in header in the format of Bearer {{token}}
Parameters
- variantSkus in query - stringrequiredA collection of SKUs associated with product variants, separated by
|
.Example: HB-2-RE-SM|HB-2-GR-SM|HB-2-BL-SM
example
Response
Body
codeinteger
HTTP status code indicating the result of the operation.Example: 200dataarray[object]
List of product variant data objects.
example
Get Detailed Variant Information
POST https://api-b2b.bigcommerce.com/api/v2/catalogs/quick-order-padRequest
Returns detailed information about the variants whose SKUs are provided in the body of the request. This includes the information from Get Variant Information as well as other variant data that may affect pricing, availability, and other factors.
Details provided in the response body are sufficient to quickly add a product to a cart or a quote using appropriate methods.
Note: This endpoint uses the POST
method, despite its use to only retrieve information. Using the GET
method with this endpoint will return a 200
status, but the data
field will be empty. Likewise, using POST
with this endpoint with an empty body will return an empty data
field.
Equivalent Storefront GraphQL API Query: variantSku
. For more information, see the GraphQL Playground.
Authentication
- Authorization in header in the format of Bearer {{token}}
Parameters
- currencyCode in query - stringThe three-letter currency code to use in price calculation. If not provided, defaults to the store's default currency.Example: USD
Body
variantSkusarray[string]
List of variant SKUs for which to fetch detailed information. If this is omitted, the response will be empty.Type: array[string]Example: ["HB-2-RE-SM","HB-2-RE-ME"]
example
Response
Body
codeinteger
HTTP status code of the response.Example: 200dataarray[object]
List of product variant info objects.
example
See something you can improve? Edit this file on GitHub