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

# Filters

**Filters** are hard catalog rules for **this turn only** — in-stock, a set of retailers, a price range. They use the same `SearchFilters` shape as the [Search API](/guides/search.md). They do not stick across turns.

```typescript TypeScript theme={"theme":{"light":"github-light","dark":"github-dark"}}
const stream = await client.conversations.createTurnStream({
  message: {
    role: "user",
    parts: [{ type: "text", text: "in brown instead" }],
  },
  conversation_id: conversationId,
  filters: { availability: ["InStock"], website_ids: ["nordstrom.com"] },
});
```

```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
stream = client.conversations.create_turn_stream(
    message={
        "role": "user",
        "parts": [{"type": "text", "text": "in brown instead"}],
    },
    conversation_id=conversation_id,
    filters={"availability": ["InStock"], "website_ids": ["nordstrom.com"]},
)
```

```bash cURL theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl -N -X POST https://api.trychannel3.com/v1/conversations \
  -H "Authorization: Bearer c3_ct_..." \
  -H "Content-Type: application/json" \
  -d '{
    "message": {
      "role": "user",
      "parts": [{"type": "text", "text": "in brown instead"}]
    },
    "conversation_id": "conv_REPLACE_ME",
    "filters": {
      "availability": ["InStock"],
      "website_ids": ["nordstrom.com"]
    }
  }'
```

For shopper preferences and app notes that should last the whole conversation, use [context](/conversations/context.md). To limit the whole catalog to saved brands, websites, categories, or products, pass `config.collection_id` — see [Collections](/guides/collections.md).


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