Player Props API

Real-time player prop lines from major sportsbooks via a simple REST API — pitcher strikeouts, player points, goalscorer odds, and 60+ markets. And the part other APIs skip: every prop is graded won / lost / push against the real box score, so you know whether it actually hit.

What is a player props API?

A player props API provides programmatic access to player-level betting lines from sportsbooks. Instead of manually checking odds on betting sites, developers can pull structured data for individual player markets — like how many strikeouts a pitcher will throw, how many points a basketball player will score, or whether a hockey player will score a goal.

PropLine's API delivers this data in real time, refreshing every 60 seconds (30s for in-progress games), in a clean JSON format that's compatible with the-odds-api. This makes it easy to build betting tools, analytics dashboards, line shopping apps, and prop betting models.

Supported sports and markets

⚾ MLB Player Props

Full coverage of baseball player props including pitching and batting markets.

Pitcher StrikeoutsPitcher Earned RunsPitcher Hits AllowedBatter HitsBatter Home RunsBatter RBIsBatter Total BasesBatter Stolen BasesBatter WalksBatter SinglesBatter DoublesBatter Runs

🏀 NBA Player Props

Individual player performance markets for basketball.

Player PointsPlayer ReboundsPlayer AssistsPlayer ThreesPoints + Rebounds + AssistsDouble-DoubleTriple-Double

🏒 NHL Player Props

Hockey player props including goalscorer and goalie markets.

Anytime GoalscorerShots on GoalGoalie SavesBlocked ShotsPlayer Points

🏈 NFL

NFL player props available when the season starts in September. Game lines available year-round.

🎾 Tennis

Match-level betting markets for ATP, WTA, and challenger events.

Match WinnerGame SpreadTotal Games O/U

⛳ Golf

Tournament winner odds, placement props, and matchup markets.

Tournament WinnerMatchup Props

🏀 College Sports

College basketball (NCAAB) has full player props — same markets as NBA (points, rebounds, assists, threes, combos). College football (NCAAF) has game lines with player props when in season.

⚽ Soccer

27 leagues: EPL, La Liga, Serie A, Bundesliga, Ligue 1, MLS, Championship, Eredivisie, Liga MX, Primeira Liga, Brasileirão, Argentine Liga Profesional, Scottish Premiership, Saudi Pro, Eliteserien, J1, Süper Lig, Belgian Pro League, Allsvenskan, Greek Super League, Swiss Super League, A-League, UEFA Champions League, UEFA Europa League, UEFA Conference League, Copa Libertadores, and Copa Sudamericana. Player and match-level betting markets.

Anytime Goal ScorerFirst Goal ScorerBoth Teams to ScoreCorrect ScoreTotal CornersTotal Cards

🥊 UFC

MMA fight props for all UFC events.

Total RoundsFight DistanceRound Betting

🥊 Boxing

Fight-level betting markets for major boxing events.

Fight WinnerFight OutcomeTotal RoundsFight Distance

Prop resolution — did the bet win?

PropLine is the only player props API that tells you whether each prop bet won, lost, or pushed. After games complete, we automatically cross-reference actual player stats from official box scores against every recorded prop line.

This means you can build backtesting tools, track betting records, identify profitable trends, and verify results — all from a single API. No more manually checking box scores or maintaining your own stats database.

{
  "key": "pitcher_strikeouts",
  "description": "Total Strikeouts - Tarik Skubal (DET)",
  "outcomes": [
    {
      "name": "Over",
      "description": "Tarik Skubal (DET)",
      "point": 6.5,
      "resolution": "won",
      "actual_value": 7.0
    }
  ]
}

Prop resolution is a paid feature starting at the Hobby tier ($9/mo) via the /results endpoint.

How it works

1

Get your API key

Enter your email below. No credit card, no signup form. You get a key instantly with 1,000 requests/day.

2

Make API requests

Call our REST endpoints to get events, odds, and player props. Use the Python or Node SDK, or any HTTP client.

3

Build your product

Use the data to power betting tools, analytics dashboards, line shopping apps, or prop betting models.

Quick example

Get MLB pitcher strikeout props with a single request:

