> ## Documentation Index
> Fetch the complete documentation index at: /docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Make a Search

AI apps and agents use `/search` to find products across the web.

## The request shape

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "query": "merino wool sweater",
  "filters": {
    "price": { "min_price": 50, "max_price": 200 },
    "availability": ["InStock"],
    "brand_ids": ["..."],
    "website_ids": ["..."],
    "category": "sweaters"
    // and many more
  },
  "limit": 20
}
```

## Get an API key

Search requires an API key. [Create a free account](https://trychannel3.com/sign-up/developer), then copy your key.

> [!NOTE]
>
> You get **1,000 free credits each month** — that's good for 1,000 searches.
> Extra usage is billed per call; see [pricing](/docs/pricing.md) for the breakdown.

## Choose a search method

> **[Search](/docs/guides/search.md)**
>
> Search with text and images.

> **[Agentic search](/docs/guides/agentic-search.md)**
>
> Interpret longer shopping requests for an agent workflow.

> **[Image search](/docs/guides/image-search.md)**
>
> Find visually similar products from an image URL or upload.

For a photo with several products in one scene, see [Find products in an image](/docs/guides/image-search.md#find-products-in-an-image).

## Filters

Add optional filters to narrow your search.

> **[Price](/docs/guides/price-filters.md)**
>
> Constrain results to an offer price range.

> **[Color](/docs/guides/color-filters.md)**
>
> Find products that match a hex color palette.

> **[Dimensions](/docs/guides/dimension-filters.md)**
>
> Constrain length, width, height, or weight.

> **[Brand](/docs/guides/brand-search)**
>
> Filter by the company behind a product.

> **[Website](/docs/guides/website-search)**
>
> Restrict results to retailer offers from selected websites.

> **[Attributes](/docs/guides/advanced-search)**
>
> Filter on category-specific structured attributes.

> **[Collections](/docs/guides/collections.md)**
>
> Save a catalog scope and reuse it on search, browse, and conversations.

## Start from an existing product

> **[Look up a product URL](/docs/guides/url-lookup.md)**
>
> Get structured data from a URL, and offers at other retailers.

> **[Find similar products](/docs/guides/similar-products.md)**
>
> Get recommendations from a known Channel3 product ID.

## Attribute clicks to your users

Send the `x-user-id` header on search (and other catalog) requests to tie buy-link clicks and commissions back to a user in your app. Channel3 adds it to every offer URL in the response.

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl -X POST https://api.trychannel3.com/v1/search \
  -H "x-api-key: $CHANNEL3_API_KEY" \
  -H "x-user-id: user_abc123" \
  -H "Content-Type: application/json" \
  -d '{"query": "merino wool sweater", "limit": 20}'
```

Use a stable ID from your system (UUID, Clerk ID, etc.). Filter reporting by the same value — see [Reporting](/docs/guides/reporting.md).

## Next

Next: [What you get](/docs/guides/response-overview.md). It explains how products, offers, prices, and buy links appear in a response.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.