Home › Developers
Updated October 6, 2026 · no key · static JSON · CC BY 4.0
Use our Polymarket odds in your site, newsletter, bot, spreadsheet or research. Everything is static JSON served from our CDN, refreshed twice a day for 1675 of the most-traded markets. The only condition: credit PolymarketTrader with a visible link.
Research datasets (CSV and JSON: resolved markets with prices before close, resolution times, Polymarket vs Kalshi gaps) are listed on the free Polymarket data page.
| Endpoint | What it returns |
|---|---|
| /api/v1/odds/index.json | All tracked markets: title, category, leading outcome, probability, volume, links |
/api/v1/odds/<slug>.json | One market: every outcome's probability, 24h change, volume, 30-day history, attribution object |
| /api/v1/topics/index.json | All topics (Bitcoin, Fed, Trump, NFL …) with market counts and links |
/api/v1/topics/<topic>.json | Every live market on one topic: leading outcome, probability, 24h change, volume, end date |
| /api/v1/movers.json | 24-hour biggest movers watchlist |
| /api/v1/compare/polymarket-kalshi.json | The same events priced on Polymarket and Kalshi, with the gap in points (see Polymarket vs Kalshi) |
| /api/v1/new-markets.json | Markets opened on Polymarket in the last 7 days (no recurring or single-game markets) |
| /api/v1/calendar/<month>-<year>.json | Monthly calendar: every Polymarket market ending that month with its date, odds or result, e.g. november-2026.json (see the November 2026 calendar) |
| /api/v1/stats.json | Polymarket statistics: open events and markets, 24h volume, open interest and category split, with a daily history (see statistics) |
| /api/v1/accuracy.json · .csv | Accuracy study: about 2,000 resolved markets with the price 30, 7 and 1 day before close, the outcome, calibration, horizon and category summaries (see how accurate is Polymarket) |
/api/v1/people/index.json · /api/v1/people/<slug>.json | Every live market on a public figure (nominations, elections, appointments, Yes/No questions) (see odds on people) |
/api/v1/futures/index.json · /api/v1/futures/<slug>.json | Every season-long market on a team or player (see sports futures) |
| /api/v1/games.json | Upcoming games by league with each side's winner price (see games this week) |
| /api/v1/crypto-prices.json | Market-implied Bitcoin, Ethereum, Solana and XRP prices for the next days, from Polymarket's daily ladders (see crypto price predictions) |
| /api/v1/midterms-2026.json | Every 2026 Senate, House and governor race with each candidate's price and a rating, plus control and seat-count markets (see Senate forecast) |
| /api/v1/fed-rates.json | Every upcoming FOMC meeting's cut/hold/hike odds with the implied change, plus cut-count, year-end rate and first-cut markets (see Fed rate odds) |
| /api/v1/polymarket-kalshi-gaps.json · .csv | Every outcome priced on both Polymarket and Kalshi with the gap in points (see price gaps) |
| /api/v1/leaderboard.json · /api/v1/whales.json | Top traders by profit and volume; every trade of $10,000+ in the last 24 hours (see leaderboard, whale trades) |
| /api/v1/resolved.json | Markets resolved in the last 7 days and what won (see results) |
| /api/v1/upsets.json | Long shots priced at 20% or less a week before close that still happened (see biggest upsets) |
| /api/v1/fees.json | Live Polymarket fee schedules: taker rate and maker rebate by category (see the fee calculator) |
| /api/v1/openapi.json | OpenAPI 3 description of these endpoints |
curl -s https://polymarkettrader.com/api/v1/odds/next-french-presidential-election.json
import requests
data = requests.get("https://polymarkettrader.com/api/v1/odds/next-french-presidential-election.json").json()
for o in data["outcomes"][:3]:
print(o["name"], round(o["probability"] * 100, 1), "%")
print(data["attribution"]["text"], data["attribution"]["url"])
// JavaScript
const r = await fetch("https://polymarkettrader.com/api/v1/odds/next-french-presidential-election.json");
const d = await r.json();
console.log(d.title, d.outcomes[0].name, d.outcomes[0].probability);
// Google Sheets: IMPORTDATA reads CSV files (not JSON), e.g. the accuracy sample
=IMPORTDATA("https://polymarkettrader.com/api/v1/accuracy.csv")
Live odds are JSON, which IMPORTDATA cannot parse: load them with a short Apps Script: how to get Polymarket odds in Google Sheets.
Step-by-step guide: how to embed live Polymarket odds. Every market page has a copy-paste embed. The card updates when our page updates. Keep the text link under the iframe — it is the attribution. On a light page add ?theme=light to the card address (?theme=auto follows the reader's setting).
<iframe src="https://polymarkettrader.com/embed/odds/next-french-presidential-election/" width="100%" height="300" style="border:0;max-width:560px" loading="lazy"></iframe> <p><a href="https://polymarkettrader.com/odds/next-french-presidential-election/">Market odds</a> via <a href="https://polymarkettrader.com/">PolymarketTrader</a></p>
Every topic page has its own card too — the five most-traded markets on the topic, e.g.:
<iframe src="https://polymarkettrader.com/embed/topic/bitcoin/" width="100%" height="280" style="border:0;max-width:560px" loading="lazy" title="Bitcoin odds on Polymarket"></iframe> <p><a href="https://polymarkettrader.com/odds/bitcoin/">Bitcoin odds</a> via <a href="https://polymarkettrader.com/">PolymarketTrader</a></p>
The biggest-movers widget can be embedded the same way.
import requests, time
URL = "https://polymarkettrader.com/api/v1/odds/index.json"
seen = {}
while True:
for m in requests.get(URL).json()["markets"]:
prev = seen.get(m["slug"])
if prev is not None and abs(m["probability"] - prev) >= 0.05:
print(f"{m['title']}: {prev:.0%} -> {m['probability']:.0%} {m['url']}")
seen[m["slug"]] = m["probability"]
time.sleep(6 * 3600)
Data is published under Creative Commons BY 4.0. Credit “PolymarketTrader” and link to the market page or to https://polymarkettrader.com/. Each JSON file includes an attribution object with ready-made HTML. Educational data only — not trading signals or financial advice. Prices come from Polymarket's public APIs; we are not affiliated with Polymarket.