Skip to main content
GET
/
kalshi
/
orderbooks
Get Kalshi Orderbook History
curl --request GET \
  --url https://api.aisa.one/apis/v1/kalshi/orderbooks \
  --header 'Authorization: Bearer <token>'
{
  "snapshots": [
    {
      "orderbook": {
        "yes": [
          [
            75,
            100
          ]
        ],
        "no": [
          [
            25,
            100
          ]
        ],
        "yes_dollars": [
          [
            "0.75",
            100
          ]
        ],
        "no_dollars": [
          [
            "0.25",
            100
          ]
        ]
      },
      "timestamp": 1760471849407,
      "ticker": "KXNFLGAME-25AUG16ARIDEN-ARI"
    }
  ],
  "pagination": {
    "limit": 100,
    "count": 4,
    "paginationKey": "eyJ0aW1lc3RhbXAiOjE3NjA0NzAwMDAwMDAsInRpY2tlciI6IktYTkZMR0FNRS0yNUFVRzE2QVJJREVOLUFSSSIsInRvdGFsIjoxMDB9",
    "has_more": false
  }
}
Orderbook History fetches historical orderbook snapshots for a specific Kalshi market identified by its ticker over a specified time range. If no start and end times are provided, it returns the latest orderbook snapshot. Returns snapshots of the order book including yes/no bids and asks with prices in both cents and dollars. Best for: Analyzing market depth on Kalshi, tracking bid/ask spread over time, building orderbook visualizations, monitoring liquidity. Endpoint: GET /kalshi/orderbooks
Note: All timestamps are in milliseconds. Orderbook data has history starting from October 29th, 2025. When fetching the latest orderbook (without start/end times), the limit parameter is ignored.

Example

curl -X GET "https://api.aisa.one/apis/v1/kalshi/orderbooks?ticker=KXNFLGAME-25AUG16ARIDEN-ARI&start_time=1760470000000&end_time=1760480000000&limit=100" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"

Response

The response returns a snapshots array containing orderbook snapshot objects, each with an orderbook object containing yes, no, yes_dollars, and no_dollars arrays of price-quantity pairs, along with a timestamp (in milliseconds) and ticker. A pagination object with has_more and paginationKey fields supports cursor-based pagination.

Authorizations

Authorization
string
header
required

Your AIsa API key as a Bearer token.

Query Parameters

ticker
string
required

The Kalshi market ticker

Example:

"KXNFLGAME-25AUG16ARIDEN-ARI"

start_time
integer

Start time in Unix timestamp (milliseconds). Optional - if not provided along with end_time, returns the latest orderbook snapshot.

Example:

1760470000000

end_time
integer

End time in Unix timestamp (milliseconds). Optional - if not provided along with start_time, returns the latest orderbook snapshot.

Example:

1760480000000

limit
integer
default:100

Maximum number of snapshots to return (default: 100, max: 200). Ignored when fetching the latest orderbook without start_time and end_time.

Required range: x <= 200
Example:

100

paginationKey
string

Base64-encoded cursor for efficient pagination. Returned in the previous response's pagination object.

Example:

"eyJ0aW1lc3RhbXAiOjE3NjA0NzAwMDAwMDAsInRpY2tlciI6IktYTkZMR0FNRS0yNUFVRzE2QVJJREVOLUFSSSIsInRvdGFsIjoxMDB9"

Response

Kalshi orderbook history response

snapshots
object[]

Array of orderbook snapshots at different points in time

pagination
object