Skip to main content
Every Polymarket page you can open in a browser has numbers behind it: the odds on each outcome, the bid and ask, volume, who holds what. Send the page’s link with "output": "json" and you get those numbers as fields, with prices as they stand at the time of the request. You don’t need a Polymarket account. Each link costs 1 credit, and big lists cost a little more (credits).

Example

The item’s result, shortened to one market:
A price runs from 0 to 1 and is the market’s implied chance, so 0.1485 and "probability": 14.85 say the same thing. priceSource: "clob" means the price came from the live order book. The full result also has open interest, each market’s rules, resolution state, fees and token IDs, Polymarket’s own summary of the event in marketContext, and related events. Links in other languages (polymarket.com/de/...) work too. Account, deposit and trading pages aren’t read as data.

A list of markets

A category page lists events. Add view=markets to get one row per market instead, and _s to sort it the way Polymarket’s own pages do: volume_24hr, volume, liquidity, start_date:desc, end_date:asc (ending soon), competitive or closed_time:desc. _sts=resolved lists resolved markets, and count sets how many rows you want.
The first of the five rows, shortened:
change1dPoints is the 24-hour move in percentage points. The conditionId also appears in price history, trade and position results, so you can join them.

Polymarket US

Polymarket US (polymarket.us) is a separate exchange with its own markets and prices. Its event, game, category (/category/politics), sports, search, price history and order book links work the same way, and prices come back in USD. A game link also takes ?tab=stats for the box score and player stats, or ?tab=play-by-play for every play. Polymarket US doesn’t publish trader data or the volume and liquidity of its lists, so its leaderboard and profile links fail free and those fields are null.

Compare with Polymarket US and Kalshi

Add compare=polymarket-us,kalshi to a category or search link and Spidra finds the same questions on each venue and puts their prices side by side:
That search matched 15 pairs, five for each pair of venues. One of them, shortened:
netEdge is what’s left after buying Yes on one venue, No on the other, and paying both taker fees. Read matchNotes before you act on a gap: these two markets settle on the same Fed meeting but close 14 days apart.

Credits

  • Each link is 1 credit.
  • Lists, trades, positions, holders, comments and leaderboards include 100 rows in that credit, and each further 100 rows is 1 more. A leaderboard link with count=250 cost 3 credits.
  • Price history and profit over time include 1,000 points, and each further 1,000 is 1 more.
  • A compare link costs 1 credit for each venue it reads. The example above read three, so it cost 3.
A link that finds nothing is free: a market that doesn’t exist, a search or filter with no results, a compare with no matching pairs, or a Polymarket US trader page.

Limits

  • Prices are what Polymarket shows at the moment of the request, which fetchedAt records.
  • On a big event, the 50 busiest open markets get live order book prices. The rest show "priceSource": "gamma" and can be a few minutes behind, as can market lists.
  • Polymarket US prices can be up to 30 seconds old.
  • Polymarket doesn’t allow trading from the US and some other countries. That rule is about trading, so reading market data isn’t affected.

Templates

Templates cover the common Polymarket jobs, such as event odds, odds history, order books, top traders and their portfolios, big trades, markets ending soon and sports odds, plus Polymarket US reports and price gaps between Polymarket, Polymarket US and Kalshi.
Check Polymarket’s terms before you collect data from it. You’re responsible for how you use what you collect.