Retrieve by item ID

Retrieve browse results for products (or optionally other sections) by item ID(s).

The browse item endpoint accepts a list of items and returns a standard browse response structure. Additional filters may be passed in the request, but custom sort orders are not supported (items will always be returned in the order of ids that are specified in the request).

The browse items endpoint is designed for fast lookup of item data in production where performance and scalability are critical. It is used by customers in contexts such as: retrieving data for products returned on a homepage with representative store pricing, supplementing result pages with data for items placed from alternate systems such as ad servers, or supporting product detail pages (PDP) in cases where additional product-specific enrichment is not required. While the endpoint is not specialized for PDP, it can be suitable when the same metadata used on product listing pages (PLP) is sufficient, e.g. Price or Availability. Typically, customers use this capability where the responses from their eCommerce platform are not sufficiently performant, or don't support store or regional pricing. The browse items endpoint does not return results for items that have not yet been indexed.

In contrast, the items ingestion API retrieves any item that has been uploaded to a customer's index, even if it hasn't yet been indexed. It is intended only for integration and backend usage, requires authentication and has more aggressive rate limiting -- it is not designed for end-users. The endpoint also does not support filter logic.

The browse items endpoint is something of a special use case and is not leveraged by most customers (most customers will use their eCommerce platform for this case). Rather, most customers and browse contexts (browse a brand or category or collection) will utilize the standard browse endpoint.


Related content


Query Params
string
required
length between 1 and 100

The key of the index to use.

string
length between 1 and 100

The section of the index to use. Defaults to Products.

ids
array of strings
length ≤ 100

The ID(s) of the items to return.

Ids
filters
object

Any number of filtering criteria (accessible to end users) used to narrow the result set, such as color=blue or group_id=sandals or price=100-200. Facets and Item Groups and Collections can be used as filters. If filter_value has the form <min>-<max>, it is interpreted as a range. Filters with the same key are ORed together and filters with different keys are ANDed together by default. Only results that match the filters are returned. Boolean values are serialized with the first letter capitalized (e.g., True / False) as a convention.

filter_match_types
object

An object specifying whether results must match all, any or none of a given filter when multiple options of the same facet (e.g: color: yellow & blue) are selected.

object | Encoded JSON string

A JSON-encoded filter expression containing any number of filters (inaccessible to end users) used to narrow the result set. Applied before user-selected filters. Only items that match this expression are considered in facet counts. Only results that match the filters are returned. Read more.

integer
1 to 200
Defaults to 20

The number of results per page to return.

integer
≄ 1

The page of results to return.

integer
≄ 0

The number of results to skip from the beginning. Cannot be used together with page.

date-time

A date time representing the current moment in time when applying filtering by product age. Used to emulate "past/future" requests. Requires authentication.

json

A JSON string containing a instructions on how to map item variation data in the response (typically used for swatches). More details, including the exact schema for this value can be found here

fmt_options
object

An object containing options to format different aspect of the response.

json

A JSON-encoded query string. Any query parameters listed for this endpoint can be serialized into a JSON string and parsed thru the qs param.

string

The url or app location where the request originated.

string
length between 1 and 100

The ID of the client and version that the request is coming from, such as cio-js-2.90.

us
array of strings

A customer defined context (such as vip-club-member) used to evaluate redirect or refined tag rules. Pass multiple segments by passing multiple us arguments.

us
string

A customer generated anonymized identifier for a user on a customer website. It should only be sent for logged in customers and helps Constructor to tie multiple client and session IDs together to form a behavioral data profile across devices.

integer

An integer representing the users session number (starting with 1), incremented after a 30 minute period of inactivity.

string

A globally unique identifier for the user browser (or mobile application instance) making the request.

Responses

400

Validation Error

Language
LoadingLoading…
Response
Choose an example:
application/json