Documentation Index
Fetch the complete documentation index at: https://docs.kalshi.com/llms.txt
Use this file to discover all available pages before exploring further.
All URIs are relative to https://api.elections.kalshi.com/trade-api/v2
| Method | HTTP request | Description |
|---|
| get_event | GET /events/ | Get Event |
| get_event_forecast_percentiles_history | GET /series//events//forecast_percentile_history | Get Event Forecast Percentile History |
| get_event_metadata | GET /events//metadata | Get Event Metadata |
| get_events | GET /events | Get Events |
| get_market_candlesticks_by_event | GET /series//events//candlesticks | Get Event Candlesticks |
| get_multivariate_events | GET /events/multivariate | Get Multivariate Events |
get_event
GetEventResponse get_event(event_ticker, with_nested_markets=with_nested_markets)
Get Event
Endpoint for getting data about an event by its ticker. An event represents a real-world occurrence that can be traded on, such as an election, sports game, or economic indicator release.
Events contain one or more markets where users can place trades on different outcomes.
All events are accessible through this endpoint, even if their associated markets are older than the historical cutoff.
Parameters
| Name | Type | Description | Notes |
|---|
| event_ticker | str | Event ticker | |
| with_nested_markets | bool | If true, markets are included within the event object. If false (default), markets are returned as a separate top-level field in the response. Historical markets settled before the historical cutoff will not be included. | [optional] [default to False] |
Return type
GetEventResponse
HTTP response details
| Status code | Description |
|---|
| 200 | Event retrieved successfully |
| 400 | Bad request |
| 404 | Event not found |
| 401 | Unauthorized |
| 500 | Internal server error |
get_event_forecast_percentiles_history
GetEventForecastPercentilesHistoryResponse get_event_forecast_percentiles_history(ticker, series_ticker, percentiles, start_ts, end_ts, period_interval)
Get Event Forecast Percentile History
Endpoint for getting the historical raw and formatted forecast numbers for an event at specific percentiles.
Parameters
| Name | Type | Description | Notes |
|---|
| ticker | str | The event ticker | |
| series_ticker | str | The series ticker | |
| percentiles | List[int] | Array of percentile values to retrieve (0-10000, max 10 values) | |
| start_ts | int | Start timestamp for the range | |
| end_ts | int | End timestamp for the range | |
| period_interval | int | Specifies the length of each forecast period, in minutes. 0 for 5-second intervals, or 1, 60, or 1440 for minute-based intervals. | |
Return type
GetEventForecastPercentilesHistoryResponse
HTTP response details
| Status code | Description |
|---|
| 200 | Event forecast percentile history retrieved successfully |
| 400 | Bad request |
| 401 | Unauthorized |
| 500 | Internal server error |
get_event_metadata
GetEventMetadataResponse get_event_metadata(event_ticker)
Get Event Metadata
Endpoint for getting metadata about an event by its ticker. Returns only the metadata information for an event.
Parameters
| Name | Type | Description | Notes |
|---|
| event_ticker | str | Event ticker | |
Return type
GetEventMetadataResponse
HTTP response details
| Status code | Description |
|---|
| 200 | Event metadata retrieved successfully |
| 400 | Bad request |
| 404 | Event not found |
| 401 | Unauthorized |
| 500 | Internal server error |
get_events
GetEventsResponse get_events(limit=limit, cursor=cursor, with_nested_markets=with_nested_markets, with_milestones=with_milestones, status=status, series_ticker=series_ticker, min_close_ts=min_close_ts, min_updated_ts=min_updated_ts)
Get Events
Get all events. This endpoint excludes multivariate events.
To retrieve multivariate events, use the GET /events/multivariate endpoint.
All events are accessible through this endpoint, even if their associated markets are older than the historical cutoff.
Parameters
| Name | Type | Description | Notes |
|---|
| limit | int | Parameter to specify the number of results per page. Defaults to 200. Maximum value is 200. | [optional] [default to 200] |
| cursor | str | Parameter to specify the pagination cursor. Use the cursor value returned from the previous response to get the next page of results. Leave empty for the first page. | [optional] |
| with_nested_markets | bool | Parameter to specify if nested markets should be included in the response. When true, each event will include a ‘markets’ field containing a list of Market objects associated with that event. Historical markets settled before the historical cutoff will not be included. | [optional] [default to False] |
| with_milestones | bool | If true, includes related milestones as a field alongside events. | [optional] [default to False] |
| status | str | Filter by event status. Possible values are ‘unopened’, ‘open’, ‘closed’, ‘settled’. Leave empty to return events with any status. | [optional] |
| series_ticker | str | Filter by series ticker | [optional] |
| min_close_ts | int | Filter events with at least one market with close timestamp greater than this Unix timestamp (in seconds). | [optional] |
| min_updated_ts | int | Filter events with metadata updated after this Unix timestamp (in seconds). Use this to efficiently poll for changes. | [optional] |
Return type
GetEventsResponse
HTTP response details
| Status code | Description |
|---|
| 200 | Events retrieved successfully |
| 400 | Bad request |
| 401 | Unauthorized |
| 500 | Internal server error |
get_market_candlesticks_by_event
GetEventCandlesticksResponse get_market_candlesticks_by_event(ticker, series_ticker, start_ts, end_ts, period_interval)
Get Event Candlesticks
End-point for returning aggregated data across all markets corresponding to an event.
Parameters
| Name | Type | Description | Notes |
|---|
| ticker | str | The event ticker | |
| series_ticker | str | The series ticker | |
| start_ts | int | Start timestamp for the range | |
| end_ts | int | End timestamp for the range | |
| period_interval | int | Specifies the length of each candlestick period, in minutes. Must be one minute, one hour, or one day. | |
Return type
GetEventCandlesticksResponse
HTTP response details
| Status code | Description |
|---|
| 200 | Event candlesticks retrieved successfully |
| 400 | Bad request |
| 401 | Unauthorized |
| 500 | Internal server error |
get_multivariate_events
GetMultivariateEventsResponse get_multivariate_events(limit=limit, cursor=cursor, series_ticker=series_ticker, collection_ticker=collection_ticker, with_nested_markets=with_nested_markets)
Get Multivariate Events
Retrieve multivariate (combo) events. These are dynamically created events from multivariate event collections. Supports filtering by series and collection ticker.
Parameters
| Name | Type | Description | Notes |
|---|
| limit | int | Number of results per page. Defaults to 100. Maximum value is 200. | [optional] [default to 100] |
| cursor | str | Pagination cursor. Use the cursor value returned from the previous response to get the next page of results. | [optional] |
| series_ticker | str | Filter by series ticker | [optional] |
| collection_ticker | str | Filter events by collection ticker. Returns only multivariate events belonging to the specified collection. Cannot be used together with series_ticker. | [optional] |
| with_nested_markets | bool | Parameter to specify if nested markets should be included in the response. When true, each event will include a ‘markets’ field containing a list of Market objects associated with that event. | [optional] [default to False] |
Return type
GetMultivariateEventsResponse
HTTP response details
| Status code | Description |
|---|
| 200 | Multivariate events retrieved successfully |
| 400 | Bad request - invalid parameters |
| 401 | Unauthorized |
| 500 | Internal server error |