Player Props API

Pre-match player prop odds for the AFL, NRL, IPL, MLB, NFL, the Premier League and more, sourced from 21 Australian bookmakers. One clean REST API in the SportsGameOdds shape, with event status and results included on every plan.

What you get

  • 21 Australian bookmakers compared side by side on every prop, including alternate lines where a book prices them.
  • Refresh every ~2 minutes on every plan — see pricing for scope per tier.
  • 188 distinct player-prop markets: Cricket (runs, wickets, fours); Baseball (points / score, rbis, hits); Soccer (points / score, first to score, last to score); Ice Hockey (points / score, first to score, goals + assists); Basketball (points / score, assists, blocks).
  • Status and results included on every plan, so you can settle props without a second data source.
  • One REST endpoint returns an event's full odds tree; player props are filtered by a single field (statEntityID).

How to get player props from the API

Player props come back from the same /v2/events endpoint as game lines — there is no separate props endpoint. Request a league and the response includes every market for those events, props included:

https://api.sockodds.com/v2/events?apiKey=YOUR_API_KEY&leagueID=MLB&oddsAvailable=true&limit=10

To pull one prop type instead of the whole tree, filter with oddID. PLAYER_ID stands for every player:

https://api.sockodds.com/v2/events?apiKey=YOUR_API_KEY&leagueID=MLB&oddsAvailable=true&oddID=points-PLAYER_ID-game-ou-over&includeOpposingOdds=true

The full list of prop types is in the stats reference, and markets & coverage documents how markets are structured.

What a player prop looks like in the API

Every event returns an odds object. Team markets (lines, totals) use statEntityID values of all, home or away. Player props use the player's id instead — that one field is how you tell them apart. Each prop carries a byBookmaker block with every book's line and price.

{
  "eventID": "afl_2026-09-12_brisbane_lions_vs_adelaide_crows",
  "leagueID": "AFL",
  "teams": {
    "away": {
      "names": {
        "long": "Adelaide Crows"
      }
    },
    "home": {
      "names": {
        "long": "Brisbane Lions"
      }
    }
  },
  "odds": {
    "disposals-LACHIE_NEALE_1_AFL-game-ou-over": {
      "oddID": "disposals-LACHIE_NEALE_1_AFL-game-ou-over",
      "opposingOddID": "disposals-LACHIE_NEALE_1_AFL-game-ou-under",
      "marketName": "Lachie Neale Disposals Over/Under",
      "statID": "disposals",
      "statEntityID": "LACHIE_NEALE_1_AFL",
      "playerID": "LACHIE_NEALE_1_AFL",
      "periodID": "game",
      "betTypeID": "ou",
      "sideID": "over",
      "fairOdds": "-108",
      "fairOverUnder": "29.5",
      "bookOdds": "-110",
      "bookOverUnder": "29.5",
      "byBookmaker": {
        "sportsbet": {
          "available": true,
          "overUnder": "29.5",
          "odds": "-110",
          "decimal": 1.91,
          "lastUpdatedAt": "2026-09-06T08:27:48.000Z"
        },
        "tab": {
          "available": true,
          "overUnder": "29.5",
          "odds": "-108",
          "decimal": 1.93,
          "lastUpdatedAt": "2026-09-06T08:27:31.000Z"
        },
        "pointsbet": {
          "available": true,
          "overUnder": "28.5",
          "odds": "-105",
          "decimal": 1.95,
          "lastUpdatedAt": "2026-09-06T08:26:55.000Z"
        }
      }
    }
  }
}

Filtering for player props is one check: keep any odd whose statEntityID is not all, home or away.

Three things to note when you parse this. Odds and lines come back as strings, which keeps the leading + on plus-money prices — and each book also carries decimal, because Australian books quote decimal. fairOdds is the de-vigged consensus (Base and above) while bookOdds is the consensus with the juice left in. And each book carries its own overUnder as well as its own price: PointsBet is on 28.5 above while the other two are on 29.5, so comparing prices without comparing lines will give you a false edge.

For a worked end-to-end example, see the player props analyzer, which pulls every prop for an event, builds a consensus line and flags books that are off it.

Coverage by sport

Cricket — IPL

Runs, Wickets, Fours, Sixes, Player of the match, Strike rate, Performance. 52 prop markets from Ladbrokes, Neds, Unibet, TAB, Dabble and more. Cricket odds API →

Baseball — MLB

Points / score, RBIs, Hits, Doubles, Singles, Home runs, Total bases, Pitcher strikeouts, Triples, Outs recorded, Stolen bases, Hits allowed, Hits + runs + RBIs, Batter strikeouts, Walks, Walks allowed, Pitcher win, Earned runs. 36 prop markets from Dabble, Neds, ProphetX, Unibet, Sportsbet and more. Baseball odds API →

Soccer — Brasileiro Série A, Bundesliga, Premier League, FIFA World Cup, Ligue 1, Iceland 1. deild, Besta deild, Serie A, La Liga, MLS, Scottish Premiership, Slovak 2. Liga, Slovak Super Liga, Champions League, Conference League, Champions League Qualifiers, Conference League Qualifiers, Europa League Qualifiers, Europa League

