Guide
Polymarket API: how to get real-time Polymarket data
20 June 2026 · 7 min read
If you want live Polymarket data — prices, trades, whale flow, or which markets are moving — you have two paths: Polymarket's own low-level APIs, or a layer that normalises and enriches them for you. This guide covers both honestly, so you can pick the right one.
Does Polymarket have an API?
Yes — Polymarket exposes several public APIs, and they're genuinely good. There are three you'll meet:
- Gamma API (
gamma-api.polymarket.com) — markets and events: questions, outcomes, categories, metadata, current prices. - CLOB API (
clob.polymarket.com) — the central limit order book: live prices, the book, and order placement (this is also where the real-time WebSocket lives). - Data API (
data-api.polymarket.com) — historical trades and holder/position data.
They're free within rate limits and well-documented. If you just need to read a market or place an order, go straight to them — you don't need anything else.
So what's actually hard?
The APIs are the easy part. The work shows up when you try to turn them into something useful in production:
- Real-time plumbing — the CLOB WebSocket needs reconnect logic, heartbeat handling, and message parsing before it's reliable.
- Signals — "a whale just bought," "this market is mispriced," "volume just surged" aren't endpoints. You derive them from the raw stream, and tuning them is its own project.
- Resolution truth — the genuinely hard one. When a market settles, what actually won? Scraped "resolved" fields drift, and any backtest or signal built on a wrong label inherits the error.
- Cross-platform — the moment you also want Kalshi, you're maintaining a second, differently-shaped pipeline and reconciling the two.
Reading Polymarket data directly (the quick version)
For a one-off read, the Gamma API is the fastest start — no key needed:
curl "https://gamma-api.polymarket.com/markets?active=true&limit=5"
That's perfect for a script. It stops being perfect when you need it live, normalised, signal-ready, and trustworthy at settlement — which is where most builders end up.
The shortcut: a normalised intelligence layer
Idmon sits on top of the raw markets and gives you the part you'd otherwise build: normalised real-time signals (whale flow, movers, mispricing), calibrated, on-chain-anchored resolution labels, and one schema across Polymarket and Kalshi — delivered by REST, WebSocket, or signed webhooks.
# recent signals, one authenticated call
curl -H "Authorization: Bearer YOUR_KEY" \
"https://api.idmon.io/api/alerts/recent?limit=20"
There are code examples in curl, Python, and Node, and the full API docs cover the WebSocket and webhook-signature details.
Which should you use?
| If you… | Use |
|---|---|
| Need to read a market or place an order | Polymarket's Gamma / CLOB API directly |
| Want live signals without building ingestion | Idmon (REST / WebSocket) |
| Want events pushed into Discord or your app | Idmon (signed webhooks) |
| Need trustworthy resolution + Polymarket and Kalshi in one schema | Idmon |
There's no shame in starting with Polymarket's APIs directly — many builds do. You reach for a layer like Idmon when the ingestion, signal, and resolution work starts costing you more than the data itself.
Try it free — grab a dev key. A free developer key (no credit card) lets you try the REST API — see the docs. When you want real-time push, headroom, calibrated resolution, and a commercial licence, request a key and you'll be live within a business day.
FAQ
Is there an official Polymarket API?
Yes — Gamma (markets/events), CLOB (order book + trading + WebSocket), and a data API (trade history). Free within rate limits, but lower-level: you build and maintain the pipeline, and they don't provide normalised signals or calibrated resolution.
How do I get real-time Polymarket data?
Connect to the CLOB WebSocket directly and handle reconnects/parsing yourself, or use a layer like Idmon that delivers normalised real-time signals by REST, WebSocket, or signed webhooks across Polymarket and Kalshi.
Is the Polymarket API free?
Polymarket's own APIs are free within their rate limits. Idmon offers a free developer key to try (no credit card) plus paid tiers for real-time push, higher limits, calibrated resolution, and a commercial licence.
Can I get Polymarket data by webhook?
Polymarket's native APIs are pull/stream only. To receive events pushed to your own endpoint or Discord by signed webhook, use Idmon — which adds webhooks alongside REST and WebSocket.
Related: Kalshi API · Polymarket vs Kalshi · Polymarket whale tracking · Resolution & settlement risk · Webhooks vs REST vs WebSocket · API documentation