
Public CFTC event-contract data: discover events and markets, live yes/no order books, recent trades, and price candles. One consistent schema — no API key, no trading, no 18 MB series dump. Identify a market by ticker (`KXELONMARS-99`). Identify a series by ticker (`KXELONMARS`) from `Get Event Details` — it is not on the market object. Unknown tickers return HTTP 404. Invalid parameters return HTTP 400. Multivariate / CROSS tickers 404 on `Get Market Details`. List markets excludes them unless you pass `mve_filter=only`. This API does not place or cancel orders.
Returns a page of events with title, category and series_ticker. with_nested_markets=true (default) includes each event's markets so you can copy a market ticker without a second call. Cursor-paged. Multivariate events are not on this list.
Filter by event status. One of unopened, open, closed, settled. Default open.
Limit to one series, e.g. KXELONMARS or KXHIGHNY.
If true, each event includes its markets array. Default true.
Results per page, 1-100. Upstream max is 200; this route caps at 100. Default 10.
Pagination cursor from the previous response. Omit on the first page.
Language:
Client:
fetch('https://api.apivex.com/kalshi/api/events/list?status=open&with_nested_markets=True&limit=10', {
method: 'GET',
headers: {
'x-apivex-key': 'YOUR_API_KEY'
}
})
.then(response => response.json())
.then(data => console.log(data));