Polymarket — List a market's top holders
polymarket_get_v2_holdersTop holders of a market, netted per user and grouped by Uses the caller's OpenAny gateway credentials. Charges and authorization are determined by the gateway.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per outcome token; defaults to 100, maximum 1000 (100 with `include_pnl=true`). | |
| cursor | No | Opaque pagination cursor from a prior response's `next_cursor`; carries the per-token `(limit, offset)` window and overrides `limit`. Paging past the first page is cursor-only. | |
| condition | Yes | Comma-separated `condition_id`s (at most 20 distinct values; exactly one with `include_pnl=true`). Required. `condition` is the unified key across v2 (same as the feeds and `/v2/oi`); `condition_id` / `conditionId` are accepted aliases. This execution profile requires an explicit non-null value. The original optional/nullable OpenAPI declarations remain in officialOperation. | |
| include_pnl | No | Opt into per-holder position economics (default `false`; `includePnl` is an accepted alias). Adds `avg_price`, `entry_cost_usdc`, `current_price`, `current_value`, `realized_pnl`, `unrealized_pnl` and `total_pnl` to every holder row, and switches the served amounts to per-side gross balances: a wallet holding both outcomes appears under both tokens with per-side sizes and that side's economics, matching `/v2/positions` for the same wallet and token. This mode serves one market's table at a time: exactly one `condition`, `limit` at most 100. | |
| min_balance | No | Minimum net balance in shares (default 0), applied post-netting. With `include_pnl=true` it applies to the served per-side gross amount instead. |