Skip to content
scrapeatlas.Dashboard

Get a Kalshi event

Try in Playground

Get a Kalshi event and all its markets by event ticker or kalshi.com link. Markets settled into Kalshi’s archive are included with marketsArchived true. Set includeMetadata for images, per-market colors and the competition.

GET/v1/kalshi/eventx-api-key
x-api-keystringrequiredheader

Your ScrapeAtlas customer key. Create one on /account/ and set SCRAPEATLAS_API_KEY.

Query parameters
3
tickerstringquery

Event ticker, for example KXWC-30.

ExampleKXWC-30
urlstringquery

Alternative to ticker: a kalshi.com/markets/<series>/<slug>/<event> link.

max 600 chars

includeMetadataenumquery

true adds metadata (one more request). Default false.

one of: true, false

Exampletrue
Response fields
164
requestIdstring

Request correlation UUID.

Upstream requests, decoded response bytes and elapsed milliseconds.

accounting.upstreamRequestsinteger

Always included.

≥ 0

accounting.responseBytesinteger

Always included.

≥ 0

accounting.durationMsnumber

Always included.

≥ 0

successboolean

True when usable data is returned; inspect status and coverage for omissions.

statusenum

success, partial, failed or challenged. HTTP 200 can be partial.

one of: success, partial

sourceUrlstring

Kalshi public API URL the data was read from.

absolute HTTPS URL

fetchedAtstring

UTC retrieval time.

complete is false when a warning names an omission. order states the record order.

coverage.sourcestring

Always included.

coverage.completeboolean

Always included.

coverage.warningsstring[]

Always included.

Event with Kalshi’s field names: event_ticker, series_ticker, title, sub_title, category, mutually_exclusive, strike_date, strike_period, settlement_sources and product_metadata.

event.event_tickerstring

Always included.

event.series_tickerstring

Always included.

event.titlestring

Always included.

event.sub_titlestring

Always included.

event.categorystring

Always included.

event.collateral_return_typestring

Always included.

event.mutually_exclusiveboolean

Always included.

event.strike_datestringnullableoptional

Optional.

event.strike_periodstringnullableoptional

Optional.

Optional.

event.settlement_sources.namestring

Always included.

event.settlement_sources.urlstring

Always included.

event.product_metadataobjectnullableoptional

Optional.

event.last_updated_tsstringoptional

Optional.

event.exchange_indexintegeroptional

Optional.

Optional.

up to 1000 items

event.markets.tickerstring

Always included.

event.markets.event_tickerstring

Always included.

event.markets.market_typestring

Always included.

event.markets.titlestringoptional

Optional.

event.markets.subtitlestringoptional

Optional.

event.markets.yes_sub_titlestring

Always included.

event.markets.no_sub_titlestring

Always included.

event.markets.created_timestring

Always included.

event.markets.updated_timestring

Always included.

event.markets.open_timestring

Always included.

event.markets.close_timestring

Always included.

event.markets.expected_expiration_timestringnullableoptional

Optional.

event.markets.expiration_timestringoptional

Optional.

event.markets.latest_expiration_timestring

Always included.

event.markets.settlement_timer_secondsinteger

Always included.

event.markets.statusstring

Always included.

event.markets.yes_bid_dollarsstring

Always included.

event.markets.yes_bid_size_fpstring

Always included.

event.markets.yes_ask_dollarsstring

Always included.

event.markets.yes_ask_size_fpstring

Always included.

event.markets.no_bid_dollarsstring

Always included.

event.markets.no_ask_dollarsstring

Always included.

event.markets.last_price_dollarsstring

Always included.

event.markets.volume_fpstring

Always included.

event.markets.volume_24h_fpstring

Always included.

event.markets.resultstring

Always included.

event.markets.can_close_earlyboolean

Always included.

event.markets.open_interest_fpstring

Always included.

event.markets.notional_value_dollarsstring

Always included.

event.markets.previous_yes_bid_dollarsstring

Always included.

event.markets.previous_yes_ask_dollarsstring

Always included.

event.markets.previous_price_dollarsstring

Always included.

event.markets.settlement_value_dollarsstringnullableoptional

Optional.

event.markets.settlement_tsstringnullableoptional

Optional.

event.markets.settlement_bounds_typestringoptional

Optional.

event.markets.settlement_floor_dollarsstringnullableoptional

Optional.

event.markets.expiration_valuestring

Always included.

event.markets.occurrence_datetimestringnullableoptional

Optional.

event.markets.fee_waiver_expiration_timestringnullableoptional

Optional.

event.markets.early_close_conditionstringnullableoptional

Optional.

event.markets.strike_typestringoptional

Optional.

event.markets.floor_strikenumbernullableoptional

Optional.

event.markets.cap_strikenumbernullableoptional

Optional.

event.markets.functional_strikestringnullableoptional

Optional.

event.markets.custom_strikeobjectnullableoptional

Optional.

event.markets.rules_primarystring

Always included.

event.markets.rules_secondarystring

Always included.

event.markets.mve_collection_tickerstringoptional

Optional.

Optional.

up to 100 items

event.markets.mve_selected_legs.event_tickerstringoptional

Optional.

event.markets.mve_selected_legs.market_tickerstringoptional

Optional.

event.markets.mve_selected_legs.sidestringoptional

Optional.

event.markets.primary_participant_keystringnullableoptional

