Player props catalog
NFL, NCAAF, NBA, NCAAB, NHL, MLB, and Soccer only. GET /v1/events/{id}/player-props (MCP get_player_props) returns persisted player-prop mains joined to this-event player box counts. GET /odds stays moneyline / spread / totals. Other sports return 400. 1 credit when lines exist; available:false is free.
This page is the coverage inventory plus response-field meanings. Endpoint inspector: API reference — player props. Forecast how + the 1:1 subset: /docs/forecasts.
novig is a props-only book — not on GET /odds. It is the only book currently returned for soccer player-props and a large NFL props book; a side may be missing (under null).
How to read the table
- Yes — over / under / push — the market grades from this-event box counts (1:1 slug, combo sum, or yes/no threshold) once the event is final and current is present. At final with no current: dnp (box ingest landed and this player has zero rows) or no_stat (played but this slug never landed, the priced name never matched, or the box has not landed yet).
- Returned, not graded — the line is in the payload with settleable:false and result:null until it has its own settlement rule.
- Yes — 1:1 slate — list_forecasts / forecasts[] may pick this market. Combos, anytime TD, and double-double stay settleable-only.
Response fields
Shared live-progress envelope on player-props, team-props, and period-odds. Agents that branch on line, pct_of_line, or settleable should read this table — those keys are in every example JSON.
| Field | Type | Description |
|---|---|---|
available | boolean | False when no mains have been ingested. Not charged. |
sport | string | Event sport slug. |
status | string | Event status. Same enum as #status-values. |
period / clock | string or null | Live clock. Sport-specific formats: #event-score. |
player / player_id | string / integer or null | Display name and Lumify ID. Join player_id to GET /v1/players/{id}. Null when the priced name did not bind. |
market | string | Prop market key (this page). |
line | number | Posted main Over/Under. Half-points are typical. A different number is a separate row. |
current | number or null | This-event box count — 1:1 slug, combo sum, or yes/no (1.0/0.0). Null before the box lands, when unmatched, or when settleable is false. |
pct_of_line | number or null | current / line × 100, one decimal. Can exceed 100. Null when current or line is null, when line is 0, or on yes/no markets. |
settleable | boolean | True when this market has a settlement rule. When false, current and result are null. |
result | string or null | in_progress while not final. over / under / push once final and current is present. At final with no current: dnp (box ingest landed and this player has zero rows) or no_stat (played but this slug never landed, unmatched name, or box not landed yet). Null when settleable is false. |
books | object | Per-book Over/Under American-odds integers at this exact line. A missing side is null. |
NFL
| Market key | Name | Graded? | Forecasted? | Notes |
|---|---|---|---|---|
passing_yards |
Passing yards | Yes — over / under / push | Yes — 1:1 slate | — |
passing_tds |
Passing touchdowns | Yes — over / under / push | Yes — 1:1 slate | — |
rushing_yards |
Rushing yards | Yes — over / under / push | Yes — 1:1 slate | — |
rushing_tds |
Rushing touchdowns | Yes — over / under / push | Yes — 1:1 slate | — |
receiving_yards |
Receiving yards | Yes — over / under / push | Yes — 1:1 slate | — |
receptions |
Receptions | Yes — over / under / push | Yes — 1:1 slate | — |
touchdowns |
Anytime touchdown | Yes — over / under / push | Yes — combo slate | Anytime TD scorer: rushing + receiving + defensive TDs. Passing TDs do not count. Kick/punt return TDs are not in the box yet. |
rush_rec_yards |
Rushing + receiving yards | Yes — over / under / push | Settleable only | Sum of rushing yards + receiving yards (yards from scrimmage). Kick/punt return yards do not count. |
pass_rush_yards |
Passing + rushing yards | Yes — over / under / push | Settleable only | Sum of passing yards + rushing yards. |
NCAAF
| Market key | Name | Graded? | Forecasted? | Notes |
|---|---|---|---|---|
passing_yards |
Passing yards | Yes — over / under / push | Yes — 1:1 slate | — |
passing_tds |
Passing touchdowns | Yes — over / under / push | Yes — 1:1 slate | — |
rushing_yards |
Rushing yards | Yes — over / under / push | Yes — 1:1 slate | — |
rushing_tds |
Rushing touchdowns | Yes — over / under / push | Yes — 1:1 slate | — |
receiving_yards |
Receiving yards | Yes — over / under / push | Yes — 1:1 slate | — |
receptions |
Receptions | Yes — over / under / push | Yes — 1:1 slate | — |
touchdowns |
Anytime touchdown | Yes — over / under / push | Yes — combo slate | Anytime TD scorer: rushing + receiving + defensive TDs. Passing TDs do not count. Kick/punt return TDs are not in the box yet. |
rush_rec_yards |
Rushing + receiving yards | Yes — over / under / push | Settleable only | Sum of rushing yards + receiving yards (yards from scrimmage). Kick/punt return yards do not count. |
pass_rush_yards |
Passing + rushing yards | Yes — over / under / push | Settleable only | Sum of passing yards + rushing yards. |
NBA
| Market key | Name | Graded? | Forecasted? | Notes |
|---|---|---|---|---|
points |
Points | Yes — over / under / push | Yes — 1:1 slate | — |
rebounds |
Rebounds | Yes — over / under / push | Yes — 1:1 slate | — |
assists |
Assists | Yes — over / under / push | Yes — 1:1 slate | — |
steals |
Steals | Yes — over / under / push | Yes — 1:1 slate | — |
blocks |
Blocks | Yes — over / under / push | Yes — 1:1 slate | — |
threes_made |
Threes made | Yes — over / under / push | Yes — 1:1 slate | — |
pts_rebs |
Points + rebounds | Yes — over / under / push | Settleable only | Sum of points + rebounds. |
pts_asts |
Points + assists | Yes — over / under / push | Settleable only | Sum of points + assists. |
rebs_asts |
Rebounds + assists | Yes — over / under / push | Settleable only | Sum of rebounds + assists. |
pts_rebs_asts |
Points + rebounds + assists | Yes — over / under / push | Settleable only | Sum of points + rebounds + assists. |
double_double |
Double-double | Yes — over / under / push | Settleable only | Yes (current=1) if two or more of points, rebounds, assists, steals, blocks are ≥ 10. Graded vs the posted line (typically 0.5). |
triple_double |
Triple-double | Yes — over / under / push | Settleable only | Yes (current=1) if three or more of points, rebounds, assists, steals, blocks are ≥ 10. Graded vs the posted line (typically 0.5). |
NCAAB
| Market key | Name | Graded? | Forecasted? | Notes |
|---|---|---|---|---|
points |
Points | Yes — over / under / push | Yes — 1:1 slate | — |
rebounds |
Rebounds | Yes — over / under / push | Yes — 1:1 slate | — |
assists |
Assists | Yes — over / under / push | Yes — 1:1 slate | — |
steals |
Steals | Yes — over / under / push | Yes — 1:1 slate | — |
blocks |
Blocks | Yes — over / under / push | Yes — 1:1 slate | — |
threes_made |
Threes made | Yes — over / under / push | Yes — 1:1 slate | — |
pts_rebs |
Points + rebounds | Yes — over / under / push | Settleable only | Sum of points + rebounds. |
pts_asts |
Points + assists | Yes — over / under / push | Settleable only | Sum of points + assists. |
rebs_asts |
Rebounds + assists | Yes — over / under / push | Settleable only | Sum of rebounds + assists. |
pts_rebs_asts |
Points + rebounds + assists | Yes — over / under / push | Settleable only | Sum of points + rebounds + assists. |
double_double |
Double-double | Yes — over / under / push | Settleable only | Yes (current=1) if two or more of points, rebounds, assists, steals, blocks are ≥ 10. Graded vs the posted line (typically 0.5). |
triple_double |
Triple-double | Yes — over / under / push | Settleable only | Yes (current=1) if three or more of points, rebounds, assists, steals, blocks are ≥ 10. Graded vs the posted line (typically 0.5). |
NHL
| Market key | Name | Graded? | Forecasted? | Notes |
|---|---|---|---|---|
goals |
Goals | Yes — over / under / push | Yes — 1:1 slate | — |
hockey_assists |
Assists | Yes — over / under / push | Yes — 1:1 slate | Market key hockey_assists. Box slug is assists_nhl (MLB/NBA own the global assists slug). |
shots_on_goal |
Shots on goal | Yes — over / under / push | Yes — 1:1 slate | — |
hockey_points |
Points (goals + assists) | Yes — over / under / push | Settleable only | Sum of goals + assists (assists_nhl). |
MLB
| Market key | Name | Graded? | Forecasted? | Notes |
|---|---|---|---|---|
hits |
Hits | Yes — over / under / push | Yes — 1:1 slate | — |
runs |
Runs | Yes — over / under / push | Yes — 1:1 slate | — |
rbis |
RBIs | Yes — over / under / push | Yes — 1:1 slate | Market key rbis. Box slug is rbi. |
home_runs |
Home runs | Yes — over / under / push | Settleable only | — |
stolen_bases |
Stolen bases | Yes — over / under / push | Settleable only | — |
strikeouts_batter |
Batter strikeouts | Yes — over / under / push | Yes — 1:1 slate | Market key strikeouts_batter. Box slug is strikeouts (batter Ks). |
total_bases |
Total bases | Yes — over / under / push | Settleable only | TB = hits + doubles + 2·triples + 3·home_runs (standard identity). |
hits_runs_rbis |
Hits + runs + RBIs | Yes — over / under / push | Settleable only | Sum of hits + runs + RBI. |
strikeouts_pitcher |
Pitcher strikeouts | Yes — over / under / push | Yes — 1:1 slate | Market key strikeouts_pitcher. Box slug is strikeouts_pitched. |
hits_allowed |
Hits allowed | Yes — over / under / push | Yes — 1:1 slate | — |
earned_runs |
Earned runs | Yes — over / under / push | Yes — 1:1 slate | — |
outs_recorded |
Outs recorded | Yes — over / under / push | Yes — 1:1 slate | Market key outs_recorded. Box slug is outs. |
Soccer
| Market key | Name | Graded? | Forecasted? | Notes |
|---|---|---|---|---|
soccer_goals |
Goals | Yes — over / under / push | Settleable only | Remapped from the feed's goals category (NHL owns the global goals name). Box slug is goals_soccer. |
soccer_assists |
Assists | Yes — over / under / push | Settleable only | Remapped from the feed's assists category (NBA owns the global assists name). Box slug is assists_soccer. |
shots_on_target |
Shots on target | Yes — over / under / push | Settleable only | — |
fouls_committed |
Fouls committed | Yes — over / under / push | Settleable only | Box slug is fouls (shared with the team-level /stats field). |
Sports not on this surface
| Sport | Status |
|---|---|
| Tennis (tennis) | Not on GET /player-props (400) |
Endpoint
GET https://lumify.ai/v1/events/{id}/player-props
Authorization: Bearer lmfy-...
MCP: get_player_props with { "event_id": … }. Sample payload: /docs/reference#event-player-props. How forecasts pick a 1:1 subset: /docs/forecasts.