Continuously updated odds, consensus line-movement history, and live scores — keyed to canonical events so a moving line and the score stay in sync.
The MoneyLine live odds API keeps prices current across every tracked sportsbook, DFS platform, and exchange, with a snapshot cadence that tightens as game time approaches. You call one endpoint, get the latest moneyline, spread, total, and player-prop lines back in a single normalized JSON shape, and read consensus line-movement history to see how each market opened and moved.
Rather than streaming push, the feed is snapshot data built for polling. Far from kickoff, prices are refreshed roughly every 24 hours; as a game nears, the cadence tightens until it lands at about every 20 minutes inside three hours of the start time. That makes it straightforward to poll /v1/odds on your own interval and stay in step with the market without managing websocket connections.
Odds-history snapshots are consensus rows per market: each row carries the cross-book average, the best available price, and the no-vig fair price at that moment, along with the contributing book count. Game lines and player props are both tracked, and history is written more frequently the closer a game gets, so the line-movement chart fills in detail exactly when the market is most active.
Because odds, events, and scores all key to the same canonical eventId, a moving line and the live score stay in sync. The same call can power a live odds screen, a line-movement chart, or a steam-detection alert, and a free tier covers both personal and commercial use with every endpoint included.
Sign up and grab a key from the dashboard — no credit card for the free tier — then pass it as x-api-key on every request.
Call /v1/odds with a league filter to pull the latest moneyline, spread, total, and player-prop prices, then re-poll as game time nears.
Use the canonical eventId to call odds-history and read the per-market consensus — avg, best, and fair price — snapshot over snapshot.
Snapshots roughly every 24h far out, tightening to about every 20 min inside three hours of game time.
Opening-to-current consensus per market with avg price, best price, and no-vig fair odds.
Scores and status keyed to the same canonical events as the odds, so price and score never drift apart.
Sportsbook, DFS, and exchange prices tracked together, filterable by sourceType in one query param.
A simple REST/HTTPS contract you can poll on any interval — no websocket plumbing to keep odds current.
Start free for personal and commercial use; paid plans add throughput, not features.
GET /v1/events/:eventId/odds-history — line movement
Request
curl -H "x-api-key: $ML_API_KEY" \
"https://mlapi.bet/v1/events/nba-ev-311286/odds-history?market=moneyline"Response
{
"success": true,
"data": {
"eventId": "nba-ev-311286",
"count": 14,
"snapshots": [
{
"snapshotAt": "2026-04-08T19:00:00.000Z",
"markets": [
{
"marketType": "moneyline",
"outcome": "Boston Celtics",
"avgPrice": -175,
"bestPrice": -165,
"bestBook": "draftkings",
"fairOdds": -172,
"bookCount": 12
}
]
}
]
},
"meta": { "event": "nba-ev-311286" }
}| Time to game | Snapshot cadence |
|---|---|
| More than 7 days out | Roughly every 24 hours |
| 1–7 days out | About every 12 hours |
| 3–24 hours out | About every 60 minutes |
| Inside ~3 hours | Down to about every 20 minutes |
Display current prices and best lines that refresh as the market moves toward game time.
Plot opening-to-current consensus for any market on any event from the odds-history snapshots.
Detect sharp moves by comparing consecutive consensus snapshots per market.
Pair current prices with live scores on the same canonical event for in-game and pre-game screens.
Poll a stable JSON contract on your own interval to feed line-movement features into a model.
A live odds API delivers continually refreshed sportsbook betting lines as structured JSON, with a snapshot cadence that tightens as game time approaches so your app stays in step with the market.
It is snapshot data refreshed roughly every 24 hours far from kickoff, tightening to about every 20 minutes within three hours of game time — not a real-time push stream.
No — the API is REST/HTTPS, so you poll the odds and odds-history endpoints on your preferred interval. The tightening snapshot cadence keeps the data current without streaming.
Call odds-history with a canonical eventId and read the per-market consensus snapshots — each carries the avg, best, and no-vig fair price plus the contributing book count.
Yes. Both game lines and player props are written to history, with snapshots growing more frequent the closer a game gets.
Consensus covers sportsbooks and exchanges; DFS is excluded from consensus because its prices are indicative, not tradeable.
Scores and status key to the same canonical events as the odds, so a moving line and the current score stay in sync on one eventId.
Free
$0/mo
1K credits/mo
Starter
$29/mo
150K credits/mo
Pro
$149/mo
1.5M credits/mo
Business
$299/mo
5M credits/mo
Enterprise
Custom
Unlimited credits/mo
Free tier to start, one API key, normalized responses across every league and sportsbook.