Retrieve historical order-book snapshots for one Kalshi market. Returns historical Kalshi order-book snapshots with price levels, timestamps and pagination information. Use one Toolmu account and a shared prepaid balance across available Tools. Pay per use; no separate supplier subscription is required. The current execution ceiling for this Tool is 0.0288 Toolmu credits per call. This is a maximum, not the settled charge. Before execution, get the current Tool contract and check availability, the latest maximumCredits, your balance and budget. Supplier response credits_used, when present, describes supplier API credits and is not the Toolmu customer charge.
Up to 0.0288 credits / call
The final charge is based on confirmed usage. Unused reserved credits return to your available balance.
Surf
Kalshi Order Book History · Surf
Retrieve historical order-book snapshots for one Kalshi market. Returns historical Kalshi order-book snapshots with price levels, timestamps and pagination information. Use one Toolmu account and a shared prepaid balance across available Tools. Pay per use; no separate supplier subscription is required. The current execution ceiling for this Tool is 0.0288 Toolmu credits per call. This is a maximum, not the settled charge. Before execution, get the current Tool contract and check availability, the latest maximumCredits, your balance and budget. Supplier response credits_used, when present, describes supplier API credits and is not the Toolmu customer charge.
You receive
Returns historical Kalshi order-book snapshots with price levels, timestamps and pagination information. Use the documented millisecond encoding and cent-denominated price levels. An historical book does not promise current executable liquidity.
Start with your task
Show past buyer and seller prices in [a Kalshi market link] over [7 days]. Find the market from the link; if several match, ask which question I mean, not for a code. Explain changes with recorded times and prices in cents; note old offers may not be available now.
Inputs & outputs
Inspect the current inputs, availability, and maximum charge before starting.
Input schema
Input schema
Field / Path
Type
Requirement
Meaning
queryParamsqueryParams
object
Required
Required fields
ticker
limitqueryParams.limit
integer
Optional
Maximum number of snapshots to return. Defaults to 100.
Default
100
Minimum
1
Maximum
200
tickerqueryParams.ticker
string
Required
Kalshi market ticker. Example: KXCITRINI-28JUL01.
Minimum length
1
end_timequeryParams.end_time
integer
Optional
End time in Unix milliseconds. 0 means current time.
Minimum
-9007199254740991
Maximum
9007199254740991
start_timequeryParams.start_time
integer
Optional
Start time in Unix milliseconds. 0 means 7 days ago.
Minimum
-9007199254740991
Maximum
9007199254740991
pagination_keyqueryParams.pagination_key
string
Optional
Base64 cursor for pagination.
Minimum length
1
View raw JSON
{
"type": "object",
"required": [
"queryParams"
],
"properties": {
"queryParams": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"ticker"
],
"~standard": {
"vendor": "zod",
"version": 1,
"jsonSchema": {}
},
"properties": {
"limit": {
"type": "integer",
"default": 100,
"maximum": 200,
"minimum": 1,
"description": "Maximum number of snapshots to return. Defaults to 100."
},
"ticker": {
"type": "string",
"minLength": 1,
"description": "Kalshi market ticker. Example: KXCITRINI-28JUL01."
},
"end_time": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "End time in Unix milliseconds. 0 means current time."
},
"start_time": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Start time in Unix milliseconds. 0 means 7 days ago."
},
"pagination_key": {
"type": "string",
"minLength": 1,
"description": "Base64 cursor for pagination."
}
},
"additionalProperties": false
}
},
"additionalProperties": false
}
Result schema
Output fields have not been documented yet.
Additional notes
Retrieve historical order-book snapshots for one Kalshi market
How to use this Tool
Use the deployed input fields below. Required fields must be supplied; optional filters narrow the result.
queryParams.limit (Optional): Maximum number of snapshots to return. Defaults to 100.
queryParams.end_time (Optional): End time in Unix milliseconds. 0 means current time.
queryParams.start_time (Optional): Start time in Unix milliseconds. 0 means 7 days ago.
queryParams.pagination_key (Optional): Base64 cursor for pagination.
What this Tool returns
Returns historical Kalshi order-book snapshots with price levels, timestamps and pagination information.
Response fields and how to read them
The table follows the official response contract, including nested fields and useful response metadata. [] denotes an array item. Required means required within its parent object, not that a conditional parent always exists. A nullable type permits null; an optional field can be absent. Use the documented conditions below to distinguish missing, empty and zero values. Units and reporting windows apply only where explicitly documented.
Field, type and presence
Meaning and conditions
pagination
object; Required within parent
Schema-defined object or item group: #/components/schemas/V2CursorPagination. Read its nested fields below; the group has no separate documented meaning.
pagination.count
integer; Required within parent; format: int64
Items in current response
pagination.has_more
boolean; Required within parent
Whether more data is available
pagination.limit
integer; Required within parent; format: int64
Requested limit
pagination.pagination_key
string; Optional within parent
Base64 cursor for next page
snapshots
array | null; Required within parent
The official contract declares this field but does not explain its meaning or units. Treat its interpretation as unverified; do not infer completeness or a unit from the field name.
snapshots.[].ask_depth
integer; Required within parent; format: int64
Total ask depth (contracts)
snapshots.[].best_ask
integer; Required within parent; format: int64
Best ask price (cents)
snapshots.[].best_bid
integer; Required within parent; format: int64
Best bid price (cents)
snapshots.[].bid_depth
integer; Required within parent; format: int64
Total bid depth (contracts)
snapshots.[].sequence
integer; Required within parent; format: int64
Sequence number
snapshots.[].ticker
string; Required within parent
Market ticker
snapshots.[].timestamp
integer; Required within parent; format: int64
Snapshot time in milliseconds
snapshots.[].yes_asks
array | null; Required within parent
Yes sell orders, price ascending
snapshots.[].yes_asks.[].price
integer; Required within parent; format: int64
Price in cents (1-99)
snapshots.[].yes_asks.[].size
integer; Required within parent; format: int64
Number of contracts at this price level
snapshots.[].yes_bids
array | null; Required within parent
Yes buy orders, price descending
snapshots.[].yes_bids.[].price
integer; Required within parent; format: int64
Price in cents (1-99)
snapshots.[].yes_bids.[].size
integer; Required within parent; format: int64
Number of contracts at this price level
Coverage, units and freshness
Use the documented millisecond encoding and cent-denominated price levels. An historical book does not promise current executable liquidity.
Inspect any returned observation time, cache status, watermark, pagination and errors using their documented meanings. A successful request alone does not establish complete coverage. Where no freshness or completeness guarantee is documented, treat it as unknown. Saved Examples are historical and viewing them does not refresh data or execute a new call.
Data source and references
Surf supplies this endpoint through its Data API. Response contract and deployed Tool inputs reviewed on 2026-10-03 against official OpenAPI v0.2.102. This is a contract review date, not a data observation time. Coverage depends on the selected endpoint and request.
Use one Toolmu account and a shared prepaid balance across available Tools. Pay per use; no separate supplier subscription is required. The current execution ceiling for this Tool is 0.0288 Toolmu credits per call. This is a maximum, not the settled charge. Before execution, get the current Tool contract and check availability, the latest maximumCredits, your balance and budget. Supplier response credits_used, when present, describes supplier API credits and is not the Toolmu customer charge.
Example request: For [a Kalshi market link], compare recorded buyer and seller prices over [the past 30 days]. Explain why past prices may not be available now.
Show past buyer and seller prices in [a Kalshi market link] over [7 days]. Find the market from the link; if several match, ask which question I mean, not for a code. Explain changes with recorded times and prices in cents; note old offers may not be available now.
Choose exact dates
Example request: Show offers recorded for [a Kalshi market link] from [October 1, 2026] to [October 7, 2026], with their times and prices in cents.
Questions about this tool.
Inputs, results and details to know before running it.
queryParams.limit (Optional): Maximum number of snapshots to return. Defaults to 100. queryParams.ticker (Required): Kalshi market ticker. Example: KXCITRINI-28JUL01. queryParams.end_time (Optional): End time in Unix milliseconds. 0 means current time. queryParams.start_time (Optional): Start time in Unix milliseconds. 0 means 7 days ago. queryParams.pagination_key (Optional): Base64 cursor for pagination.
Returns historical Kalshi order-book snapshots with price levels, timestamps and pagination information.
Use the documented millisecond encoding and cent-denominated price levels. An historical book does not promise current executable liquidity.
Use one Toolmu account and a shared prepaid balance across available Tools. Pay per use; no separate supplier subscription is required. The current execution ceiling for this Tool is 0.0288 Toolmu credits per call. This is a maximum, not the settled charge. Before execution, get the current Tool contract and check availability, the latest maximumCredits, your balance and budget. Supplier response credits_used, when present, describes supplier API credits and is not the Toolmu customer charge.
Ask your agent to Retrieve historical order-book snapshots for one Kalshi market. Provide the required inputs above. If Toolmu is already connected, reuse that connection; otherwise use the setup instructions on this page. Before a paid execution, the agent must read the current Tool contract and check availability, the credit ceiling, balance, budget and your authorization. It should then execute the Tool and explain the returned fields and limitations.
Inspect any returned observation time, cache status, watermark, pagination and errors using their documented meanings. A successful request alone does not establish complete coverage. Where no freshness or completeness guarantee is documented, treat it as unknown. Saved Examples are historical and viewing them does not refresh data or execute a new call.