Skip to content

Commit b7e688e

Browse files
Mlaz-codeclaude
andauthored
docs(api)!: drop game_state from EV/arb/low-hold reference (#195)
Live game state (scores, period, clock) is exclusive to /api/v1/gamestate and the gamestate stream channel. Remove the game_state row from sample payloads + schema tables on the EV, arbitrage, and low-hold reference pages, and add a breaking-change callout pointing readers at gamestate. BREAKING CHANGE: clients that read game_state off opportunity rows must fetch /api/v1/gamestate (or subscribe to /api/v1/stream/gamestate) and join by event_id. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent db8c259 commit b7e688e

3 files changed

Lines changed: 12 additions & 3 deletions

File tree

content/en/api-reference/opportunities-arbitrage.mdx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,10 @@ Requires API key. **Hobby tier or higher required.** Your account must have the
3434
**Profit cap:** Opportunities with profit above 10% are automatically filtered out. These are almost always phantom arbs caused by stale or suspended odds rather than real opportunities.
3535
</Callout>
3636

37+
<Callout type="warning">
38+
**Breaking change:** The `game_state` field (score/period/clock) was removed from this response. Live game state is now served exclusively by the [Game State](/en/api-reference/gamestate) endpoint and the `gamestate` stream channel. Join rows to game state by `event_id`.
39+
</Callout>
40+
3741
### Filtering Multiple Values
3842

3943
Use comma-separated values for multi-select filters:
@@ -110,7 +114,6 @@ for arb in data['data']:
110114
"possibly_stale": false,
111115
"oldest_odds_age_seconds": 8,
112116
"warnings": [],
113-
"game_state": null,
114117
"ev_available": true,
115118
"ev_percentage": 3.5,
116119
"is_player_prop": false,
@@ -237,7 +240,6 @@ X-Request-Id: req_arb789xyz012
237240
| `possibly_stale` | boolean | Whether odds may have moved since detection |
238241
| `oldest_odds_age_seconds` | number\|null | Age of the stalest leg's odds in seconds |
239242
| `warnings` | string[] | Warning flags. Possible values: `LIVE_GAME`, `LIVE_HIGH_PROFIT_SUSPICIOUS`, `LOW_IMPLIED_TOTAL`, `POTENTIALLY_STALE_ODDS`, `VERY_STALE_ODDS` |
240-
| `game_state` | object\|null | Live game state (`period`, `clock`, `score_home`, `score_away`) |
241243
| `ev_available` | boolean | Whether an EV opportunity exists on this market |
242244
| `ev_percentage` | number\|null | EV percentage if available |
243245
| `is_player_prop` | boolean | Whether this is a player prop market |

content/en/api-reference/opportunities-ev.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,10 @@ This endpoint replaces the former `/positive-ev` and `/value-bets` endpoints. Al
2020
**Multi-book results:** When multiple sportsbooks are +EV on the same selection, the API returns a separate opportunity for **each** book. For example, if DraftKings is +105, FanDuel is +103, and BetMGM is +101 on the same moneyline, you'll see three entries — each with its own `sportsbook`, `odds_american`, `ev_percentage`, `kelly_percent`, and `confidence_score`. Results are sorted by EV% descending by default, so the best-odds book appears first. Use the `sportsbook` filter to narrow to specific books.
2121
</Callout>
2222

23+
<Callout type="warning">
24+
**Live game state:** EV rows do not carry scores, period, or clock. Live game state is served exclusively by the [Game State](/en/api-reference/gamestate) endpoint and the `gamestate` stream channel. Join rows to game state by `event_id`.
25+
</Callout>
26+
2327
## Authentication
2428

2529
Requires API key. **Pro tier or higher required.** Your account must have the `ev` feature enabled.

content/en/api-reference/opportunities-low-hold.mdx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@ GET /api/v1/opportunities/low_hold
1616

1717
Requires API key. **Pro tier or higher required.** Your account must have the `low_hold` feature enabled.
1818

19+
<Callout type="warning">
20+
**Breaking change:** The `game_state` field (score/period/clock) was removed from this response. Live game state is now served exclusively by the [Game State](/en/api-reference/gamestate) endpoint and the `gamestate` stream channel. Join rows to game state by `event_id`.
21+
</Callout>
22+
1923
## Query Parameters
2024

2125
| Parameter | Type | Default | Description |
@@ -108,7 +112,6 @@ for hold in data['data']:
108112
"start_time": "2026-02-08T19:00:00Z",
109113
"line": null,
110114
"hold_percentage": 1.8,
111-
"game_state": null,
112115
"side1": {
113116
"selection": "Los Angeles Lakers",
114117
"books": ["draftkings", "betmgm"],

0 commit comments

Comments
 (0)