Get products
Use this endpoint to retrieve a paginated list of products across all collections. Returns the same response shape as the collection-scoped endpoint, without requiring a collectionId.
Filtering options
filter[catalog]-marketplaceorswag(defaults tomarketplace)filter[type]- exact match on product type (physical,digital,giftCard,donation)filter[search]- free-text search across product title, category, and brandfilter[brandId]- comma-separated list of brand IDs (OR semantics)filter[brandName]- case-insensitive substring search on brand namefilter[tagId]- comma-separated list of tag IDs (OR semantics)filter[price][gte]/filter[price][lte]- inclusive minimum / maximum price filterlocation- ISO 3166-1 alpha-2 country code (defaultUS) to scope pricingSnappy-Account-Id/Snappy-Company-Idheaders - optional account/company scoping
Please note
- Variants are not returned on this endpoint. Use GET /v3/products//variants to retrieve the variants list for a specific product.
Permissions
- Requires:
products:read
Authorizations
Company Level Authentication
Include your API key in the X-Api-Key header for every request:
Headers
Optional account identifier for swag validation/filtering.
"acc123456"
Optional company identifier for swag validation/filtering.
"cmp123456"
Query Parameters
Which product catalog to search. Required on product list/search endpoints. Defaults to marketplace.
marketplace, swag "marketplace"
Exact-match product type filter. Omit to include all types.
physical, digital, giftCard, donation "physical"
Free-text search across product title, category, and brand.
^[^<>]*$"tumbler"
Inclusive minimum price filter.
x >= 010
Inclusive maximum price filter.
x >= 0200
ISO 3166-1 alpha-2 country code.
^[A-Z]{2}$"US"
Related entities to include.
Related entities to include.
brand, tags Computed or expanded product fields for list responses.
Computed or expanded fields for product list responses.
priceRange, variantsCount, total Opaque continuation token from the previous response links.next.
"opaqueCursorToken"
Number of products per page (max 300, default 100).
1 <= x <= 300100
JSON:API sort parameter. Single field; prefix with - for descending.
^-?(minPrice|createdAt)$"-minPrice"
Comma-separated list of brand ids (OR semantics).
Case-insensitive substring search on brand name.
"Sample Brand"
Comma-separated list of tag ids (OR semantics).
Response
Paginated list of products.
Paginated product list response (cursor pagination). total is present only when requested via fields=total.
Products for the requested page.
Top-level JSON:API-style pagination links for paginated list responses. first, next, and prev are all required and all nullable. prev is null on cursor-paginated endpoints (backward navigation not supported).
Root-level total of products matching the request filters (ignores pagination). Returned only when fields=total.
x >= 0716