GET /v1/markets/list
GET /v1/markets/list
Section titled “GET /v1/markets/list”Filtered, sorted, and paginated market listing. Supports category filtering, volume thresholds, and activity filters.
Parameters
Section titled “Parameters”| Parameter | Type | Default | Description |
|---|---|---|---|
count | integer | 50 | Results per page. Max 500. |
sort | string | "volume" | Sort field: volume, spread, price, updated |
category | string | — | Filter by category (case-insensitive substring match) |
min_volume | number | 0 | Minimum 24h volume in USD |
active_only | boolean | false | Only markets with orderbook activity in last hour |
cursor | integer | 0 | Pagination offset |
Request
Section titled “Request”curl -s "https://polynode.dev/v1/markets/list?category=crypto&min_volume=1000&sort=volume&count=10" \ -H "x-api-key: pn_live_YOUR_KEY"Response
Section titled “Response”{ "count": 10, "total": 847, "cursor": 0, "next_cursor": 10, "markets": [ { "token_id": "21742633...", "question": "Will Bitcoin hit $100K in 2026?", "slug": "bitcoin-100k-2026", "outcomes": ["Yes", "No"], "category": "Crypto", "last_price": 0.72, "volume_24h": 48293.50, "trade_count_24h": 342, "last_trade_at": 1709136045000, "spread": 0.02, "mid_price": 0.72 } ]}Pagination
Section titled “Pagination”Use cursor and next_cursor for pagination:
# Page 1curl "https://polynode.dev/v1/markets/list?count=50" -H "x-api-key: ..."
# Page 2 (use next_cursor from previous response)curl "https://polynode.dev/v1/markets/list?count=50&cursor=50" -H "x-api-key: ..."When next_cursor is null, there are no more results.
Sort Options
Section titled “Sort Options”| Value | Description |
|---|---|
volume | 24h volume descending (default) |
spread | Bid-ask spread ascending (tightest first) |
price | Mid price descending |
updated | Most recently traded first |