Introduction
OddsLink is a JSON API for live odds and prices. Every sportsbook, exchange and prediction market we cover is joined onto one shared fixture and returned in one response, in the same shape, whether the price came from a sportsbook’s posted line or an exchange’s resting order book.
What one response looks like
Section titled “What one response looks like”A fixture carries home_team and away_team; each of its bookmakers[] carries markets[];
each market carries outcomes[{name, price, point}]. A few things about that shape are worth
knowing up front:
- Period is part of the market key.
totals_f5is the total runs market for the first 5 innings; a full-game market has no suffix.GET /v1/marketslists every key we serve and the period it carries. priceis one number. Under the defaultoddsFormat=americanit is always an integer; underoddsFormat=decimalit is a decimal number above 1.pointis a decimal number and is absent on a moneyline.sizeis typed. A sportsbook’s posted limit, an exchange’s resting depth, and a prediction market’s contract count are three different quantities and are never rendered the same way; see the Odds guide.last_updatecan benull. That means we do not yet measure a fetch time for that book, never that the price is old.- Errors are nested under
error, with a stablecode, a humanmessage, adocs_urlpointing back here, and arequest_idfor support.
Where to go next
Section titled “Where to go next”- Quickstart gets a first odds response on the page.
- Authentication covers the
X-API-Keyheader. - The Guides go one endpoint family at a time: odds, props and history.
- The API Reference in the sidebar is generated straight from the OpenAPI file that also drives the code samples on this page and on the main site, so it can never drift from what the API actually returns.
- Speed limits and Errors and the Reference tables (sport keys, bookmaker keys, market keys, per-book coverage) round out what a client needs to handle every case, not just the happy path.
Every plan can call every book; there is no regional gating and nothing is held back for a higher plan except request volume, request speed, player props and price history. See the main site’s pricing page for the current plans.