POST /v1/search endpoint is the core of Channel3. Pass a free-text query and get back a ranked list of products with prices, availability, images, and merchant offers.
Basic search
Filters
Narrow results withfilters. Every filter is optional — combine as many as you need.
Popular filters
These are the filters most integrations use. See the API reference for the complete list.| Filter | Type | Description |
|---|---|---|
price | { min_price?, max_price? } | Price range in the request’s currency. |
availability | string[] | One or more of InStock, LimitedAvailability, PreOrder, BackOrder, SoldOut, OutOfStock. |
gender | string | male, female, or unisex. |
category | string | A category slug (e.g. running-shoes). See Categories. |
brand_ids | string[] | Limit to specific brands. Resolve brand IDs via /v1/brands/search. |
attributes | Record<string, string[]> | Filter by structured attribute key/value pairs — e.g. { "connectivity": ["USB"] }. Attribute keys come from category detail. See Advanced Search. |
colors | { hex: string, percentage?: number }[] | Filter by color palette using hex values (Beta). |
age | string | newborn, infant, toddler, kids, or adult. |
Pagination
Usenext_page_token from the response to fetch the next page. You can page up to 500 products total.
Low-latency keyword search
Setkeyword_search_only: true to skip semantic (vector) search and use exact keyword matching instead. This path is optimized for super low latency — use it when users type specific product names or SKUs, or when you need the fastest possible search response.