List prediction-market events

/v4/data/prediction/events

100 credits per API call

List prediction-market events across supported platforms. An event is a top-level grouping of one or more markets that share a common question or outcome set (e.g. "2028 US Presidential Election"). Each event row includes a roll-up of nested market counts, total volume, and total liquidity, with an opt-in to embed the full list of nested markets via includeMarkets=true.

Supported platforms (filter via platform or omit for a cross-platform

feed):

  • Polymarket — polymarket
  • Kalshi — kalshi

Filtering, sorting and pagination

  • The status, category, tag and search filters are only honoured by Polymarket. To use any of them

    you must also pin platform=polymarket — calling them without that
    pin returns 400 so the response is honest about what was filtered.

  • sort accepts volume_desc, liquidity_desc, endingSoon, newest. When omitted on a cross-platform feed,

    results are interleaved so neither platform dominates the first page.

  • Pagination is cursor-based. The first call returns a pagination.cursor; pass that value verbatim as ?cursor=…

    on the next call. Cursors are opaque, fingerprint-bound to the filter set, and
    expire when filters change — never construct or modify them by hand. The cursor
    field is omitted from pagination on the last page.

Other notes

  • volumeUnit is usd on Polymarket events

    (dollar-denominated volume) and contracts on Kalshi events (number of
    contracts traded, not USD).

  • totalLiquidity is null on Kalshi — quoted liquidity

    is not exposed at the event level on Kalshi; compute from per-market orderbook
    depth if you need it.

  • status in the response is the verbatim upstream status string

    (richer than the status filter enum) — values can include
    paused, archived, settled, etc.

  • markets is populated only when includeMarkets=true is

    passed; otherwise it is null. When populated, every nested market is
    returned (no internal cap).

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Query Params
string
enum

Filter to a single platform. Omit for a cross-platform feed.

Allowed:
string
enum

Filter by lifecycle status. Polymarket-only — must be combined with
platform=polymarket.

Allowed:
string
length ≤ 64

Filter by event category. Polymarket-only — must be combined with
platform=polymarket. Free-form string, max 64 characters.

string
length ≤ 64

Filter by event tag slug. Polymarket-only — must be combined with
platform=polymarket. Free-form string, max 64 characters.

string
length ≤ 256

Free-text search across event titles. Polymarket-only — must be combined with
platform=polymarket. Max 256 characters.

string
enum

Sort order. When omitted on a cross-platform feed, results are interleaved
to balance the two platforms; otherwise sorted within the merged set.

Allowed:
string
length ≤ 1024

Opaque cursor returned by the previous response's pagination.cursor.
Omit on the first call. Fingerprint-bound to the filter set — changing
filters invalidates the cursor.

integer
1 to 100
Defaults to 20

Page size. Defaults to 20 when omitted.

boolean
Defaults to false

When true, each event includes its full nested markets[] array. Defaults
to false to keep list payloads light — opt in when you need per-event
market depth.

Responses

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json