Skip to main content
GET
Search events
An event groups all the outcome markets for one question. “Fed Rate Decision March 2026” is one event with markets for each rate-cut size; a single 15-minute Bitcoin event has up/down markets for that window. You must pass either q or series_id (or both). Requests with neither return 400. To find a series_id, use Search series.

Parameters

q
string
Full-text search on title. Required when series_id is not provided.
series_id
string
Filter to one series. Examples: KXBTC15M, btc-up-or-down-15m, KXFEDDECISION. Required when q is not provided.
exchange
string
kalshi or polymarket.
status
string
default:"active"
active or closed.
category
string
Exact category match.
min_volume
integer
Minimum aggregate volume across child markets.
discovered_after
string
ISO timestamp filter on discovered_at.
sort_by
string
default:"relevance"
relevance, newest, markets, volume, or liquidity. relevance requires q; without q the default is newest.
limit
integer
default:"20"
1-100.
offset
integer
default:"0"
Pagination offset. The response is a bare JSON array — increment offset by limit until you receive an empty array.

Examples

List active events in a series

Use series_id to scope results — typical for “show me what’s tradable in this series right now” workflows.
Useful when you don’t know the series_id or want to span series.

Response

Errors