Kalshi historical API
The historical API from Kalshi — 7 operation(s) for historical.
The historical API from Kalshi — 7 operation(s) for historical.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/kalshi-historical-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Kalshi Trade API Manual Endpoints account Historical API
version: 3.19.0
description: Manually defined OpenAPI spec for endpoints being migrated to spec-first approach
servers:
- url: https://external-api.kalshi.com/trade-api/v2
description: Production Trade API server
- url: https://api.elections.kalshi.com/trade-api/v2
description: Production shared API server, also supported
- url: https://external-api.demo.kalshi.co/trade-api/v2
description: Demo Trade API server
- url: https://demo-api.kalshi.co/trade-api/v2
description: Demo shared API server, also supported
tags:
- name: historical
paths:
/historical/cutoff:
get:
operationId: GetHistoricalCutoff
summary: Get Historical Cutoff Timestamps
description: 'Returns the cutoff timestamps that define the boundary between **live** and **historical** data.
## Cutoff fields
- `market_settled_ts` : Markets that **settled** before this timestamp, and their candlesticks, must be accessed via `GET /historical/markets` and `GET /historical/markets/{ticker}/candlesticks`.
- `trades_created_ts` : Trades that were **filled** before this timestamp must be accessed via `GET /historical/fills`.
- `orders_updated_ts` : Orders that were **canceled or fully executed** before this timestamp must be accessed via `GET /historical/orders`. Resting (active) orders are always available in `GET /portfolio/orders`.
'
tags:
- historical
responses:
'200':
description: Historical cutoff timestamps retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/GetHistoricalCutoffResponse'
'500':
description: Internal server error
/historical/markets/{ticker}/candlesticks:
get:
operationId: GetMarketCandlesticksHistorical
summary: Get Historical Market Candlesticks
description: ' Endpoint for fetching historical candlestick data for markets that have been archived from the live data set. Time period length of each candlestick in minutes. Valid values: 1 (1 minute), 60 (1 hour), 1440 (1 day).'
tags:
- historical
parameters:
- name: ticker
in: path
required: true
description: Market ticker - unique identifier for the specific market
schema:
type: string
- name: start_ts
in: query
required: true
description: Start timestamp (Unix timestamp). Candlesticks will include those ending on or after this time.
schema:
type: integer
format: int64
- name: end_ts
in: query
required: true
description: End timestamp (Unix timestamp). Candlesticks will include those ending on or before this time.
schema:
type: integer
format: int64
- name: period_interval
in: query
required: true
description: Time period length of each candlestick in minutes. Valid values are 1 (1 minute), 60 (1 hour), or 1440 (1 day).
schema:
type: integer
enum:
- 1
- 60
- 1440
x-oapi-codegen-extra-tags:
validate: required,oneof=1 60 1440
responses:
'200':
description: Candlesticks retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/GetMarketCandlesticksHistoricalResponse'
'400':
description: Bad request
'404':
description: Not found
'500':
description: Internal server error
/historical/fills:
get:
operationId: GetFillsHistorical
summary: Get Historical Fills
description: ' Endpoint for getting all historical fills for the member. A fill is when a trade you have is matched.'
tags:
- historical
security:
- kalshiAccessKey: []
kalshiAccessSignature: []
kalshiAccessTimestamp: []
parameters:
- $ref: '#/components/parameters/TickerQuery'
- $ref: '#/components/parameters/MaxTsQuery'
- $ref: '#/components/parameters/LimitQuery'
- $ref: '#/components/parameters/CursorQuery'
responses:
'200':
description: Fills retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/GetFillsResponse'
'400':
description: Bad request
'401':
description: Unauthorized
'404':
$ref: '#/components/responses/NotFoundError'
'500':
description: Internal server error
/historical/orders:
get:
operationId: GetHistoricalOrders
summary: Get Historical Orders
description: ' Endpoint for getting orders that have been archived to the historical database.'
tags:
- historical
security:
- kalshiAccessKey: []
kalshiAccessSignature: []
kalshiAccessTimestamp: []
parameters:
- $ref: '#/components/parameters/TickerQuery'
- $ref: '#/components/parameters/MaxTsQuery'
- $ref: '#/components/parameters/LimitQuery'
- $ref: '#/components/parameters/CursorQuery'
responses:
'200':
description: Historical orders retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/GetOrdersResponse'
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/UnauthorizedError'
'500':
$ref: '#/components/responses/InternalServerError'
/historical/trades:
get:
operationId: GetTradesHistorical
summary: Get Historical Trades
description: ' Endpoint for getting all historical trades for all markets. Trades that were filled before the historical cutoff are available via this endpoint. See [Historical Data](https://docs.kalshi.com/getting_started/historical_data) for details.'
tags:
- historical
parameters:
- $ref: '#/components/parameters/TickerQuery'
- $ref: '#/components/parameters/MinTsQuery'
- $ref: '#/components/parameters/MaxTsQuery'
- $ref: '#/components/parameters/MarketLimitQuery'
- $ref: '#/components/parameters/CursorQuery'
responses:
'200':
description: Historical trades retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/GetTradesResponse'
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/InternalServerError'
/historical/markets:
get:
operationId: GetHistoricalMarkets
summary: Get Historical Markets
description: 'Endpoint for getting markets that have been archived to the historical database. Filters are mutually exclusive.
'
tags:
- historical
parameters:
- $ref: '#/components/parameters/MarketLimitQuery'
- $ref: '#/components/parameters/CursorQuery'
- $ref: '#/components/parameters/TickersQuery'
- $ref: '#/components/parameters/SingleEventTickerQuery'
- $ref: '#/components/parameters/SeriesTickerQuery'
- $ref: '#/components/parameters/MveHistoricalFilterQuery'
responses:
'200':
description: Historical markets retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/GetMarketsResponse'
'400':
$ref: '#/components/responses/BadRequestError'
'500':
$ref: '#/components/responses/InternalServerError'
/historical/markets/{ticker}:
get:
operationId: GetHistoricalMarket
summary: Get Historical Market
description: ' Endpoint for getting data about a specific market by its ticker from the historical database.'
tags:
- historical
parameters:
- $ref: '#/components/parameters/TickerPath'
responses:
'200':
description: Historical market retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/GetMarketResponse'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/InternalServerError'
components:
schemas:
Market:
type: object
required:
- ticker
- event_ticker
- market_type
- yes_sub_title
- no_sub_title
- created_time
- updated_time
- open_time
- close_time
- latest_expiration_time
- settlement_timer_seconds
- status
- notional_value_dollars
- yes_bid_dollars
- yes_ask_dollars
- no_bid_dollars
- no_ask_dollars
- yes_bid_size_fp
- yes_ask_size_fp
- last_price_dollars
- previous_yes_bid_dollars
- previous_yes_ask_dollars
- previous_price_dollars
- volume_fp
- volume_24h_fp
- liquidity_dollars
- open_interest_fp
- result
- can_close_early
- fractional_trading_enabled
- expiration_value
- rules_primary
- rules_secondary
- price_level_structure
- price_ranges
properties:
ticker:
type: string
event_ticker:
type: string
market_type:
type: string
enum:
- binary
- scalar
description: Identifies the type of market
title:
type: string
deprecated: true
x-go-type-skip-optional-pointer: true
subtitle:
type: string
deprecated: true
x-go-type-skip-optional-pointer: true
yes_sub_title:
type: string
description: Shortened title for the yes side of this market
no_sub_title:
type: string
description: Shortened title for the no side of this market
created_time:
type: string
format: date-time
updated_time:
type: string
format: date-time
description: Time of the last non-trading metadata update.
open_time:
type: string
format: date-time
close_time:
type: string
format: date-time
expected_expiration_time:
type:
- string
- 'null'
format: date-time
x-omitempty: true
description: Time when this market is expected to expire
expiration_time:
type: string
format: date-time
deprecated: true
x-go-type-skip-optional-pointer: true
latest_expiration_time:
type: string
format: date-time
description: Latest possible time for this market to expire
settlement_timer_seconds:
type: integer
description: The amount of time after determination that the market settles
status:
type: string
enum:
- initialized
- inactive
- active
- closed
- determined
- disputed
- amended
- finalized
description: The current status of the market in its lifecycle.
response_price_units:
type: string
enum:
- usd_cent
deprecated: true
description: 'DEPRECATED: Use price_level_structure and price_ranges instead.'
x-go-type-skip-optional-pointer: true
yes_bid_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: Price for the highest YES buy offer on this market in dollars
yes_bid_size_fp:
$ref: '#/components/schemas/FixedPointCount'
description: Total contract size of orders to buy YES at the best bid price (fixed-point count string).
yes_ask_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: Price for the lowest YES sell offer on this market in dollars
yes_ask_size_fp:
$ref: '#/components/schemas/FixedPointCount'
description: Total contract size of orders to sell YES at the best ask price (fixed-point count string).
no_bid_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: Price for the highest NO buy offer on this market in dollars
no_ask_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: Price for the lowest NO sell offer on this market in dollars
last_price_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: Price for the last traded YES contract on this market in dollars
volume_fp:
$ref: '#/components/schemas/FixedPointCount'
description: String representation of the market volume in contracts
volume_24h_fp:
$ref: '#/components/schemas/FixedPointCount'
description: String representation of the 24h market volume in contracts
result:
type: string
enum:
- 'yes'
- 'no'
- scalar
- ''
can_close_early:
type: boolean
fractional_trading_enabled:
type: boolean
deprecated: true
description: Deprecated. This flag is always `true` and carries no information. Will be removed after a pre-announcement with the removal date.
open_interest_fp:
$ref: '#/components/schemas/FixedPointCount'
description: String representation of the number of contracts bought on this market disconsidering netting
notional_value_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: The total value of a single contract at settlement in dollars
previous_yes_bid_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: Price for the highest YES buy offer on this market a day ago in dollars
previous_yes_ask_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: Price for the lowest YES sell offer on this market a day ago in dollars
previous_price_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: Price for the last traded YES contract on this market a day ago in dollars
liquidity_dollars:
$ref: '#/components/schemas/FixedPointDollars'
deprecated: true
description: 'DEPRECATED: This field is deprecated and will always return "0.0000".'
settlement_value_dollars:
$ref: '#/components/schemas/FixedPointDollars'
x-omitempty: true
description: The settlement value of the YES/LONG side of the contract in dollars. Only filled after determination
settlement_ts:
type:
- string
- 'null'
format: date-time
x-omitempty: true
description: Timestamp when the market was settled. Only filled for settled markets
expiration_value:
type: string
description: The value that was considered for the settlement
occurrence_datetime:
type:
- string
- 'null'
format: date-time
description: The recorded datetime when the underlying event occurred, if available
fee_waiver_expiration_time:
type:
- string
- 'null'
format: date-time
x-omitempty: true
description: Time when this market's fee waiver expires
early_close_condition:
type:
- string
- 'null'
x-omitempty: true
description: The condition under which the market can close early
x-go-type-skip-optional-pointer: true
strike_type:
type: string
enum:
- greater
- greater_or_equal
- less
- less_or_equal
- between
- functional
- custom
- structured
x-omitempty: true
description: Strike type defines how the market strike is defined and evaluated
x-go-type-skip-optional-pointer: true
floor_strike:
type:
- number
- 'null'
format: double
x-omitempty: true
description: Minimum expiration value that leads to a YES settlement
cap_strike:
type:
- number
- 'null'
format: double
x-omitempty: true
description: Maximum expiration value that leads to a YES settlement
functional_strike:
type:
- string
- 'null'
x-omitempty: true
description: Mapping from expiration values to settlement values
custom_strike:
type:
- object
- 'null'
x-omitempty: true
description: Expiration value for each target that leads to a YES settlement
rules_primary:
type: string
description: A plain language description of the most important market terms
rules_secondary:
type: string
description: A plain language description of secondary market terms
mve_collection_ticker:
type: string
x-omitempty: true
description: The ticker of the multivariate event collection
x-go-type-skip-optional-pointer: true
mve_selected_legs:
type: array
x-omitempty: true
items:
$ref: '#/components/schemas/MveSelectedLeg'
x-go-type-skip-optional-pointer: true
primary_participant_key:
type:
- string
- 'null'
x-omitempty: true
price_level_structure:
type: string
description: Price level structure for this market, defining price ranges and tick sizes
price_ranges:
type: array
description: Valid price ranges for orders on this market
items:
$ref: '#/components/schemas/PriceRange'
is_provisional:
type: boolean
x-omitempty: true
description: If true, the market may be removed after determination if there is no activity on it
x-go-type-skip-optional-pointer: true
exchange_index:
allOf:
- $ref: '#/components/schemas/ExchangeIndex'
x-go-type-skip-optional-pointer: true
PriceDistributionHistorical:
type: object
required:
- open
- low
- high
- close
- mean
- previous
properties:
open:
allOf:
- $ref: '#/components/schemas/FixedPointDollars'
description: Price of the first trade during the candlestick period (in dollars). Null if no trades occurred.
low:
allOf:
- $ref: '#/components/schemas/FixedPointDollars'
description: Lowest trade price during the candlestick period (in dollars). Null if no trades occurred.
high:
allOf:
- $ref: '#/components/schemas/FixedPointDollars'
description: Highest trade price during the candlestick period (in dollars). Null if no trades occurred.
close:
allOf:
- $ref: '#/components/schemas/FixedPointDollars'
description: Price of the last trade during the candlestick period (in dollars). Null if no trades occurred.
mean:
allOf:
- $ref: '#/components/schemas/FixedPointDollars'
description: Volume-weighted average price during the candlestick period (in dollars). Null if no trades occurred.
previous:
allOf:
- $ref: '#/components/schemas/FixedPointDollars'
description: Close price from the previous candlestick period (in dollars). Null if this is the first candlestick or no prior trade exists.
GetMarketsResponse:
type: object
required:
- markets
- cursor
properties:
markets:
type: array
items:
$ref: '#/components/schemas/Market'
cursor:
type: string
FixedPointDollars:
type: string
description: US dollar amount as a fixed-point decimal string with up to 6 decimal places of precision. This is the maximum supported precision; valid quote intervals for a given market are constrained by that market's price level structure.
example: '0.5600'
BookSide:
type: string
enum:
- bid
- ask
description: 'Side of the book for an order or trade. For event markets, this refers to the YES leg only: `bid` means buy YES, `ask` means sell YES. (Selling YES is economically equivalent to buying NO at `1 - price`, but this endpoint quotes everything from the YES side.)'
GetHistoricalCutoffResponse:
type: object
required:
- market_settled_ts
- trades_created_ts
- orders_updated_ts
properties:
market_settled_ts:
type: string
format: date-time
description: 'Cutoff based on **market settlement time**. Markets and their candlesticks that settled before this timestamp must be accessed via `GET /historical/markets` and `GET /historical/markets/{ticker}/candlesticks`.
'
trades_created_ts:
type: string
format: date-time
description: 'Cutoff based on **trade fill time**. Fills that occurred before this timestamp must be accessed via `GET /historical/fills`.
'
orders_updated_ts:
type: string
format: date-time
description: 'Cutoff based on **order cancellation or execution time**. Orders canceled or fully executed before this timestamp must be accessed via `GET /historical/orders`. Resting (active) orders are always available in `GET /portfolio/orders`.
'
GetMarketCandlesticksHistoricalResponse:
type: object
required:
- ticker
- candlesticks
properties:
ticker:
type: string
description: Unique identifier for the market.
candlesticks:
type: array
description: Array of candlestick data points for the specified time range.
items:
$ref: '#/components/schemas/MarketCandlestickHistorical'
GetTradesResponse:
type: object
required:
- trades
- cursor
properties:
trades:
type: array
items:
$ref: '#/components/schemas/Trade'
cursor:
type: string
Order:
type: object
required:
- order_id
- user_id
- client_order_id
- ticker
- side
- action
- outcome_side
- book_side
- type
- status
- yes_price_dollars
- no_price_dollars
- fill_count_fp
- remaining_count_fp
- initial_count_fp
- taker_fees_dollars
- maker_fees_dollars
- taker_fill_cost_dollars
- maker_fill_cost_dollars
properties:
order_id:
type: string
user_id:
type: string
description: Unique identifier for users
client_order_id:
type: string
ticker:
type: string
side:
type: string
enum:
- 'yes'
- 'no'
deprecated: true
description: 'Deprecated. Use `outcome_side` (or `book_side`) instead. See [Order direction](/getting_started/order_direction). This field will not be removed before May 14, 2026.
'
action:
type: string
enum:
- buy
- sell
deprecated: true
description: 'Deprecated. Use `outcome_side` (or `book_side`) instead. See [Order direction](/getting_started/order_direction). This field will not be removed before May 14, 2026.
'
outcome_side:
type: string
enum:
- 'yes'
- 'no'
description: 'The outcome side this order is positioned for. buy-yes and sell-no produce ''yes''; buy-no and sell-yes produce ''no''.
`outcome_side` describes directional exposure only; it does not change the order''s price. An order at price `p` with `outcome_side=no` is matched by an order at the same price `p` with `outcome_side=yes` — both parties trade at the same price, just on opposite directions.
`outcome_side` and `book_side` will become the canonical way to determine order direction. The legacy `action`, `side`, and `is_yes` fields will be deprecated in a future release — please migrate to these new fields.
'
book_side:
$ref: '#/components/schemas/BookSide'
description: 'Same directional bit as outcome_side in book vocabulary. ''bid'' is equivalent to outcome_side ''yes''; ''ask'' is equivalent to outcome_side ''no''.
`outcome_side` and `book_side` will become the canonical way to determine order direction. The legacy `action`, `side`, and `is_yes` fields will be deprecated in a future release — please migrate to these new fields.
'
type:
type: string
enum:
- limit
- market
status:
$ref: '#/components/schemas/OrderStatus'
yes_price_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: The yes price for this order in fixed-point dollars
no_price_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: The no price for this order in fixed-point dollars
fill_count_fp:
$ref: '#/components/schemas/FixedPointCount'
description: String representation of the number of contracts that have been filled
remaining_count_fp:
$ref: '#/components/schemas/FixedPointCount'
description: String representation of the remaining contracts for this order
initial_count_fp:
$ref: '#/components/schemas/FixedPointCount'
description: String representation of the initial size of the order (contract units)
taker_fill_cost_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: The cost of filled taker orders in dollars
maker_fill_cost_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: The cost of filled maker orders in dollars
taker_fees_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: Fees paid on filled taker contracts, in dollars
maker_fees_dollars:
$ref: '#/components/schemas/FixedPointDollars'
description: Fees paid on filled maker contracts, in dollars
expiration_time:
type:
- string
- 'null'
format: date-time
created_time:
type:
- string
- 'null'
format: date-time
x-omitempty: false
last_update_time:
type:
- string
- 'null'
format: date-time
x-omitempty: true
description: The last update to an order (modify, cancel, fill)
self_trade_prevention_type:
$ref: '#/components/schemas/SelfTradePreventionType'
x-omitempty: false
order_group_id:
type:
- string
- 'null'
description: The order group this order is part of
cancel_order_on_pause:
type: boolean
description: If this flag is set to true, the order will be canceled if the order is open and trading on the exchange is paused for any reason.
subaccount_number:
type:
- integer
- 'null'
x-omitempty: true
description: Subaccount number (0 for primary, 1-32 for subaccounts).
exchange_index:
allOf:
- $ref: '#/components/schemas/ExchangeIndex'
x-go-type-skip-optional-pointer: true
OrderStatus:
type: string
enum:
- resting
- canceled
- executed
description: The status of an order
ErrorResponse:
type: object
properties:
code:
type: string
description: Error code
message:
type: string
description: Human-readable error message
details:
type: string
description: Additional details about the error, if available
service:
type: string
description: The name of the service that generated the error
MarketCandlestickHistorical:
type: object
required:
- end_period_ts
- yes_bid
- yes_ask
- price
- volume
- open_interest
properties:
end_period_ts:
type: integer
format: int64
description: Unix timestamp for the inclusive end of the candlestick period.
yes_bid:
$ref: '#/components/schemas/BidAskDistributionHistorical'
description: Open, high, low, close (OHLC) data for YES buy offers on the market during the candlestick period.
yes_ask:
$ref: '#/components/schemas/BidAskDistributionHistorical'
description: Open, high, low, close (OHLC) data for YES sell offers on the market during the candlestick period.
price:
$ref: '#/components/schemas/PriceDistributionHistorical'
description: Open, high, low, close (OHLC) and more data for trade YES contract prices on the market during the candlestick period.
volume:
$ref: '#/components/schemas/FixedPointCount'
description: String representation of the number of contracts bought on the market during the candlestick period.
open_interest:
$ref: '#/components/schemas/FixedPointCount'
description: String representation of the number of contracts bought on the market by end of the candlestick period (end_period_ts).
FixedPointCount:
type: string
description: Fixed-point contract count string (2 decimals, e.g., "10.00"; referred to as "fp" in field names). Requests accept 0–2 decimal places (e.g., "10", "10.0", "10.00"); responses always emit 2 decimals. Fractional contract values (e.g., "2.50") are supported on markets with fractional trading enabled; the minimum granularity is 0.01 contracts. Integer contract count fields are legacy and will be deprecated; when both integer and fp fields are provided, they must match.
example: '10.00'
GetFillsResponse:
type: object
required:
- fills
- cursor
properties:
fills:
type: array
items:
$ref: '#/components/schemas/Fill'
cursor:
type: string
BidAskDistributionHistorical:
type: object
required:
- open
- low
- high
- close
properties:
open:
$ref: '#/components/schemas/FixedPointDollars'
description: Offer price on the market at the start of the candlestick period (in dollars).
low:
$ref: '#/components/schemas/FixedPointDollars'
description: Lowest offer price on the market during the candlestick period (in dollars).
high:
$ref: '#/components/schemas/FixedPointDollars'
description: Highest offer price on the market during the candlestick period (in dollars).
close:
$ref: '#/components/schemas/FixedPointDollars'
description: Offer price on the market at the end of the candlestick period (in dollars).
Trade:
type: object
required:
- trade_id
- ticker
- count_fp
- yes_price_dollars
- no_price_dollars
- taker_side
- taker_outcome_side
- taker_book_side
- created_time
properties:
trade_id:
type: string
description: Unique identifier for this trade
ticker:
type: string
description: Unique identifier for the market
count_fp:
$ref: '#/components/schemas/FixedPointCount'
description: String representation of the number of contracts bought or sold in this trade
yes_price_dollars:
$ref: '#/components
# --- truncated at 32 KB (43 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kalshi/refs/heads/main/openapi/kalshi-historical-api-openapi.yml