Player Props
PropLine is a real-time player-prop betting odds API with automatic prop resolution across 45 sports: MLB, NBA, WNBA, NHL, NFL, NCAAB, NCAAF, EPL, La Liga, Serie A, Bundesliga, Ligue 1, MLS, Championship, Eredivisie, Liga MX, Primeira Liga, Brasileirão, Liga Profesional Argentina, Scottish Premiership, Saudi Pro League, Eliteserien, J1 League, Süper Lig, Belgian Pro League, Allsvenskan, Greek…
Player Props endpoints
| Method | Endpoint | Description |
|---|---|---|
| Sports | ||
| GET |
list_sports_v1_sports_get /v1/sports |
List all available sports. |
| Events & Odds | ||
| GET |
get_event_odds_history_v1_sports__sport_key__events__event_id__odds_history_get /v1/sports/{sport_key}/events/{event_id}/odds/history |
Historical odds movement for a single event. Pro / Streaming / Enterprise: full snapshot history. Free tier: redacted (shows structure and count). Depth is tier-gated by event… |
| GET |
list_futures_v1_sports__sport_key__futures_get /v1/sports/{sport_key}/futures |
List futures markets for a sport — championship winner, MVP, division winner, etc. One row per (futures event, book, market) with every team or player priced. Free tier; pulled… |
| GET |
get_event_odds_v1_sports__sport_key__events__event_id__odds_get /v1/sports/{sport_key}/events/{event_id}/odds |
Get odds for a single event — supports player prop markets. This is where the real value is. |
| GET |
list_odds_v1_sports__sport_key__odds_get /v1/sports/{sport_key}/odds |
Bulk odds for a sport. Filter by market keys (comma-separated). |
| GET |
get_event_odds_closing_v1_sports__sport_key__events__event_id__odds_closing_get /v1/sports/{sport_key}/events/{event_id}/odds/closing |
Returns the last snapshot per (book, market, outcome) at or before commence_time — the canonical closing line for CLV tracking. Replaces the "fetch full history → find latest… |
| GET |
list_event_markets_v1_sports__sport_key__events__event_id__markets_get /v1/sports/{sport_key}/events/{event_id}/markets |
List available market types for a specific event. Useful for discovering what props are available before requesting odds. |
| GET |
list_events_v1_sports__sport_key__events_get /v1/sports/{sport_key}/events |
List upcoming events for a sport (no odds — free endpoint). |
| +EV | ||
| GET |
get_event_ev_v1_sports__sport_key__events__event_id__ev_get /v1/sports/{sport_key}/events/{event_id}/ev |
Compute cross-book +EV for a single event. `markets` is an optional comma-separated filter. If omitted, every market on the event is evaluated. Each market line that has Pinnacle… |
| GET |
get_event_best_line_v1_sports__sport_key__events__event_id__best_line_get /v1/sports/{sport_key}/events/{event_id}/best-line |
Cross-book best-line lookup for a single event. For each (market, player, line) tuple on the event, returns the single best American price across every book PropLine ingests,… |
| GET |
calc_event_ev_v1_sports__sport_key__events__event_id__ev_calc_get /v1/sports/{sport_key}/events/{event_id}/ev/calc |
Calculate EV% for a user-supplied price against the event's no-vig fair anchor. Useful when you bet at a book PropLine doesn't carry directly (Caesars, BetMGM, Fanatics, BetUS,… |
| Scores & Results | ||
| GET |
get_event_stats_v1_sports__sport_key__events__event_id__stats_get /v1/sports/{sport_key}/events/{event_id}/stats |
Actual player/team stats from box scores (book-agnostic). Use these to resolve props against any sportsbook's lines. Free tier — no Pro required. |
| GET |
get_event_context_v1_sports__sport_key__events__event_id__context_get /v1/sports/{sport_key}/events/{event_id}/context |
Conditions a game is played under: probable starting pitchers, confirmed-lineup flag, the home-plate umpire, and first-pitch weather (outdoor / open-roof venues). The same… |
| GET |
get_event_results_v1_sports__sport_key__events__event_id__results_get /v1/sports/{sport_key}/events/{event_id}/results |
Resolved prop outcomes with actual player stats. Pro / Streaming / Enterprise: full resolution data. Free tier: redacted (shows structure but hides results). |
| GET |
list_scores_v1_sports__sport_key__scores_get /v1/sports/{sport_key}/scores |
Game scores and status for recent events (last N days). Free tier — no Pro required. |
| GET |
nhl_daily_goals_total_v1_sports_hockey_nhl_daily_goals_total_get /v1/sports/hockey_nhl/daily-goals-total |
Hockey's equivalent of the MLB Grand Salami — total goals scored across all NHL games on a given UTC date (incl. OT/SO), plus each book's implied Daily Goals Total line (sum of… |
| GET |
mlb_grand_salami_v1_sports_baseball_mlb_grand_salami_get /v1/sports/baseball_mlb/grand-salami |
Synthetic daily Grand Salami — total runs scored across all MLB games on a given UTC date, plus each book's implied Grand Salami line (sum of per-game primary totals across our… |
| Odds | ||
| GET |
get_event_movement_v1_sports__sport_key__events__event_id__movement_get /v1/sports/{sport_key}/events/{event_id}/movement |
Line movement derived from the snapshot tick history. Per (book, market, outcome): opening line, latest line, and the implied-probability / point shift between them. The steam[]… |
| Players | ||
| GET |
get_player_history_v1_sports__sport_key__players__player_name__history_get /v1/sports/{sport_key}/players/{player_name}/history |
Resolved prop history for a player in a given market. Returns one entry per (event, bookmaker) pair with line + prices + resolution + actual value. Pro / Streaming / Enterprise:… |
| GET |
get_player_trends_v1_sports__sport_key__players__player_name__trends_get /v1/sports/{sport_key}/players/{player_name}/trends |
Aggregated hit-rate trends for a player — "did X go over in N of his last M games?" — across every market they have graded history in. For each market: over/under/push splits… |
| Exports | ||
| GET |
export_odds_history_v1_exports_odds_history_get /v1/exports/odds-history |
Stream the full line-movement time-series as CSV — every recorded odds snapshot (price + line, per book, including period markets) for every outcome, not just the closing line.… |
| GET |
export_sample_v1_exports_sample_get /v1/exports/sample |
Public sample: last 7 days of MLB pitcher_strikeouts as CSV. No auth required — this is a SEO/marketing lead magnet. Capped to keep it a taste, not a full dataset. For full… |
| GET |
export_resolved_props_v1_exports_resolved_props_get /v1/exports/resolved-props |
Stream resolved prop outcomes as CSV. Pro+ tier required. One row per (event, market, bookmaker, outcome). Includes the line, price, resolution (won/lost/push/void), and actual… |
| Analytics | ||
| GET |
get_market_hit_rates_v1_markets_hit_rates_get /v1/markets/hit-rates |
Per-market daily Over hit rates over the last N days. Response shape: { "days": 28, "bookmaker": "bovada", "markets": { "pitcher_strikeouts": [ {"date": "2026-04-01", "total":… |
| GET |
get_resolution_summary_v1_markets_resolution_summary_get /v1/markets/resolution-summary |
Factual volume of graded player props over the last N days. Aggregated counts only (no individual prop data). Every outcome counted here was graded against the real box score — a… |
| Other endpoints | ||
| GET |
list_sports_v1_sports_get /v1/sports |
List all available sports. |
| GET |
root__get / |
|
| GET |
list_sports_v1_sports_get /v1/sports |
List all available sports. |
| GET |
list_scores_v1_sports__sport_key__scores_get /v1/sports/{sport_key}/scores |
Game scores and status for recent events (last N days). Free tier — no Pro required. |
| GET |
get_event_results_v1_sports__sport_key__events__event_id__results_get /v1/sports/{sport_key}/events/{event_id}/results |
Resolved prop outcomes with actual player stats. Pro tier: full resolution data. Free tier: redacted (shows structure but hides results). |
| GET |
list_odds_v1_sports__sport_key__odds_get /v1/sports/{sport_key}/odds |
Bulk odds for a sport. Filter by market keys (comma-separated). |
| GET |
list_event_markets_v1_sports__sport_key__events__event_id__markets_get /v1/sports/{sport_key}/events/{event_id}/markets |
List available market types for a specific event. Useful for discovering what props are available before requesting odds. |
| GET |
list_events_v1_sports__sport_key__events_get /v1/sports/{sport_key}/events |
List upcoming events for a sport (no odds — free endpoint). |
| GET |
get_event_odds_v1_sports__sport_key__events__event_id__odds_get /v1/sports/{sport_key}/events/{event_id}/odds |
Get odds for a single event — supports player prop markets. This is where the real value is. |
| GET |
get_event_odds_history_v1_sports__sport_key__events__event_id__odds_history_get /v1/sports/{sport_key}/events/{event_id}/odds/history |
Historical odds movement for a single event. Pro tier: full snapshot history. Free tier: redacted (shows structure and count). |
| GET |
get_event_stats_v1_sports__sport_key__events__event_id__stats_get /v1/sports/{sport_key}/events/{event_id}/stats |
Actual player/team stats from box scores (book-agnostic). Use these to resolve props against any sportsbook's lines. Free tier — no Pro required. |
| GET |
health_health_get /health |
|
| GET |
health_health_get /health |
|
| GET |
get_player_history_v1_sports__sport_key__players__player_name__history_get /v1/sports/{sport_key}/players/{player_name}/history |
Resolved prop history for a player in a given market. Returns one entry per (event, bookmaker) pair with line + prices + resolution + actual value. Pro / Streaming / Enterprise:… |
| GET |
list_sports_v1_sports_get /v1/sports |
List all available sports. |
| GET |
export_sample_v1_exports_sample_get /v1/exports/sample |
Public sample: last 7 days of MLB pitcher_strikeouts as CSV. No auth required — this is a SEO/marketing lead magnet. Capped to keep it a taste, not a full dataset. For full… |
| GET |
export_resolved_props_v1_exports_resolved_props_get /v1/exports/resolved-props |
Stream resolved prop outcomes as CSV. Pro+ tier required. One row per (event, market, bookmaker, outcome). Includes the line, price, resolution (won/lost/push/void), and actual… |
| GET |
list_futures_v1_sports__sport_key__futures_get /v1/sports/{sport_key}/futures |
List futures markets for a sport — championship winner, MVP, division winner, etc. One row per (futures event, book, market) with every team or player priced. Free tier; pulled… |
| GET |
get_event_odds_history_v1_sports__sport_key__events__event_id__odds_history_get /v1/sports/{sport_key}/events/{event_id}/odds/history |
Historical odds movement for a single event. Pro / Streaming / Enterprise: full snapshot history. Free tier: redacted (shows structure and count). |
| GET |
list_events_v1_sports__sport_key__events_get /v1/sports/{sport_key}/events |
List upcoming events for a sport (no odds — free endpoint). |
| GET |
get_event_ev_v1_sports__sport_key__events__event_id__ev_get /v1/sports/{sport_key}/events/{event_id}/ev |
Compute cross-book +EV for a single event. `markets` is an optional comma-separated filter. If omitted, every market on the event is evaluated. Each market line that has Pinnacle… |
| GET |
list_odds_v1_sports__sport_key__odds_get /v1/sports/{sport_key}/odds |
Bulk odds for a sport. Filter by market keys (comma-separated). |
| GET |
get_event_odds_v1_sports__sport_key__events__event_id__odds_get /v1/sports/{sport_key}/events/{event_id}/odds |
Get odds for a single event — supports player prop markets. This is where the real value is. |
| GET |
get_market_hit_rates_v1_markets_hit_rates_get /v1/markets/hit-rates |
Per-market daily Over hit rates over the last N days. Response shape: { "days": 28, "bookmaker": "bovada", "markets": { "pitcher_strikeouts": [ {"date": "2026-04-01", "total":… |
| GET |
list_event_markets_v1_sports__sport_key__events__event_id__markets_get /v1/sports/{sport_key}/events/{event_id}/markets |
List available market types for a specific event. Useful for discovering what props are available before requesting odds. |
Player Props pricing
| Plan | Price | Rate limit | Quotas |
|---|---|---|---|
| BASIC | Free | — |
|