Skip to main content
GET
/
historical
/
kalshi
/
top-of-book
Historical top of book
curl --request GET \
  --url https://api.oddpool.com/historical/kalshi/top-of-book

Documentation Index

Fetch the complete documentation index at: https://docs.oddpool.com/llms.txt

Use this file to discover all available pages before exploring further.

Lightweight timeseries of best bid, best ask, mid, and spread. Same data as the orderbook endpoint but without the full level arrays. Ideal for charting price history.

Parameters

market_id
string
required
Kalshi market ticker (e.g., KXFEDDECISION-26APR-H0).
start_time
integer
Start time in Unix ms. Omit with end_time to get latest data.
end_time
integer
End time in Unix ms. Omit with start_time to get latest data.
granularity
string
default:"1m"
Snapshot interval: 1m or 5m.
limit
integer
default:"100"
Max rows per page (1-200).
pagination_key
string
Cursor from previous response for next page.

Example

curl -H "X-API-Key: oddpool_..." \
  "https://api.oddpool.com/historical/kalshi/top-of-book?market_id=KXFEDDECISION-26APR-H0&start_time=1774015200000&end_time=1774018800000&granularity=5m"

Response

{
  "snapshots": [
    {
      "market_id": "KXFEDDECISION-26APR-H0",
      "timestamp": 1774015256106,
      "best_yes_bid": 0.94,
      "best_yes_ask": 0.94,
      "mid": 0.94,
      "spread": 0.0
    }
  ],
  "pagination": { ... }
}
best_yes_bid and best_yes_ask are null when the book had no resting orders at sample time. Filter client-side if you only want quoted snapshots.