TheRundown developer API

Sports betting API for accurate tools and game views

Choose TheRundown for structured prices with explicit participant, line and closure identity. Build comparisons and alerts from the data your tool uses, with public plans and response headers that make usage measurable.

Free: delayed pre-match main lines from three books. No credit card. Real-time REST and WebSocket require Ultra or above.

Match the API data to the tool you are building

A line-comparison screen needs the same event, market period, participant and signed line across sources. A player-prop view also needs player identity and the correct stat market. A value or arbitrage calculation cannot safely compare different rungs or treat a withdrawn price as available.

TheRundown supplies data, not a guarantee that a sportsbook will accept a wager at a displayed price. Source identifiers may be present where available; they are not a universal ready-made bet-slip link or an SGP builder. Verify those requirements separately before replacing a tool dependency.

ToolUseful API fieldsValidation
Line comparisonevent_id, market_id, period_id, participant and line IDsCompare the same signed line and open price
Prop screenTYPE_PLAYER participant, market catalog, lines/pricesJoin on player ID rather than name
Price alertPrice timestamp, line identity, closed_atDistinguish a price change, line move and closure
Game contextscore status and scheduled event_dateHandle missing score metadata and season variants

Start with main lines; add the needed props and periods

Free supplies five-minute-delayed pre-match game lines from three books. Eligible paid plans add other sources, props, alternates and in-play access. Discover catalog market IDs and test the sport/book combination, rather than assuming every cataloged market has a quote for every game.

NFL 2, NBA 4 and MLB 3 are regular-season scopes. Preseason and playoff IDs differ. Prematch game markets 1/2/3 and their in-play counterparts 41/42/43 should be requested explicitly when your paid entitlement and workflow need both phases.

Data needScope to testPlan consideration
Pre-match main lines1,2,3 from selected affiliatesFree evaluates three books with five-minute delay
Props / alternatesExplicit catalog IDs and desired rungsEligible paid tier; availability varies
In-play odds41,42,43 plus needed live prop IDsStarter 60s, Pro 30s, Ultra real-time
Customer-facing displayExact data and licensed usePro or above; confirm intended use

Parse the exact prices your tool compares

The Python sample fetches a narrow regular-season NFL snapshot. Set THERUNDOWN_API_KEY, install requests and choose an active date or sport variant. It prints the market, participant identity, signed line, source and price for the returned open sportsbook quotes.

Keep a composite identity in your application instead of flattening every quote into a market-level value. The same participant may have several alternate lines, and one side can close while another remains open.

Python
import os
from datetime import datetime, timezone
import requests

api_key = os.environ["THERUNDOWN_API_KEY"]
day = datetime.now(timezone.utc).date().isoformat()
response = requests.get(
    f"https://therundown.io/api/v2/sports/2/events/{day}",
    headers={"X-TheRundown-Key": api_key},
    params={"market_ids": "1,2,3", "affiliate_ids": "19,22,23",
            "main_line": "true", "hide_closed": "true"},
    timeout=20,
)
response.raise_for_status()
print("Data points:", response.headers.get("X-Datapoints"))
for event in response.json().get("events", []):
    print(event["event_id"], event.get("event_date"), event.get("score", {}))
    for market in event.get("markets", []):
        for participant in market.get("participants", []):
            for line in participant.get("lines", []):
                for affiliate, quote in line.get("prices", {}).items():
                    if quote.get("closed_at") or quote.get("price") == 0.0001:
                        continue
                    print(market["market_id"], participant["type"],
                          participant["id"], line["value"], affiliate,
                          quote["price"])

Use the response fields as inputs to your own calculations. This does not place a bet or guarantee execution.

Handle closure, reopen and freshness explicitly

A recorded closed_at timestamp closes the exact price record. Apply a later explicit closed_at empty-string reopen as open. An old updated_at value, a game clock or the absence of a source screen does not itself establish closure. Preserve withdrawn alternates when your display needs that state.

The off-board price sentinel 0.0001 should not become a tradable price in a calculation. Treat unknown or missing inputs as unavailable information. In a streaming consumer, merge updates into the exact participant/line/source record rather than replacing all prices for a market.

Measure a representative filtered workload before choosing volume. Narrow requests conserve the included allowance, while the fixed plan fee remains payable. Choose commercial rights and freshness first; volume alone cannot make a Free or Starter integration eligible for customer display.

Sports betting API pricing and plan delays

Published USD monthly plans start at Free, Starter $49, Pro $149 and Ultra $399. Select the feature set first, then size your included data-point volume. Free and Starter are for internal or personal use; commercial end-user display begins on Pro. Real-time odds and WebSocket begin on Ultra. Paid plans have a fixed subscription fee with included data-point volume. Choose the sports, books and markets your application needs: unrequested price rows do not consume that volume, but using fewer points does not reduce the base fee. Measure each request with X-Datapoints; requests, event objects, credits and data points are different billing units.

Monthly planUSD/monthOdds delayIncluded volumeUse and delivery
Free$05 minutes20,000/day · 200,000/monthThree books; delayed pre-match main lines. Internal or personal use.
Starter$4960 seconds25,000,000/moAdditional books, props, alternates and delayed in-play odds. Internal or personal use.
Pro$14930 seconds125,000,000/moCommercial end-user display and a 30-second odds delay.
Ultra$399Real-time500,000,000/moReal-time REST, WebSocket, futures and supported live game data.

Annual billing has different monthly equivalents. Monthly and annual plans stop at included data points by default; optional overage and weekly billing have separate terms. Super, Mega and Max add published volume and connection capacity; Enterprise is scoped by contract. Confirm effective API and stats access in response headers.

Sports betting API FAQ

Can this API power a sports betting tool?
It supplies structured odds, scores and supported game data for your integration. You must implement calculations, validate coverage and choose a plan permitting the intended use. The API does not place wagers or guarantee sportsbook execution.
Does TheRundown include every sportsbook market?
No. Availability varies by source, sport, event and market. Discover catalog IDs and inspect actual event responses for each required combination.
Which plans allow commercial end-user display?
Commercial end-user display begins on Pro. Free and Starter are for internal or personal use. Confirm the precise licensed use and required freshness before deploying a customer-facing product.
How do I know whether a price has closed?
Use the exact price record’s closed_at signal and apply a later explicit empty-string reopen. Do not infer closure from updated_at age, game state or a missing source screen. Exclude the off-board sentinel from actionable calculations.

Build and compare

Choose the API scope that matches your application. Each guide below covers a different integration need.

Product and documentation sources checked October 13, 2026. Source, sport, event and market availability varies; catalog entries do not guarantee a priced line or a populated statistic.