Player Props API
Live player prop odds from 37 sportsbooks, DFS apps and exchanges in one JSON response — NFL, NBA, MLB, NHL, soccer, tennis and UFC. After the game, every prop is graded won / lost / push against the official box score.
1,000 requests/day free · no credit card · the-odds-api compatible
One request, every book's line
Ask for a game and a market. You get every book that prices it, side by side:
curl "https://api.prop-line.com/v1/sports/football_nfl/events/{EVENT_ID}/odds?apiKey=YOUR_KEY&markets=player_reception_yds"{
"sport_key": "football_nfl",
"home_team": "Kansas City Chiefs",
"away_team": "Buffalo Bills",
"bookmakers": [
{ "key": "draftkings", "markets": [{ "key": "player_reception_yds",
"outcomes": [
{ "name": "Over", "description": "Travis Kelce", "point": 58.5, "price": -115 },
{ "name": "Under", "description": "Travis Kelce", "point": 58.5, "price": -105 } ] }] },
{ "key": "fanduel", "markets": [{ "key": "player_reception_yds",
"outcomes": [
{ "name": "Over", "description": "Travis Kelce", "point": 57.5, "price": -112 },
{ "name": "Under", "description": "Travis Kelce", "point": 57.5, "price": -108 } ] }] },
{ "key": "prizepicks", "markets": [ ... ] }
]
}Example values. Outcomes also carry player_id, line_type and last_seen_at.
Player prop markets by sport
NFL player props
Full traditional-book and DFS boards, graded against ESPN box scores. More on NFL →
College football (NCAAF) player props
DraftKings, FanDuel, Pinnacle, PrizePicks and Underdog boards. More on College football (NCAAF) →
MLB player props
Pitching and batting markets, O/U lines plus N+ milestone ladders.
NBA and WNBA player props
Same market set for both leagues, plus combos and first basket.
NHL player props
Skater and goalie markets.
Soccer player props
31 leagues, from the EPL and La Liga to the Champions League and MLS.
Tennis player props
ATP, WTA and Challenger matches. More on Tennis →
UFC fighter props
Graded from official fight stats.
Plus game lines (moneyline, spread, total, team totals, alt lines, quarters and halves) for all 57 sports. College basketball props join when the season tips off in November.
Player props odds providers we cover
37 sources, normalized to one schema, so the same player and the same line line up across books.
Sportsbooks (23)
DFS pick'em apps (6)
Exchanges and prediction markets (8)
A player props data API, not just a price feed
Odds are where most APIs stop. These are the parts you'd otherwise build yourself:
- Graded results. Every Over/Under settled won, lost or push against the real stat from MLB Stats, the NBA, NHL and ESPN, with the actual value attached. How grading works →
- Line history and closing lines. Every price change since April 2026, plus opening and closing line per book for CLV.
- Player IDs. A stable
player_idso one player matches across books that spell him differently. - Main vs alternate lines. Each line is marked main, alternate or milestone (N+), so alt ladders don't pollute your model.
- Player trends and hit rates. Last 5, 10, 20 and 50 games over/under per market, from graded results.
- Cross-book +EV and best line. No-vig fair prices and the best price for every prop across books.
{
"key": "pitcher_strikeouts",
"outcomes": [
{ "name": "Over", "description": "Tarik Skubal",
"point": 6.5, "resolution": "won", "actual_value": 8.0 }
]
}Python and Node SDKs
Or call the REST API from anything that speaks HTTP.
Python
# pip install propline
from propline import PropLine
client = PropLine("your_api_key")
events = client.get_events("basketball_nba")
odds = client.get_odds("basketball_nba",
event_id=events[0]["id"],
markets=["player_points", "player_rebounds"])Node / TypeScript
// npm install propline
import { PropLine } from "propline";
const client = new PropLine("your_api_key");
const events = await client.getEvents("basketball_nba");
const odds = await client.getOdds("basketball_nba", {
eventId: events[0].id,
markets: ["player_points", "player_rebounds"],
});Player props: PropLine vs the-odds-api
| PropLine | the-odds-api | |
|---|---|---|
| Free tier | 1,000 requests/day | 500 credits/month |
| Pricing | Per request, any number of markets | Credits per market and region |
| Graded prop results | Yes, won/lost/push + actual stat | No |
| DFS apps and exchanges | Yes, in the same response | — |
| Response format | the-odds-api compatible | — |
Already on the-odds-api? See the switch guide → Comparing prices? Cheapest player props API →
Player props API FAQ
Is there a free player props API?
Yes. PropLine's free tier gives you 1,000 requests a day across every sport and book, with no credit card. Paid plans start at $9/month for 5,000 requests a day plus graded results, odds history and +EV.
Which player props odds providers do you cover?
37 in total: 23 sportsbooks (including DraftKings, FanDuel, BetMGM, Fanatics, Pinnacle and Hard Rock Bet), 6 DFS apps (including PrizePicks, Underdog and Sleeper) and 8 exchanges and prediction markets (including Kalshi, Polymarket and Novig). Every response returns all of them side by side.
Does the-odds-api have player props?
It does, priced in credits per market and region, with no graded results. PropLine returns the same response shape, so a the-odds-api integration switches by changing the base URL and key, and you pay per request instead of per market.
What's in the player props data?
Each outcome carries the player, line, price, the book, a stable player_id, whether the line is the main line, an alternate or a milestone, and when we last saw it on the book. Historical line movement and the closing line are one call away, and after the game every prop gets its result and the player's actual stat.
How often are player prop odds updated?
Every 60 seconds before the game and every 30-40 seconds in play. DraftKings, FanDuel, Fanatics, Kalshi and Polymarket stream changes in about a second. Each market has a last_update timestamp, and live per-book freshness is public at /freshness.
Do you have historical player prop odds?
Yes, from April 2026: every price change is stored, so you get the opening line, the closing line and every move in between. A one-time $99 backfill pass exports the whole archive as CSV.
Can I use it in a commercial product?
Yes, on every tier including free.
Get a free player props API key
1,000 requests a day, every book, no credit card.
Free tier includes 1,000 requests/day. Upgrade anytime.