Polymarket API data
What data the Polymarket API serves, and what it leaves out
Polymarket's API is free and covers more than people expect — full price history, resolved markets, executed trades. There is one clear gap, and it is the one that matters for execution research.
Checked against the live API on 2026-08-24.
Free, no key
Polymarket's own surfaces
| Surface | Serves | History |
|---|---|---|
| Gamma — markets, events, series | Metadata, outcomes, resolution, volume, liquidity | Full, including markets resolved years ago |
| CLOB — prices-history | Per-token price series | 1-minute buckets, back to market creation |
| CLOB — book | Full bid and ask ladders | None. Current state only |
| CLOB — midpoint, spread | Derived top-of-book values | None. Current state only |
| Data API — trades | Executed trades | Full |
| Websocket — market channel | Live book snapshots and price_change deltas | Live only, no replay, no sequence numbers |
No key, no paid tier, no subscription. What costs money on Polymarket is trading — fees and Polygon gas — not access to data. The pricing question is covered separately.
The gap is order book depth
Three of the six surfaces above are current state only. The book, the midpoint and the spread all describe the market as it is at the moment you ask. Nothing archives them.
That is fine until a question depends on resting liquidity rather than executed price. How much size was available at the top of book? What would a 100-share order have cost? How did depth migrate as the market resolved? A price series cannot answer any of those, and neither can a trade log — trades tell you what filled, not what was available to fill against.
Reconstructing the book from the websocket archive is the obvious workaround and it does not hold up. Replaying a public delta archive against its own snapshots diverged at 67.8% of 381,093 checkpoints, with 6.4% coming back crossed. The feed carries no sequence numbers, so dropped messages leave no gap to detect. The measurement is written up here.
Where the depth comes from instead
It has to be captured live. PolyOrderbooks records full L2 ladders at 1-second resolution across Polymarket's crypto markets and serves them over REST, with the resolved outcome attached to every row.
| Endpoint | Returns |
|---|---|
GET /v1/markets | Discovery across 819,000+ catalogued markets |
GET /v1/markets/{id}/books | Full L2 ladders at 1-second resolution |
GET /v1/markets/{id}/prices | Per-token price series at the same resolution |
GET /v1/markets/{id}/metrics | Spread, liquidity and volume over time |
GET /v1/tokens/{id}/books | A single outcome, when the market view is too wide |
GET /v1/events, /v1/series, /v1/tags | The catalogue above market level |
- Quickstart — a working request in under a minute.
- The free tier queries at 1-second resolution, the same as the paid plans, over a shorter history window.
- A free sample with no signup if you would rather see the data before the API.
FAQ
What data does the Polymarket API provide?
Market metadata and resolution through Gamma, per-token price history down to 1-minute buckets through the CLOB, executed trades through the data API, and the live order book through /book and the websocket. All of it is free and needs no key.
Does the Polymarket API provide historical order book data?
No. The /book endpoint returns the book as it stands now, and there is no historical equivalent or date parameter. Order book depth is not archived at any granularity, so unless it was recorded live while the market traded it does not exist.
Is there an API for Polymarket historical order books?
Not from Polymarket. PolyOrderbooks serves full L2 depth at 1-second resolution over REST for Polymarket's crypto markets, with resolved outcomes attached. The free tier queries at the same resolution as the paid ones over a shorter history window.
Can I reconstruct order books from Polymarket's websocket feed?
Only going forward, and only with care. The feed carries roughly 24,000 events per second across all markets with no sequence numbers, so dropped messages cannot be detected. Replaying an archived delta stream against its own snapshots diverged at 67.8% of 381,093 checkpoints. A live collector avoids this by periodically re-reading the full book; a replay has nothing to re-read against.
How many Polymarket markets can I query?
PolyOrderbooks catalogues over 819,000 markets and holds more than 779 million order book snapshots. Coverage is Polymarket's crypto category: up/down contracts at 5m, 15m and 4h, price thresholds, and related event markets.
Do I need to pay for Polymarket API data?
Not for Polymarket's own API, which is free. Historical order book depth is a separate matter because it has to be captured and stored — PolyOrderbooks has a free tier at 1-second resolution, with paid plans extending the history window and request volume.