Skip to main content

Get all Products

GET 

/catalogs/:catalog_id/releases/:release_id/products

Returns the products from a published catalog. Only the products in a live status are retrieved. Currently, published catalogs are limited to the current release and two releases prior to the current release.

You can see the parent nodes a product is associated with in the bread_crumbs and bread_crumb_nodes metadata for each product. This is useful if you want to improve how your shoppers search your store, for example. See Product and Node Associations in Breadcrumb Metadata.

The variations object lists the variation IDs and variation option IDs and their corresponding product IDs that are generated when the variation and variation options are built with a product. The variations object can then be added to your catalogs. By default, variations and variation options are sorted randomly. You can use the sort_order attribute to sort the order of your variation and variation options in variations. Once a parent product is published in a catalog, the Get a List of products in a catalog release response displays the sorted variations and variation options. Variations and variation options are displayed in descending order according to their sort_order values.

Including Resources

Using the include parameter, you can retrieve top-level resources, such as, files or main image, bundle component products and product attributes, such as SKU or slug.

ParameterRequiredDescription
component_productsOptionalThe component product data and key attribute data, such as SKU or slug, to return for component products in a product bundle.
main_imageOptionalThe main images associated with a product.
filesOptionalAny files associated with a product.

See Including Resources.

Filtering

This endpoint supports filtering. For general filtering syntax, see Filtering. The following operators and attributes are available when filtering on this endpoint.

OperatorDescriptionSupported AttributesExample
EqChecks if the values of two operands are equal. If they are, the condition is true. For product_types, you can only specify one product type. For example, filter=eq(product_types,child).name, sku, slug, manufacturer_part_num, upc_ean, product_types, tagsfilter=eq(name,some-name)
InChecks if the values are included in the specified string. If they are, the condition is true. For product_types, you can specify more than one product type. For example, filter=in(product_types,child,bundle).id, name, sku, slug, manufacturer_part_num, upc_ean, product_types, tagsfilter=in(id,some-id)

Building breadcrumbs in a storefront

In a catalog, you can use a filter to return a list of nodes in a hierarchy structure that a product belongs to. You can use this to build breadcrumbs in your storefront. An example is shown below.

filter=in(id,c83bfe55-0d87-4302-a86d-ab19e7e323f1,6003d7ef-84f3-49bb-a8bd-4cbfa203dcbb)

  • Specify the node Ids in the filter expression.
  • You can have as many node Ids as you want.
  • It does not matter what order you specify the node Ids. The nodes are returned in the order they were last updated.

Request

Responses

The products of a catalog.