Yes/No) and a price per outcome in 0..1. An event groups related markets — for example a presidential election event holds one market per candidate.
Markets
List markets
Paginate and filter by
active, eventId, source; sort by volume, liquidity, or end date.Trending markets
Top markets by 24h volume.
Get a market
Full market detail by
slug.Current prices
Best bid/ask, midpoint, and spread per outcome.
Order book
Full CLOB depth for both outcomes, best-first, live from the venue.
Price history
Yes-price time series over
1h…max intervals.OHLC candles
OHLC bars for the Yes outcome at your chosen interval/fidelity.
Price at time
The last Yes price at or before a given timestamp (no interpolation).
Cross-venue match
The matching market on the other venue (Kalshi ↔ Polymarket), with a confidence score and price delta.
Events
List events
Filter by
active, closed, source; sort by volume or end date.Trending events
Top events by 24h volume.
Get an event
Event detail including its child markets.
Cross-venue matches
Every child market’s counterpart on the other venue (Kalshi ↔ Polymarket) in one call.
Venues and views
Three venues, told apart by thesource field every item carries:
Polymarket’s two exchanges list mostly the same questions. The market and event lists, trending and search take
view to pick the venues:
intl(default) — Polymarket and Kalshi, exactly as before Polymarket US was added.us— Polymarket US and Kalshi, for a reader in the US.all— every venue.
all, events are listed once each (event lists, trending events and the events of a search): a Polymarket US event linked to its Polymarket twin is listed as the twin’s row. On event lists and trending events that row names it in linkedEvent; a search’s row does not. Markets are not deduplicated: a market list, trending markets and the markets of a search can return the same question from both of Polymarket’s exchanges, told apart by source.
source picks one venue instead. On market lists view is then ignored; on event lists it no longer picks the rows but still picks which venues’ pairs annotate them (pairedEvents, venueCount). An event’s detail (/events/{slug}) takes view for the same annotations of the event and its child markets; omitted, it is the event’s own (us for a Polymarket US event, intl otherwise). Any other view is a 400.
Polymarket US specifics: it publishes no 24-hour volume, so its rows carry
volume24hr: 0 and a lifetime volume — sort a US list by volume. Its rows carry no link: a Polymarket US event’s page is https://polymarket.us/event/{slug without the polymarket-us- prefix}, and a market’s is its event’s (eventSlug). Order book and trader data are Polymarket (international) only; prices, price history and candles work for every venue. The platform overview (/analytics/overview) counts Polymarket and Kalshi only and takes source=polymarket|kalshi.Cross-venue match: use the cross-venue endpoints to compare the same question across both books. The response returns the counterpart market(s), a
confidence score (0..1), and delta (current Yes minus the matched venue’s Yes) — the basis for spotting arbitrage/pricing gaps. match is null (with a reason) when the market is not in a curated group or no confident counterpart exists.