Optional.

event.markets.price_level_structurestring

Always included.

Always included.

up to 50 items

event.markets.price_ranges.startstring

Always included.

event.markets.price_ranges.endstring

Always included.

event.markets.price_ranges.stepstring

Always included.

event.markets.is_provisionalbooleanoptional

Optional.

event.markets.exchange_indexintegeroptional

Optional.

The event’s markets, as described for the market endpoint, at most 1,000.

up to 1000 items

markets.tickerstring

Always included.

markets.event_tickerstring

Always included.

markets.market_typestring

Always included.

markets.titlestringoptional

Optional.

markets.subtitlestringoptional

Optional.

markets.yes_sub_titlestring

Always included.

markets.no_sub_titlestring

Always included.

markets.created_timestring

Always included.

markets.updated_timestring

Always included.

markets.open_timestring

Always included.

markets.close_timestring

Always included.

markets.expected_expiration_timestringnullableoptional

Optional.

markets.expiration_timestringoptional

Optional.

markets.latest_expiration_timestring

Always included.

markets.settlement_timer_secondsinteger

Always included.

markets.statusstring

initialized, inactive, active, closed, determined, disputed, amended or finalized. Filter names differ: open returns active, settled returns finalized.

markets.yes_bid_dollarsstring

Always included.

markets.yes_bid_size_fpstring

Always included.

markets.yes_ask_dollarsstring

Always included.

markets.yes_ask_size_fpstring

Always included.

markets.no_bid_dollarsstring

Always included.

markets.no_ask_dollarsstring

Always included.

markets.last_price_dollarsstring

Always included.

markets.volume_fpstring

Always included.

markets.volume_24h_fpstring

Always included.

markets.resultstring

Always included.

markets.can_close_earlyboolean

Always included.

markets.open_interest_fpstring

Always included.

markets.notional_value_dollarsstring

Always included.

markets.previous_yes_bid_dollarsstring

Always included.

markets.previous_yes_ask_dollarsstring

Always included.

markets.previous_price_dollarsstring

Always included.

markets.settlement_value_dollarsstringnullableoptional

Optional.

markets.settlement_tsstringnullableoptional

Optional.

markets.settlement_bounds_typestringoptional

Optional.

markets.settlement_floor_dollarsstringnullableoptional

Optional.

markets.expiration_valuestring

Always included.

markets.occurrence_datetimestringnullableoptional

Optional.

markets.fee_waiver_expiration_timestringnullableoptional

Optional.

markets.early_close_conditionstringnullableoptional

Optional.

markets.strike_typestringoptional

Optional.

markets.floor_strikenumbernullableoptional

Optional.

markets.cap_strikenumbernullableoptional

Optional.

markets.functional_strikestringnullableoptional

Optional.

markets.custom_strikeobjectnullableoptional

Optional.

markets.rules_primarystring

Always included.

markets.rules_secondarystring

Always included.

markets.mve_collection_tickerstringoptional

Optional.

Optional.

up to 100 items

markets.mve_selected_legs.event_tickerstringoptional

Optional.

markets.mve_selected_legs.market_tickerstringoptional

Optional.

markets.mve_selected_legs.sidestringoptional

Optional.

markets.primary_participant_keystringnullableoptional

Optional.

markets.price_level_structurestring

Always included.

Always included.

up to 50 items

markets.price_ranges.startstring

Always included.

markets.price_ranges.endstring

Always included.

markets.price_ranges.stepstring

Always included.

markets.is_provisionalbooleanoptional

Optional.

markets.exchange_indexintegeroptional

Optional.

marketsArchivedboolean

true when the markets were read from Kalshi’s archive because the event’s markets settled before its archive cutoff.

With includeMetadata=true: image_url, featured_image_url, competition, competition_scope, settlement_sources and market_details (market_ticker, image_url, color_code).

metadata.image_urlstringoptional

Optional.

metadata.featured_image_urlstringoptional

Optional.

metadata.competitionstringnullableoptional

Optional.

metadata.competition_scopestringnullableoptional

Optional.

Optional.

up to 1000 items

metadata.market_details.market_tickerstringoptional

Optional.

metadata.market_details.image_urlstringoptional

Optional.

metadata.market_details.color_codestringoptional

Optional.

Optional.

metadata.settlement_sources.namestring

Always included.

metadata.settlement_sources.urlstring

Always included.

HTTP 200 returns the success variant. Check status: partial means usable data with warnings, and failed or challenged requests carry a failure object described in Errors & responses.

Error codes
11
HTTPfailure.codeMeaning
200partialUsable data with market_limit, metadata_unavailable, candle_limit, window_truncated, comment_limit or metrics_unavailable warnings.
400invalid_requestMissing, duplicate, malformed or unsupported parameters, a link outside kalshi.com/markets, a price-history window above its period limit, or parameters Kalshi rejected.
401unauthorizedMissing or invalid worker API key.
404not_foundUnknown market, event, series, post or trader.
429upstream_rate_limitedKalshi rate limited the request.
502upstream_challengedKalshi refused the public request.
502unsupported_pageMalformed, mismatched or non-JSON source data.
502response_too_large payload_too_complexResponse exceeded byte or parsing limits.
502unsafe_redirect request_limit upstream_errorBounded source retrieval could not complete.
503busyAll worker slots and the waiting queue are occupied.
504timeoutTotal request deadline expired.