Get all Products
GET/catalog/products
Retrieves the list of products from the catalog. Only the products in a live status are retrieved.
Catalog Rules
If you have multiple catalog rules defined, the rule that best matches the shoppers context is used to determine which catalog is retrieved. If no catalog rules are configured, the first catalog found is returned. For information about how rules are matched, see Resolving Catalog Rules.
Product and Node Associations
You can see the parent nodes a product is associated within the bread_crumbs
and bread_crumb_nodes
metadata for each product. For example, this is useful if you want to improve how your shoppers search your store. See Product and Node Associations in Breadcrumb Metadata.
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.
Parameter | Required | Description |
---|---|---|
component_products | Optional | The component product data and key attribute data, such as SKU or slug, to return for component products in a product bundle. |
main_image | Optional | The main images associated with a product. |
files | Optional | Any 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.
Operator | Description | Supported Attributes | Example |
---|---|---|---|
Eq | Checks if the values of two operands are equal. If they are, the condition is true. For product_types and tags , you can only specify one. For example, filter=eq(product_types,child) . | name , sku , slug , manufacturer_part_num , upc_ean , product_types , tags | filter=eq(name,some-name) |
In | Checks if the values are included in the specified string. If they are, the condition is true. For product_types and tags , you can specify more than one. For example, filter=in(product_types,child,bundle) . | id , name , sku , slug , manufacturer_part_num , upc_ean , product_types , tags | filter=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
- 200
- default