Aggregated Odds Implementation Guide
High Level Overview
The Aggregated Odds Feed is designed to aggregate and link up the odds from various sportsbooks from Money Lines and Point Spreads to Player Props and Futures. It is a comprehensive system meant to give you a complete view of a particular game or future and its set of odds.
The following diagram presents a high-level overview of the architecture and how the various data objects are related. Below this are sections detailing each object in finer detail.
The diagram uses the NBA as an example but the data architecture is the same across all sports. For details on the data types of the fields on these objects, please see the data dictionaries under the "Aggregated Odds" heading:
- NFL Data Dictionary
- NBA Data Dictionary
- MLB Data Dictionary
- NHL Data Dictionary
- NCAA Basketball Data Dictionary
- NCAA Football Data Dictionary
Throughout this guide and while using the aggregated odds feed, you'll come across the *Types fields (e.g. Betting Market Type, Betting Event Type, Betting Period Type). These are enumerations which are used to group and categorize the data objects which make up the aggregated odds feed. The guide below details these *Types. For a complete list of these *Types, please see the following endpoints, which return lists of all of values you will encounter:
- NFL Aggregated Odds Types
- NBA Aggregated Odds Types
- MLB Aggregated Odds Types
- NHL Aggregated Odds Types
- CBB Aggregated Odds Types
- CFB Aggregated Odds Types
Timeline For Player Props
Sportsbooks release player props at different times for each sport. For example, NFL player props are released early in the week while for other sports like MLB, player props are released much closer to the time of the game. Please see the table below for approximately when sportsbooks begin to list the first few player props for a game. They'll then continue to release player props up until the game starts.
- NFL - 96 to 72 hours
- NBA - 72 to 24 hours
- MLB - 48 to 24 hours
- NHL - 48 to 24 hours
- CBB - 24 hours or less
- CFB - 48 to 24 hours
Betting Events, Betting Markets and Betting Outcomes
- The Betting Event is the root level object: all other data objects are children of this object
At current, it will be one of two Betting Event Types:
- Game - Betting Events which point to a game record and will contain child items related to that game
- Future - Betting Events which span an entire season or tournament
- The data object which holds information on the specific bets (and their selections) for the parent Betting Event
Five core fields which identify the characteristics of the betting market:
- Betting Market Type - Describes the market grouping e.g. Game Line, Player Prop, Team Prop, etc
- Betting Bet Type - Describes the type of bet e.g. Moneyline, Point Spread, Total Points, Total Assists, etc
- Betting Period Type - Specifies the time dimension of the market e.g Full Game, 1st Half, 3rd Quarter, Regulation Time (Excluding Overtime), etc
- Player Id - If the Betting Market applies to a single player, this field will contain the Player Id e.g. "Lebron James Total Points 1st Half"
- Team Id - If the Betting Market applies to a single team, this field will contain the Team Id e.g. "LA Lakers Total Points 3rd Quarter"
Player Id and Team Id Considerations
- If the Player Id or Team Id have a value, all child Betting Outcomes will point to the respective Player Id or Team Id
Game Prop Considerations
- For Betting Markets which have a Betting Market Type of Game Prop, the child Betting Outcomes may contain different Player Ids and Team Ids
- Example of this would be bets like "First Player to Score a 3-pointer" or "Last Team to Score"
- Per sportsbook, the object which contains information on the odds and values for the selections available on a Betting Market
A number of core fields:
Betting Outcome Type
- Used to determine which side a Betting Outcome represents e.g. Over, Under, Home, Away, Yes, No
- For example on a Betting Bet Type of Total Points, you will see options for “Over” and “Under” which correspond to the over and under outcomes
Value - Contains the value needed for the bet (if applicable)
- For example, “Philadelphia Eagles Total Points” might contain outcomes where the value is 24. The “Over” means the bet would win if the Eagles score more than 24 points and the “Under” means the best would win if the Eagles score less than 23 points.
- Typical bets which will have non-null Value include Point Spread and Totals
- Betting Outcomes for something like a Betting Bet Type of Moneyline will have a null Value, as the bet isn’t based on any particular value (in the case of a Moneyline, it’s which team will win)
- PayoutAmerican/PayoutDecimal - The odds on this particular outcome
- Is Available - Indicates whether the outcome is currently open for wagering on the related sportsbook
- Sportsbook - Indicates which sportsbook is associated with this outcome
- Player Id - Points to the Player record for which this outcome corresponds
- Team Id - Points to the Team record for which this outcome corresponds
- Betting Outcome Type