Skip to main content
Market data is available on the dedicated KalshiMD session. It supports order book snapshots and incremental updates for margin markets. Subscriptions are identified by Symbol<55>. KalshiMD does not support message retransmission. Use ResetSeqNumFlag<141>=Y on Logon.

Message Flow

Market Data Request (35=V)

Example snapshot request
Example snapshot-plus-updates subscription
Example cancel a symbol
Example cancel all subscriptions

Market Data Snapshot Full Refresh (35=W)

Sent in response to a snapshot request and immediately after a snapshot-plus-updates subscription is accepted. Correlate by Symbol<55>.
Example snapshot response

Market Data Incremental Refresh (35=X)

Sent after a subscribed market’s aggregated book levels change or a trade occurs. Correlate by Symbol<55> on each entry.
Example incremental update
Example trade update

Market Data Request Reject (35=Y)

Sent when a market data request cannot be accepted. Unknown market tickers are not currently rejected; the server sends an empty snapshot if it has no order book for the requested symbol.

Common Reject Reasons (281)

  • 2=Insufficient bandwidth, including request or session symbol limits
  • 4=Unsupported SubscriptionRequestType