What it streams
Metadata per bookmaker describing whether a bookmaker offers odds for a given future, and whether those odds are active, stale, or suspended.
This is the future equivalent of the bookmakers channel for fixtures.
Routing
- Entity key:
payload.futureId
- Filters:
sportIds, tournamentIds, futureIds, bookmakers
- Access: determined by your
apiKey
- Bookmaker-gated: ✅ Yes
Payload structure
Example message
Critical fields for automated trading
staleOdds — odds freshness guarantee
If you are running automated trading strategies on top of OddsPapi, staleOdds is one of the most important fields you must check.
When staleOdds = true, the connection between OddsPapi and this bookmaker has been lost or interrupted. This means:
- Odds you received earlier may no longer reflect the bookmaker’s current prices
- No further updates can be guaranteed until the connection is restored
- You should immediately pause any automated betting logic for this bookmaker
- Treat all existing odds from this bookmaker as unvalidated until
staleOdds returns to false
Notes
- Odds data itself is streamed via
oddsFutures
- If a bookmaker is missing from
bookmakers, assume no current odds
- Use this channel as a pre-filter before processing any odds from the
oddsFutures channel
- Combine
staleOdds, suspended, and hasOdds to determine whether a bookmaker’s odds should be trusted
- Semantics are intentionally identical to
bookmakers (fixture-level), just scoped to futureId