Company Products index
Token-authenticated. Returns EVERY Product for the calling company regardless of lifecycle (draft / archived rows included), so admins can manage non-public rows.
Supports the same cursor pagination / filter / sort / q contract
as the public catalog. filter[status] (the raw Product enum keys
active/draft/archived) is only meaningful on this surface.
Product price is COUNTRY-RELATIVE — the country parameter selects
the per-country variant price/currency rendered.
Authorizations
Bearer token authentication. Accepts company-admin tokens with
storefront.view for read operations and storefront.update
for writes and scan triggers (legacy per-resource grants like
categories.update / products.view / etc. are still accepted
during the migration), required on every company operation.
Storefront public operations under /api/v202604/{resource} and
/api/v202604/{resource}/{slug} are unauthenticated
(security: []).
Query Parameters
Response locale. ISO code (e.g. fr, de). When omitted,
responds in the company's default locale. On the public
surface, falls back to en for any translated field missing
in the requested locale.
"fr"
ISO-2 country code that selects COUNTRY-RELATIVE Product pricing.
Product-only — Categories and other storefront resources use
filter[country] as an access-list visibility filter instead.
For Products, country drives the pricing block and each
variant's variant_countries: it picks which per-country variant
price and currency are rendered. On the catalog it also drops
products with no active variant in the requested country. When
omitted, falls back to the company's default country.
"GB"
Free-text search. Backed by Searchkick / Elasticsearch over
translation-aware title and description fields.
Rotulus cursor returned in meta.pagination.next_cursor (or
prev_cursor). Omit on the first page.
Page size. Default 25. Max 100. Requests above 100 return 422.
1 <= x <= 100Raw Product enum key.
active, draft, archived Stock filter. in_stock restricts to purchasable products; all
(default) imposes no stock constraint.
all, in_stock true returns only bundle products; false returns only non-bundle
products.
Restrict to products in any of these category ids.
Restrict to products in any of these collection ids.
Single sort key. Prefix with - for descending. Default priority then
id.
priority, -priority, title, -title, created_at, -created_at Response
A page of products.
Shared success envelope for list / show / create / update
responses: the resource payload is returned alongside a top-level
integer status and meta. Composed onto each resource response
via allOf.