Sportsbook odds API · 25+ books · REST + WebSocket

Sportsbook odds API.
Compare books in one request.

Get the prices sportsbooks post, from DraftKings, FanDuel, and BetMGM to the rest of the 25+ books, in one events, markets, participants, lines, and prices shape. One parser compares every book on the same line.

Free key · 20,000 data points a day · No credit card · Every book and live odds from $49/mo

GET/api/v2/sports/{sport_id}/events/{date}

RequestPython 3 · requests

import os
from datetime import datetime, timezone
import requests

key = os.environ["THERUNDOWN_API_KEY"]
api = "https://therundown.io/api/v2"
headers = {"X-TheRundown-Key": key}

# Next game date across the NFL (2), NBA (4), and NHL (6)
dates = requests.get(
    f"{api}/sports/dates",
    params={
        "sport_ids": "2,4,6",
        "format": "epoch",
        "exclude_canceled": "true",
    },
    headers=headers,
    timeout=30,
).json()

now = datetime.now(timezone.utc).timestamp()
upcoming = [
    (sport_id, stamp)
    for sport_id, body in dates.items()
    for stamp in body.get("dates") or []
    if stamp > now
]
sport_id, stamp = min(upcoming, key=lambda row: row[1], default=("2", now))
date = datetime.fromtimestamp(stamp, timezone.utc).date().isoformat()

# DraftKings, BetMGM, and FanDuel side by side: moneyline, spread, total
odds = requests.get(
    f"{api}/sports/{sport_id}/events/{date}",
    params={"market_ids": "1,2,3", "affiliate_ids": "19,22,23", "main_line": "true"},
    headers=headers,
    timeout=30,
)
print(odds.text)

Response200 · trimmed

{
  "events": [{
    "event_id": "53358460d081d30fbc9cc4c71ec43f4c",
    "sport_id": 2,
    "event_date": "2026-11-01T18:00:00Z",
    "markets": [{
      "market_id": 1,
      "name": "moneyline",
      "participants": [{
        "id": 89,
        "type": "TYPE_TEAM",
        "name": "Arizona Cardinals",
        "lines": [{
          "prices": {
            "19": {
              "price": 250,
              "is_main_line": true,
              "updated_at": "2026-10-31T13:37:55Z"
            },
            "22": {
              "price": 260,
              "is_main_line": true,
              "updated_at": "2026-10-31T13:39:11Z"
            },
            "23": {
              "price": 270,
              "is_main_line": true,
              "updated_at": "2026-10-31T12:24:26Z"
            }
          }
        }]
      }]
    }]
  }]
}

Arizona Cardinals at Dallas Cowboys, November 1, 2026. Captured October 31 and trimmed to the Arizona moneyline: +250 at DraftKings (19), +260 at BetMGM (22), and +270 at FanDuel (23). Prices are an example, not a live quote.

Free keyThis Python request runs on a Free key: pre-match prices from DraftKings, FanDuel, and BetMGM, five minutes delayed. On Starter and above, add affiliate IDs to compare more books in the same response.

Markets

Every market type, from every book that posts it.

Each book posts its own market selection. Every price comes back in the same events, markets, participants, lines, and prices shape, keyed to one event ID, so prices from different books on the same line sit side by side.

25+
Books in one response shape
3
Books on a free key
REST
Free and up
WebSocket
Real-time on Ultra
Market typePlan
  • Game linesMoneyline, spread, and total from every book that posts them; DraftKings, FanDuel, and BetMGM pre-match on Free
    1 · 2 · 3Free
  • Alternate linesAlternate spreads, totals, and player lines
    omit main_lineStarter
  • PeriodsFirst-half moneyline, spread, and total, plus quarters, periods, and innings by sport
    4 · 5 · 6Starter
  • Team totalsGame and first-half team totals
    94 · 95Starter
  • Player propsPoints, rebounds, and assists; passing, rushing, and receiving yards; first and anytime touchdown scorer
    29 · 35 · 39 · 51 · 52 · 53 · 49 · 55Starter
  • In-gameLive moneylines, spreads, and totals while books trade them
    41 · 42 · 43Starter
  • FuturesChampionship, conference, division, and award markets
    /sports/{sport_id}/futuresUltra

Each book posts its own markets, so coverage varies by book, sport, and game. GET /api/v2/markets lists every market definition, and GET /api/v2/affiliates lists the current books.

