Skip to main content
GET
NFL player props API with prop lines & odds
1 credit per request · All plans from $0.00012/credit · Direct MPP at USD 0.00015 per call · Supports guest paid reads

Read player props

Use GET /x/sports/{league}/games/{id}/player-props for the prop lines X shows. Find the game ID with List football games.
  • categories holds each kind of prop, such as passing yards, in X’s order.
  • Each prop has a playerId, the line, odds & alternateOdds in American odds, and openForBetting.
  • players holds each player once, keyed by ID, with name, jersey & team.
X lists props before & during a game. A finished game or a game X does not know returns no categories. A prop without a line, such as the first touchdown scorer, has a null line.

Path parameters

string
required
nfl, in any case. X has no college props, so ncaafb gets a free 400 unsupported_league. Another value gets a free 400 invalid_league.
string
required
Game ID, a number up to 19 digits, such as 2055084502741929984. List football games returns it as id. Another value gets a free 400 invalid_game_id.

Query parameters

string
Fields to keep in each row, comma-separated, such as id,text,author.username. Use dots for nested fields. Case & underscores do not matter. A row that lacks a field leaves it out. Cursors, counts & diagnostics always stay. An unknown name returns 400 unknown_field with the valid names, before any read. The price stays the same.
string
Fields to drop from each row, comma-separated, such as entities,media. It takes the same names as fields. With fields, it drops from the kept fields.

Headers

string
Full account key. Sessions and OAuth also work.
string
Bearer xq_your_guest_key_here for paid_reads.

Response

200 OK

string
The game ID from your request.
string
Always nfl.
string
The sportsbook page X links for these props. Null without props.
object[]
Each kind of prop, in X’s order.
string
X’s key for the prop, such as passing_yards.
string
The name X shows, such as Passing Yards.
number
The category’s place in X’s order, from 1.
object[]
Each player’s line, in X’s order.
string
The player, a key of players.
number
The line’s place in its category, from 1.
number
The line the odds price, such as 248.5 yards. Null when the prop has no line.
number
The American odds X shows first, such as -115 or 240.
number
The American odds X shows second. Null for a prop with 1 price.
boolean
Whether the sportsbook takes bets on the line.
object
The players these props name, keyed by player ID. X sends each player’s name, jersey & team, so other fields are null.
string
The player ID that plays & stats refer to.
string
The player’s team, a key of teams.
string
The player’s full name.
string
The name play descriptions use, such as B.Purdy.
string
The jersey number, as text.
string
The position, such as QB or DE.
string
The college the player came from.
string
Where the player was born. X sends it only for NFL players.
string
The birth date, as YYYY-MM-DD.
object
Photo links in original, large, medium & small. Any of them can be null.
object
The player’s X account, with id, username & blueVerified. Null when the player has none. Rosters also fill protected, superFollowEligible & the highlighted labelType, such as BusinessLabel. Other answers send them as null.

400 Unsupported league

Send nfl as the league. A game ID that is not a number gets invalid_game_id. Both answers are free.

401 Unauthenticated

Anonymous requests get WWW-Authenticate: Bearer and a guest wallet checkout action. This is not a Payment challenge.

402 Payment required

Account keys get account options. Guest keys get guest top-up only. No checkout starts automatically. Confirm any payment action.

502 X API unavailable

The read service returned an error. Retry after a short delay.