Skip to main content
The Products API gives you access to the full customer-facing product catalog. Use it to build storefront listing pages, search interfaces, and product detail views. Both endpoints are fully public — no session cookie is required. All money values are decimal strings (e.g., "99.99"), and all timestamps are ISO 8601 UTC.

List Products

Only products that have at least one ACTIVE variant and have not been soft-deleted are included in the public listing. Draft, inactive, and archived variants are invisible to customers.
Retrieve a paginated list of products. Optionally filter by brand or free-text search across name, brand, and description. Sort by name or recency.
Query parameters
integer
default:"1"
Page number (1-based).
integer
default:"20"
Number of results per page. Minimum 1, maximum 100.
Free-text search across product name, brand, and description (trimmed, max 100 characters).
string
Filter by exact brand name (trimmed, case-sensitive, max 255 characters). Example: Nike.
string
default:"-created_at"
Sort field. Prefix with - for descending. Allowed values: name, -name, created_at, -created_at, updated_at, -updated_at.
Response fields
boolean
Always true on a successful response.
array
Array of product summary objects.
object
Pagination metadata.
Example — List the newest Nike products
Example response

Get Product Details

Retrieve a single product by its public ID. The response includes the full image gallery (ordered by display_order) and all active variants with computed pricing.
Path parameters
string
required
The product’s public ID. Pattern: prd_*.
Response fields
object
Full product detail object.
Always display final_price to customers — it is the authoritative price computed server-side and used at checkout. Do not compute discounts client-side.
Example — Fetch a product detail page
Example response
Error responses