> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.whalehunt.net/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.whalehunt.net/_mcp/server.

# Filters and subscription scope

Filters choose which permitted data you need. They do not grant additional access.

| Field          | Selects                                                         | Boundary                                    |
| -------------- | --------------------------------------------------------------- | ------------------------------------------- |
| `owners`       | Order owners                                                    | Not signers or transaction senders          |
| `tokenIds`     | Outcome tokens                                                  | Canonical unsigned decimal strings          |
| `conditionIds` | Conditions through a frozen mapping                             | A known catalog binding is required         |
| `marketSlugs`  | Markets through a frozen slug mapping                           | Not free-text question search               |
| `stages`       | `pending`, `included`, `reverted`, `canonicality`, `resolution` | Necessary correction closure remains active |

## OR within lists, AND between facets

This filter fragment selects owner A or B, AND token 7 or 8, AND the included stage. Addresses and tokens are synthetic.

```json
{
  "owners": ["0x1111111111111111111111111111111111111111", "0x2222222222222222222222222222222222222222"],
  "tokenIds": ["7", "8"],
  "stages": ["included"]
}
```

An omitted facet imposes no predicate. Current parsing also treats a facet set to `null` as omitted; prefer omission when constructing requests. Empty arrays are rejected. Each provided array has at most 256 entries before normalization; account and combined resource caps apply separately. Unknown fields are rejected.

Owners and conditions use canonical lowercase hex. Slugs contain lowercase letters, digits or hyphens, are 1–256 ASCII characters, and cannot start or end with a hyphen. Detailed shapes are in [frames](/polymarket/reference/frames).

## Access modes

Owner allowlist requires permitted `owners`. Market-filtered mode requires `market_data` and at least one entity selector. Full stream requires separate `firehose` permission. Stage and replay scopes are independent; an empty filter does not authorize firehose.

## Frozen mappings

`subscribed.frozenMarkets` and `frozenConditions` record the selected mapping. Condition selectors can match their condition facet or a token in that condition's frozen mapping, allowing supported receipt-only executions to match without a condition facet. Slug and condition groups remain independent AND predicates.

Catalog refresh cannot reinterpret an old cursor. Frozen snapshots do not promise freshness or completeness of the whole Polymarket catalog. Change a predicate using [rebind](/polymarket/stream/rebind); reconnect using the previous predicate and [resume](/polymarket/stream/recovery).

Quality notices route by entitled source/network/contract scope before wallet/token trade predicates. A quiet wallet can therefore receive a source notice without a matching trade.