Leagues

Pick a league by sport ID, then the books to compare.

Pass sport IDs for the leagues you need and affiliate IDs for the books. Each league also has a live odds board and its own API guide.

LeagueLive odds

Sport IDs from GET /api/v2/sports. Between seasons, a league can have no slate until books post lines.

Books

25+ books. One schema.

Every book in one response shape. Each price sits under its book's affiliate ID; choose books with affiliate_ids.

Books in the API25

Sportsbooks · 20

  • DraftKingsFree19
  • FanDuelFree23
  • BetMGMFree22
  • Caesars Sportsbook35
  • Pinnacle3
  • Circa Sports32
  • BookMaker7
  • BetCRIS9
  • Bovada2
  • theScore Bet24
  • Unibet21
  • HardRock28
  • Bet10533
  • Heritage Sports34
  • BetOnline6
  • SportsBetting4
  • LowVig11
  • Intertops14
  • Matchbook16
  • YouWager18

Prediction markets · 3

  • Kalshi25
  • Polymarket26
  • Polymarket US31

Exchanges · 2

  • ProphetX29
  • Novig30

Live from GET /api/v2/affiliates. The affiliates endpoint lists the current books. Each book posts its own prices and market selection. Coverage varies by league, game, and market.

Free vs paid

Start free. Choose your coverage and delivery.

Choose TheRundown for odds and scores joined under one event ID, with participant and signed-line identities and explicit price closure signals. Request the books and markets your application uses, then measure X-Datapoints. Paid subscriptions have a fixed fee and included volume; unrequested price rows conserve that volume without reducing the base fee. Read the sports odds API guide · Betting tools API · Odds API quickstart · Explore joined sports data · Metering rules

Free · $0

Pre-match moneyline, spread, and total from DraftKings, FanDuel, and BetMGM, five minutes delayed.

Paid · from $49/mo

Eligible sources, alternates, periods, props, and 60-second-delayed in-play odds from $49 a month for internal or personal use. Commercial display starts on Pro; real-time REST, futures and WebSocket on Ultra.

Free$0/mo5-minute delay · 20,000/day · 200,000/monthPre-match game lines from DraftKings, FanDuel, and BetMGM.
Starter$49/mo60-second delay · 25,000,000/moEligible sources, alternates, periods, props, and 60-second-delayed in-play odds. Internal or personal use.
Pro$149/mo30-second delay · 125,000,000/mo30-second-delayed odds and commercial end-user display.
Ultra$399/moReal-time · 500,000,000/moReal-time REST, WebSocket streaming, and futures.

Compare every plan →

Questions

Before you build.

Plans, markets, books, and IDs for the Sportsbook odds API.

Is there a sportsbook odds API?
Yes. TheRundown's odds API returns the prices sportsbooks post, from DraftKings, FanDuel, and BetMGM to the rest of the 25+ books, in one JSON schema. This is TheRundown's API, not an official developer program from any sportsbook.
Is there a free sportsbook odds API?
Yes. A free TheRundown key returns pre-match moneylines, spreads, and totals from DraftKings, FanDuel, and BetMGM, five minutes delayed, up to 20,000 data points a day and 200,000 a month. Free is a $0 plan, not a trial. No credit card.
How do I compare odds across sportsbooks?
Request the event once with the affiliate IDs you want. Each price sits under its book's affiliate ID on the same line, so keep the market ID, participant, and signed line value together and compare the prices beside them. The example above returns DraftKings, BetMGM, and FanDuel on the same Arizona moneyline.
Which sportsbooks are included?
25+ books, including DraftKings, FanDuel, BetMGM, Caesars Sportsbook, Hard Rock Bet, and Pinnacle, plus prediction markets such as Kalshi and Polymarket. The live list above comes from the affiliates endpoint. Paid plans include all of them. Free includes three.
Can I place bets through a sportsbook odds API?
Not through TheRundown. The API is read-only odds and scores data: it does not place bets, hold balances, or connect to sportsbook accounts.
Is this a sportsbook platform or trading feed?
No. TheRundown provides odds and scores data from 25+ books. It is not a white-label sportsbook, a trading or risk-management service, or a way to place bets. Showing its odds to users of a commercial product starts on Pro ($149 a month).