curl "https://api.prop-line.com/v1/sports/baseball_mlb/events/{EVENT_ID}/odds?apiKey=YOUR_API_KEY&markets=pitcher_strikeouts"
{
  "id": "16",
  "sport_key": "baseball_mlb",
  "home_team": "Detroit Tigers",
  "away_team": "St. Louis Cardinals",
  "bookmakers": [
    {
      "key": "bovada",
      "markets": [{
        "key": "pitcher_strikeouts",
        "outcomes": [
          {"name": "Over",  "description": "Tarik Skubal (DET)",
           "price": -150, "point": 6.5},
          {"name": "Under", "description": "Tarik Skubal (DET)",
           "price": 120,  "point": 6.5}
        ]
      }]
    },
    {
      "key": "draftkings",
      "markets": [{
        "key": "pitcher_strikeouts",
        "outcomes": [
          {"name": "Over",  "description": "Tarik Skubal",
           "price": -145, "point": 6.5},
          {"name": "Under", "description": "Tarik Skubal",
           "price": 115,  "point": 6.5}
        ]
      }]
    },
    {
      "key": "fanduel",
      "markets": [{
        "key": "pitcher_strikeouts",
        "outcomes": [
          {"name": "Over",  "description": "Tarik Skubal",
           "price": -155, "point": 6.5},
          {"name": "Under", "description": "Tarik Skubal",
           "price": 125,  "point": 6.5}
        ]
      }]
    }
  ]
}

Official SDKs

Install the official client and start pulling props in 5 lines of code.

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"])
View on PyPI →

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"],
});
View on npm →

PropLine vs the-odds-api

PropLinethe-odds-api
Free tier1,000 requests/day500 requests/month
Prop resolutionYes — won/lost/push per outcomeNo
Player props focusYes — 60+ prop marketsLimited
Update frequencyEvery 60 seconds (30s live)Varies
API formatthe-odds-api compatible
Python SDKpip install proplinepip install the-odds-api
Node / TS SDKnpm install proplineCommunity only
Historical oddsHobby ($9/mo)10x credit cost
Sports38 (MLB, NBA, NHL, NFL, soccer, UFC, boxing, tennis, golf, college)30+ sports

Frequently asked questions

Is the player props API free?

Yes. The free tier gives you 1,000 requests per day across all sports with no credit card required. That's enough to poll every game many times per day.

What format is the data in?

JSON via REST API. The response format is compatible with the-odds-api, so if you have an existing integration, you can switch with minimal code changes.

How often are odds updated?

Every 60 seconds for pre-game lines, every 30 seconds for in-progress games. We poll sportsbooks continuously and update our database in real time. The last_update timestamp on each market tells you exactly when the odds were last refreshed; live per-book staleness is visible at /freshness.

Do you have historical odds data?

Yes — paid subscribers (from the Hobby tier, $9/mo) can access historical line movement data via the /odds/history endpoint. We record a snapshot every time odds change, starting from April 2026.

What sportsbooks do you cover?

We source odds from 16 books — 9 sportsbooks (BetMGM, BetRivers, Bovada, DraftKings, FanDuel, Pinnacle, Unibet, 1xBet, TAB AU) + 2 DFS (PrizePicks, Underdog Fantasy) + 3 betting exchanges (Matchbook, Smarkets, Novig) + 2 prediction markets (Kalshi, Polymarket). MLB / NBA / NHL get the deepest coverage with player props from BetMGM + BetRivers + Bovada + DraftKings + FanDuel + Novig + Underdog + PrizePicks plus game lines from Pinnacle / Unibet / 1xBet / TAB AU / Kalshi / Polymarket / Matchbook / Smarkets. The 27 soccer leagues run Bovada + Pinnacle as the baseline, with the major Big-5 + MLS + Championship + Eredivisie + Liga MX adding BetRivers / DraftKings / FanDuel / Underdog / Polymarket coverage and Kalshi covering EPL / La Liga / Serie A / Bundesliga / Ligue 1 / Scottish Premiership. Every response includes a bookmakers array so you can compare lines across all of them in a single request.

Can I use this for commercial projects?

Yes. Both free and paid tiers can be used in commercial applications. Historical data is available from the Hobby tier ($9/month); the Pro tier at $19/month gives you 25,000 requests/day.

Start using the player props API

Get your free API key and start pulling live player props in under a minute.

Free tier includes 1,000 requests/day. Upgrade anytime.