Player Props

Access normalized player prop markets for NBA, NFL, MLB, NHL, NCAAB, and NCAAF using canonical event identifiers that are join-safe with Events, Odds, and Edge. If you already have an eventId, you can use it directly against both /v1/events/:eventId/odds and /v1/events/:eventId/player-props.

Need game lines too? See the Odds docs. For a product overview, see the Player Props API page.

Browse Player Props

GET/v1/player-props

Browse player props grouped by event, then player, market, and line.

ParameterTypeRequiredDescription
leaguestringNoFilter by league identifier
marketstringNoFilter by prop market key such as player_points or player_pass_yds
playerstringNoCase-insensitive player-name filter
playerIdstringNoExact playerId filter when you already have the canonical player identifier
bookmakerstringNoOne or more bookmaker keys or names, comma-separated (e.g. draftkings,kalshi)
sourceTypestringNoall, sportsbook, dfs, exchange
limitnumberNoMax 50, default 25
pagenumberNoPage number for pagination

Response

{
  "success": true,
  "data": [
    {
      "eventId": "nba-ev-311286",
      "canonicalEventId": "nba-ev-311286",
      "leagueId": "nba",
      "sport": "basketball",
      "homeTeamName": "Boston Celtics",
      "awayTeamName": "New York Knicks",
      "startTime": "2026-03-26T23:10:00.000Z",
      "fetchedAt": "2026-03-25T00:10:00.000Z",
      "players": [
        {
          "playerName": "Jayson Tatum",
          "playerId": "nba-p-1628369",
          "teamAbbr": "BOS",
          "teamName": "Boston Celtics",
          "markets": [
            {
              "marketType": "player_points",
              "marketName": "Points",
              "format": "over_under",
              "isAlternate": false,
              "lines": [
                {
                  "point": 29.5,
                  "offers": [
                    { "bookmakerId": "fanduel", "bookmakerName": "FanDuel", "sourceType": "sportsbook", "sourceRegion": "us", "selection": "Over", "price": 120, "impliedProbability": 0.455, "isBest": false },
                    { "bookmakerId": "prizepicks", "bookmakerName": "PrizePicks", "sourceType": "dfs", "sourceRegion": "us_dfs", "selection": "Over", "price": 125, "impliedProbability": 0.444, "isBest": true }
                  ]
                }
              ]
            }
          ]
        }
      ]
    }
  ],
  "meta": { "count": 1, "page": 1 }
}

Event Player Props

GET/v1/events/:eventId/player-props

Get player props for one canonical event ID from /v1/events. Legacy/mismatched stored IDs are resolved server-side.

ParameterTypeRequiredDescription
eventIdstringYesCanonical MoneyLine event identifier
marketstringNoOptional exact prop market key filter
playerstringNoOptional case-insensitive player-name filter
bookmakerstringNoOne or more bookmaker keys or names, comma-separated (e.g. draftkings,kalshi)
sourceTypestringNoall, sportsbook, dfs, exchange

Response

{
  "success": true,
  "data": {
    "eventId": "nba-ev-311286",
    "canonicalEventId": "nba-ev-311286",
    "leagueId": "nba",
    "sport": "basketball",
    "homeTeamName": "Boston Celtics",
    "awayTeamName": "New York Knicks",
    "startTime": "2026-03-26T23:10:00.000Z",
    "fetchedAt": "2026-03-25T00:10:00.000Z",
    "players": [
      {
        "playerName": "Jayson Tatum",
        "markets": [
          {
            "marketType": "player_points",
            "marketName": "Points",
            "format": "over_under",
            "isAlternate": false,
            "lines": [
              {
                "point": 29.5,
                "summary": {
                  "over":  { "fairOdds": -108, "bestOdds": 120, "avgOdds": -112 },
                  "under": { "fairOdds": -104, "bestOdds": -105, "avgOdds": -106 }
                },
                "offers": [
                  { "bookmakerId": "fanduel", "bookmakerName": "FanDuel", "sourceType": "sportsbook", "sourceRegion": "us", "selection": "Over", "price": 120, "impliedProbability": 0.455, "isBest": true },
                  { "bookmakerId": "kalshi", "bookmakerName": "Kalshi", "sourceType": "exchange", "sourceRegion": "us_ex", "selection": "Over", "price": 118, "impliedProbability": 0.459, "isBest": false }
                ]
              }
            ]
          }
        ]
      }
    ]
  },
  "meta": { "league": "nba", "event": "nba-ev-311286" }
}

Line-level summary

  • Each line object now includes a summary with fair (no-vig), best, and average odds per selection.
  • fairOdds removes each sportsbook's vig from its own Over/Under pair by the odds-ratio method, averages those no-vig prices across books (the pair sums to 1.0), then converts back to American.
  • bestOdds is the highest American odds offered by any book for that selection.
  • avgOdds is the mean implied probability across all books, converted to American.
  • Summary is computed from all returned bookmakers for that line.

Supported Markets

GET/v1/player-props/markets

List all supported player prop markets by league.

ParameterTypeRequiredDescription
leaguestringNoOptional league identifier to return one league only

Response

{
  "success": true,
  "data": [
    {
      "leagueId": "nba",
      "sport": "basketball",
      "markets": [
        { "marketType": "player_points", "marketName": "Points", "format": "over_under", "isAlternate": false, "supportsPoint": true },
        { "marketType": "player_points_alternate", "marketName": "Alternate Points", "format": "over_under", "isAlternate": true, "supportsPoint": true }
      ]
    }
  ],
  "meta": { "count": 1, "league": "nba" }
}