Data Types

Prediction Markets

Prediction market platforms are identified by their bookmakerID — the same parameter used across the API. Pass one or more as a comma-separated list to filter results to specific platforms.

Supported Platforms

KalshibookmakerID=kalshi

US-regulated prediction market exchange. CFTC-regulated. Covers politics, economics, weather, finance, and more.

politicseconomicsweatherfinancescience
PolymarketbookmakerID=polymarket

Decentralised prediction market on the Polygon blockchain. Broad coverage across global news and events.

politicscryptosciencesportsworld
NovigbookmakerID=novig

No-vig prediction exchange focused on removing the house edge. Tight markets on major events.

politicseconomicsfinance

Filtering by Platform

Use the bookmakerID parameter to target one or more platforms:

# Single platform
/v2/events?bookmakerID=kalshi&oddsAvailable=true

# Multiple platforms
/v2/events?bookmakerID=kalshi,polymarket&oddsAvailable=true

# All three platforms
/v2/events?bookmakerID=kalshi,polymarket,novig&oddsAvailable=true

Event Response Structure

Each event object contains an odds field keyed by oddID, with per-platform prices nested under byBookmaker:

{
  "eventID": "WILL_FED_CUT_RATES_JUNE_2025_KALSHI",
  "leagueID": "KALSHI_ECONOMICS",
  "status": { "started": false, "ended": false },
  "odds": {
    "probability-home-game-ml-yes": {
      "oddID": "probability-home-game-ml-yes",
      "fairOdds": "+185",
      "bookOdds": "+180",
      "byBookmaker": {
        "kalshi":     { "odds": "+180", "available": true },
        "polymarket": { "odds": "+190", "available": true }
      }
    },
    "probability-home-game-ml-no": {
      "oddID": "probability-home-game-ml-no",
      "fairOdds": "-220",
      "bookOdds": "-225",
      "byBookmaker": {
        "kalshi":     { "odds": "-220", "available": true },
        "polymarket": { "odds": "-230", "available": true }
      }
    }
  }
}

Fetching Specific Markets with oddIDs

Use the oddIDs parameter to return only the markets you need, keeping payloads small:

# Fetch only the yes/no sides
/v2/events?bookmakerID=kalshi&oddIDs=probability-home-game-ml-yes,probability-home-game-ml-no

# Use includeOpposingOdds=true to get both sides automatically
/v2/events?bookmakerID=kalshi&oddIDs=probability-home-game-ml-yes&includeOpposingOdds=true

Need a platform not listed here? Contact us and we'll discuss adding it.

Settled Markets

Pass finalized=true to return markets that have settled, each carrying its opening odds, closing odds and resolved outcome. Historical coverage and limits sets out what is available per platform and per plan.