v2
latestOpenAPI 3.1.0Proprietary2026-08-054985119.4 KBSearch Markets
Search and browse markets across all exchanges.
Supports:
- Exact match on ticker, condition_id, slug, river_id
- Full-text search on name, description, tags
- Browse by filters (no query required)
- Results ranked by relevance
Defaults to status=active; pass status=all to include closed markets.
Query parameters
Search query
Search query
Filter by exchange name (KALSHI, POLYMARKET)
Filter by exchange name (KALSHI, POLYMARKET)
Filter by canonical category. Repeat the param to filter to multiple categories (Sports, Crypto, Politics, Finance, Entertainment, Science & Tech, Weather, World Affairs, Health, Social, Other).
Filter by canonical category. Repeat the param to filter to multiple categories (Sports, Crypto, Politics, Finance, Entertainment, Science & Tech, Weather, World Affairs, Health, Social, Other).
Filter by subcategory (e.g. Basketball, Football)
Filter by subcategory (e.g. Basketball, Football)
status query values for market search. ALL matches any status except inactive (never-activated exchange junk), which stays opt-in via INACTIVE.
Filter by instrument status. Defaults to active; pass 'all' for active and closed markets.
Start of expiration date range (inclusive, ISO 8601)
Start of expiration date range (inclusive, ISO 8601)
End of expiration date range (exclusive, ISO 8601)
End of expiration date range (exclusive, ISO 8601)
Filter to markets with start_datetime >= this (ISO 8601)
Filter to markets with start_datetime >= this (ISO 8601)
Filter to markets with start_datetime < this (ISO 8601)
Filter to markets with start_datetime < this (ISO 8601)
Filter by event_ticker (exact match)
Filter by event_ticker (exact match)
Filter to markets with last_price >= this value (0.0–1.0 YES probability).
Filter to markets with last_price >= this value (0.0–1.0 YES probability).
Filter to markets with last_price <= this value (0.0–1.0 YES probability).
Filter to markets with last_price <= this value (0.0–1.0 YES probability).
Filter to events whose total summed volume >= this value.
Filter to events whose total summed volume >= this value.
Sort mode for event-based pagination: trending, volume, newest, ending-soon, start-time, price
Sort mode for event-based pagination: trending, volume, newest, ending-soon, start-time, price
How /v1/markets/search treats Kalshi parlay containers (is_combo).
- EXCLUDE (default): drop combos — standard markets/browse behaviour.
- INCLUDE: return combos alongside standard markets.
- ONLY: return combos exclusively (the Combos browse tab / parlay search).
How to treat parlays: 'exclude' (default), 'include' alongside standard markets, or 'only' combos.
Maximum number of results
Maximum number of results
Offset for pagination
Offset for pagination
Paginate by events instead of markets. Up to 200 by default; values above that require start_datetime_after or start_datetime_before.
Paginate by events instead of markets. Up to 200 by default; values above that require start_datetime_after or start_datetime_before.
Event offset for event-based pagination
Event offset for event-based pagination
With event pagination, cap the markets returned per event to the top N by volume (query-matched markets always survive the cap). Each row's event_market_count carries the event's full market count so clients can lazy-load the rest.
With event pagination, cap the markets returned per event to the top N by volume (query-matched markets always survive the cap). Each row's event_market_count carries the event's full market count so clients can lazy-load the rest.
Response
Successful Response