v2

latestOpenAPI 3.1.0Proprietary2026-08-054985119.4 KB
tradeprints

Get Tradeprints

Return the most recent trades for one or more markets, sourced directly from the exchanges. Markets are fetched concurrently with a small semaphore (MAX_CONCURRENT_FETCHES) so a long input list never fans out into a thundering herd, and the result list preserves the input order. A failure on any single market becomes a not_found row with a message — the call as a whole does not 500.

Per-market lookup paths:

  • Kalshi: GET /markets/trades?ticker=...&limit=...
  • Polymarket: GET https://data-api.polymarket.com/trades?market=<token>&limit=... (both YES and NO legs are fetched and the NO leg is flipped into YES-price terms)

Trades are sorted newest-first within each market. Prices are normalised to 0-1.

Use this together with the /v1/ws/tradeprints WebSocket: hit this endpoint to backfill the tape on page load, then dedup live WS events by exchange_trade_id.

get/v1/tradeprints

Query parameters

river_idsinteger[] required

River market IDs (repeat the param for each)

River market IDs (repeat the param for each)

limitinteger

Max trades returned per market

Max trades returned per market

Response

Successful Response