NFL odds API · sport 2 · REST + WebSocket

NFL odds API.
Every book. One request.

Game lines, alternates, halves, quarters, team totals, player props, and futures from 24 books, on stable event IDs. Pull a REST snapshot or stream every change.

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 NFL game date: regular season (2), preseason (25), or playoffs (26)
dates = requests.get(
    f"{api}/sports/dates",
    params={
        "sport_ids": "2,25,26",
        "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()

# Moneyline, spread, and total from DraftKings, FanDuel, and BetMGM
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": "9cd666660847e644ecea84fc24cf9f58",
    "sport_id": 2,
    "event_date": "2026-10-04T13:30:00Z",
    "markets": [{
      "market_id": 1,
      "name": "moneyline",
      "participants": [{
        "id": 70,
        "type": "TYPE_TEAM",
        "name": "Indianapolis Colts",
        "lines": [{
          "prices": {
            "19": { "price": -205, "updated_at": "2026-10-03T14:28:27Z" },
            "22": { "price": -210, "updated_at": "2026-10-02T17:09:05Z" },
            "23": { "price": -220, "updated_at": "2026-10-03T14:53:59Z" }
          }
        }]
      }]
    }]
  }]
}

Colts at Commanders, October 4, 2026, trimmed to one side of one market. The full response held 13 games for 260 data points.

Free keyThis Python request runs on a Free key: pre-match prices from DraftKings, FanDuel, and BetMGM, five minutes delayed. Between seasons, the next slate can be empty until books post lines.

Markets

Every NFL market, not just the main line.

From the opening spread to the anytime touchdown scorer, every market comes back in the same events, markets, participants, lines, and prices shape, keyed to one event ID.

121
NFL market IDs
37
In-game markets
24
Player markets
11
Futures competitions
Market typePlan
  • Game linesMoneyline, spread, and total
    1 · 2 · 3Free
  • Alternate linesAlternate spreads, totals, and player lines
    omit main_lineStarter
  • Halves1st and 2nd half moneyline, spread, and total
    4 · 5 · 6 · 1008–1010Starter
  • QuartersMoneyline, spread, and total for each quarter
    981 · 957 · 958 · 1011–1019Starter
  • Team totalsGame, half, and 1st quarter team totals; team yards and touchdowns
    94 · 95 · 1148 · 991 · 1050–1053 · 1445 · 1447Starter
  • Player propsPassing, rushing, and receiving yards, receptions, completions, attempts, interceptions, and more
    51 · 52 · 53 · 57 · 58 · 296 · 300 · 960Starter
  • Touchdown scorersFirst, anytime, and last scorer; 2+ and 3+ touchdowns; first team scorer
    49 · 55 · 56 · 286 · 287 · 292Starter
  • Game propsWinning margin, first to score, overtime, total touchdowns, correct score, halftime/fulltime, and more
    9 · 7 · 23 · 80 · 335 · 831Starter
  • In-gameLive game, half, and quarter lines, team totals, player props, and touchdown scorers
    41 · 42 · 43 · 1024 · 1032 · 96 · 82 · 66Starter
  • FuturesSuper Bowl, conference, and division winners; MVP and other awards; win totals; playoffs
    /sports/2/futuresUltra

Market IDs served on NFL slates from September 14 to October 9, 2026 (GET /api/v2/sports/2/markets/{date}). GET /api/v2/markets lists every definition.

Books

All 24 books. One schema.

19 sportsbooks, 3 prediction markets, and 2 exchanges in one response shape. Pick yours with affiliate_ids.

24
Books
19
Sportsbooks
3
Prediction markets
2
Exchanges
Books in the API24

Sportsbooks · 19

  • DraftKingsFree19
  • FanDuelFree23
  • BetMGMFree22
  • 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. All 25 priced NFL main lines for the October 4, 2026 slate. 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 · 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 NFL odds API.

Is there a free NFL odds API?
Yes. A free TheRundown key returns pre-match NFL 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.
Which NFL markets does the API cover?
Moneylines, spreads, and totals; alternate lines; halves and quarters; team totals; 24 player markets, from passing yards to the anytime touchdown scorer; game props like winning margin and correct score; 37 in-game markets; and futures for the Super Bowl, conferences, divisions, MVP and other awards, win totals, and playoffs. Free covers pre-match game lines. The rest starts on Starter ($49 a month), and futures on Ultra.
Which sportsbooks does the NFL odds API cover?
All 24 books in the API, including DraftKings, FanDuel, BetMGM, Pinnacle, Circa Sports, BookMaker, and BetCRIS, plus Kalshi, Polymarket, Polymarket US, ProphetX, and Novig. Paid plans include all of them. Free includes three.
What is the NFL sport ID?
2. The catalog also lists 25 for the NFL preseason and 26 for the NFL playoffs. GET /api/v2/sports returns every sport ID.
Is there an NFL futures odds API?
Yes. GET /api/v2/sports/2/futures returns Super Bowl, conference, and division winners, MVP and other awards, win totals, and playoffs. Futures start on Ultra ($399 a month).
Can I show NFL odds in my app?
Starter covers internal and personal use. Showing odds to users of a commercial product starts on Pro ($149 a month).