Odds API

Odds from every book, in one consistent format

Pre-match and live sports odds normalized across major bookmakers — 1X2, spreads, totals, player props and futures — with full line movement history built in.

Pre-match & live odds Normalized across books Line movement history 10 sports, 500+ leagues
THE ODDS WHISPERER
simulated feed — for illustration only
Man City vs Arsenal
63'
Home 1.85
Draw 3.40
Away 4.20
Updated 0ms ago
Djokovic vs Alcaraz
Set 2
P1 2.10
P2 1.75
Updated 0ms ago
Try this live →
What Is It

One odds schema, instead of a parser per bookmaker

The Orbistats Odds API pulls pre-match and live odds from major sportsbooks and normalizes them into a single, consistent schema — one set of market names, one outcome structure, one odds format — regardless of which book the line originally came from. Instead of writing and maintaining a custom parser for every bookmaker's feed, you integrate once and get comparable data across all of them.

It covers the markets that actually matter for pricing and product decisions: 1X2 and moneyline, spreads and handicaps, totals, player props and futures, each tracked from opening line through live in-play movement to close. Pull it over REST for on-demand lookups, stream it over WebSocket when milliseconds matter, or backtest against multiple seasons of historical closing lines through the Historical Sports Data API, which shares the same schema.

<1sLive odds update latency
5+Market types covered
10Sports covered
99.99%Uptime SLA
Core Features

Everything a pricing decision needs from one feed

Odds, markets and movement — normalized, not just relayed.

Included

Pre-Match Odds

Opening and current lines across markets, from the moment a fixture is scheduled.

Included

Live Odds

In-play odds that move with the match, delivered in near real time.

Included

Line Movement

Track how odds shift from open to close, market by market.

Included

Multiple Markets

1X2, spreads, totals, player props and futures.

Access

Multiple Bookmakers

Normalized data across major sportsbooks, one schema for all of them.

Access

Odds Format Options

Decimal by default, with fractional and American formats available.

Access

WebSocket Streaming

Sub-second odds movement for trading and pricing use cases.

Access

99.99% Uptime SLA

Redundant sourcing and infrastructure on paid and enterprise plans.

Markets Covered

From the moneyline to player props

Market availability varies by sport and league — major competitions carry the full set.

MarketAlso known asExample use
1X2Moneyline (2-way in sports without draws)Home / draw / away outright result pricing.
SpreadsHandicapPoint or goal handicap markets for closer pricing on favorites.
TotalsOver/UnderCombined score or goals above or below a set line.
Player PropsPlayer specialsIndividual player performance markets — goals, points, cards and more.
FuturesOutrightsSeason-long or tournament-long winner and placement markets.
How It's Delivered

Poll it, stream it, or backtest against history

The same normalized odds schema, available three ways depending on what you're building.

MethodBest forTypical latencyHow it works
REST QueryDisplaying current odds, scheduled jobsSecondsCall GET /v1/football/odds for the current line on a given match or market.
WebSocketTrading desks, pricing engines, live UI<1 secondSubscribe to an odds channel and receive every line change as it happens.
Historical QueryBacktesting pricing modelsN/A — archivalQuery closing lines and full movement history via the Historical Sports Data API.

Need the persistent connection in more depth? See the WebSocket API page.

Coverage

Odds across 10 sports

One schema, every sport — market depth varies by competition.

⚽ FootballLive
🏀 BasketballLive
🏏 CricketLive
🎾 TennisLive
⚾ BaseballLive
🏒 Ice HockeyLive
⛳ GolfLive
🏉 RugbyLive
🥊 MMALive
🎮 EsportsLive
Example Requests

GET /v1/football/odds

Current odds for a match, in cURL, Python, Node.js and over a WebSocket connection.

cURL
curl "https://api.orbistats.com/v1/football/odds?match_id=48213" \
  -H "Authorization: Bearer YOUR_API_KEY"
Python
import requests

resp = requests.get(
  "https://api.orbistats.com/v1/football/odds",
  params={"match_id": 48213},
  headers={"Authorization": "Bearer YOUR_API_KEY"}
)
print(resp.json())
Node.js
const res = await fetch(
  "https://api.orbistats.com/v1/football/odds?match_id=48213",
  { headers: { Authorization: "Bearer YOUR_API_KEY" } }
);
const data = await res.json();
WebSocket subscribe
SUBSCRIBE wss://stream.orbistats.com/v1
{
  "channel": "odds.movement",
  "sport": "football",
  "match_id": 48213
}
Example response
{
  "match_id": 48213,
  "home_team": "Manchester City",
  "away_team": "Arsenal",
  "bookmaker": "orbistats_consensus",
  "market": "1X2",
  "odds": { "home": 1.91, "draw": 3.40, "away": 4.20 },
  "format": "decimal",
  "status": "pre_match",
  "updated_at": "2026-08-28T12:04:11Z"
}
Built For

Who runs on the Odds API

The same odds feed, shaped to whatever you're pricing or building.

Reliability

Odds that stay live when the market is moving

Markets move fastest exactly when it matters most, and that's when a feed can least afford to lag or drop. Odds data is sourced redundantly across bookmakers so a single feed outage doesn't leave you blind, delivery infrastructure runs across multiple regions, and paid plans carry a 99.99% uptime SLA with dedicated capacity available for trading and enterprise workloads.

FAQ

Common questions

Which markets does the Orbistats Odds API cover?

1X2 / moneyline, spreads and handicaps, totals (over/under), player props and futures markets, with coverage varying by sport and league.

Do you provide live in-play odds or only pre-match?

Both. Pre-match odds are available from the moment a fixture is scheduled, and live odds update in near real time as the match progresses, delivered over REST, WebSocket or webhooks.

How are odds normalized across different bookmakers?

Every book's raw feed is mapped into the same market and outcome schema, decimal odds by default with fractional and American formats available, so you can compare or aggregate lines across books without writing custom parsers for each one.

Is historical and line movement data included?

Yes. Opening lines, closing lines and full line movement history are available, and historical odds going back multiple seasons are accessible through the Historical Sports Data API using the same schema.

How fast do live odds update?

Live odds move in near real time as bookmakers adjust their lines, with WebSocket delivery built for pricing and trading use cases where seconds matter.

Is there a free plan for the Odds API?

Yes. Start free with a self-serve API key and no card required, then upgrade to a paid or enterprise plan for more markets, higher rate limits and dedicated infrastructure.

See Also

Related pages

Explore more of the platform.

Get Started

Start free. Upgrade when you need enterprise SLAs.

Self-serve API keys for developers today — dedicated infrastructure, custom feeds and SLAs when you're ready.