Points / score, First to score, Last to score, Goals + assists, Shots on goal, Assists, Cards, Tackles, Fouls, Fouls drawn, Header goal, Goal from outside the box, Passes attempted, First goalscorer, Scoring method, Shots on target, Saves, Shots. 30 prop markets from MintBet, Unibet, PointsBet, Sportsbet, BetFocus and more. Soccer odds API →

Ice Hockey — NHL

Points / score, First to score, Goals + assists, Shots on goal, Assists, Goals, Blocks, Last to score, Goalie saves, Goals against, Power-play points. 29 prop markets from Ladbrokes, Neds, Sportsbet, Picklebet, BetRight and more. Ice Hockey odds API →

Basketball — NBA

Points / score, Assists, Blocks, Steals, Rebounds, First basket, Double-double, Triple-double, Points + assists, Points + rebounds, Rebounds + assists, Three-pointers made, Points + rebounds + assists. 26 prop markets from Sportsbet, Ladbrokes, Neds, BetDeluxe, BetFocus and more. Basketball odds API →

Aussie Rules — AFL, AFLW

First goalscorer, Goals, Last goalscorer, Disposals, First goalscorer (home), First goalscorer (away). 16 prop markets from TAB, Dabble, Picklebet, BetRight, SwiftBet and more. Aussie Rules odds API →

Rugby League — NRL, NRLW, State of Origin

Tries, First try scorer, Anytime try scorer, Last try scorer (away), First try scorer (away), Last try scorer (home), First try scorer (home). 10 prop markets from BetDeluxe, TAB, bet365. Rugby League odds API →

Motorsports — Formula 1

Podium, Points / score, Constructor race, Constructor race wins, Constructor championship, Race wins, Championship. 7 prop markets from Picklebet, BetRight, PointsBet, Sportsbet, Pinnacle and more. Motorsports odds API →

Rugby Union — Rugby Union Internationals

Points / score, First goalscorer. 2 prop markets from BetFocus, BetRight, Dabble, MintBet, Neds and more. Rugby Union odds API →

Try it out

// the response appears here

Why developers choose SockOdds for player prop odds

  • Real Australian numbers. Sportsbet, Unibet, TAB, PlayUp, TABtouch, BetRight, Neds — the books your users actually hold accounts with.
  • Integration speed. The SportsGameOdds shape means the examples, SDKs and parsers you already have work unchanged.
  • Pricing model. One event with every prop and every book is one object.
  • Honest data. Suspended props say available: false; stale events are flagged, not refreshed-looking.
  • Free tier. AFL and NRL props from three books, forever.

See the DFS data, parlay builder and positive EV use cases.

Plans

Lite

Free

For testing, prototyping and the two codes Australia watches most.

Try for free
  • 10 requests per minute
  • ~2 min update frequency
  • 2 leagues (AFL + NRL)
  • 3 bookmakers
Included
  • Metadata: sports, leagues, teams, players
  • Events, status and results
  • Head to head, lines, totals
  • Pre-game, partials (halves, quarters, innings)
  • Book consensus (bookOdds)
  • Fair odds (fairOdds, de-vigged)
  • Player props, team props
  • Alt lines
  • Bet-slip deeplinks
  • Kalshi & Polymarket prices
Bookmakers

Sportsbet, TAB, Ladbrokes

Leagues

AFL, NRL

Platform

Let's talk

Unrestricted access for a product that reads the whole feed at product cadence.

Unlock your custom plan
  • 600 requests per minute
  • Max update frequency
  • All leagues
  • Every bookmaker, no cap
Included
  • Metadata: sports, leagues, teams, players
  • Events, status and results
  • Head to head, lines, totals
  • Pre-game, partials (halves, quarters, innings)
  • Book consensus (bookOdds)
  • Fair odds (fairOdds, de-vigged)
  • Player props, team props
  • Alt lines
  • Bet-slip deeplinks
  • Kalshi & Polymarket prices
Bookmakers

Every bookmaker (25)

Leagues

All 34 leagues

Frequently asked questions

What is a player props API?

A feed of bookmaker prices on individual player outcomes — disposals, try scorers, hits, shots — returned in the same request as the game lines, with every book's line and price under one identifier.

Which sports and leagues have props?

Cricket, Baseball, Soccer, Ice Hockey, Basketball, Aussie Rules, Rugby League, Motorsports, Rugby Union. Coverage follows what the Australian books price; the markets browser shows every prop oddID by league.

How often are props updated?

Every ~2 minutes, the same as every other market.

How many bookmakers price props?

23 in the feed, led by Neds, Sportsbet, Unibet, Ladbrokes.

Can I get props for free?

Yes — the Lite plan includes AFL and NRL props from 3 bookmakers.

When are props posted?

Whenever a covered book posts them; most AU books release props one to three days before the fixture, and the feed picks them up on the next refresh.

How do I identify player props?

Any market whose statEntityID is a playerID rather than home/away/all. The playerID field is set on the market too.

Can I filter to one prop type or one player?

Yes: oddID=disposals-PLAYER_ID-game-ou-over for every player, or substitute the real playerID for one player; add includeOpposingOdds=true for the under.

Are results included?

Event results ride along where the source has them and each market carries scoringSupported.

Get started

Free plan available. Set up in 5 minutes.