Pre-match odds
In the previous sections, youβve learnt about bookmakers and markets and how to retrieve them via our API. Now, letβs take a look at the odds from those bookmakers and markets.
Understanding what influences odds
Bookmakers calculate odds based on multiple factors including:
Team statistics: Recent form, home/away performance, goals scored/conceded
Head-to-head records: Historical results between the two teams
Player availability: Injuries, suspensions, and key player form
Advanced metrics: Expected Goals (xG), possession statistics, defensive strength
Want to analyse the same data bookmakers use? Our Statistics API provides comprehensive team and player performance metrics that correlate with odds movements.
Pro tip: Compare historical statistics with odds to identify value bets or build your own prediction models.
Itβs good to note that weβve separated pre-match odds from live odds. Interested in live odds? Check our live odds section.
An overview of all the options available to request pre-match odds:
GET All Odds: returns all the pre-match odds.
GET Odds by Fixture ID: returns the pre-match odds from your requested fixture id.
GET Odds by Fixture ID and Bookmaker ID: returns the pre-match odds filtered on bookmaker id from your requested fixture id.
GET Odds by Fixture ID and Market ID: returns the pre-match odds filtered on market id from your requested fixture id.
For all the pre-match odds endpoints the base URL is the same:
https://api.sportmonks.com/v3/football/odds/pre-match
Per endpoint the rest of the URL requires additional information. We will explain this per endpoint.
Requesting Odds
GET All Odds
The first option is to request all the odds available in our APIs. With this information, you can determine if the odds youβre interested in are available.
The URL to get all pre-match odds is the same as the base URL for pre-match odds. All you have to do is authorize the request with your API token. Check our authentication section for more info.
Letβs take a look together at the key values the API returns:
id: the unique id of the oddfixture_id: the unique fixture id the odd is available formarket_id: the unique id of the market the odd belongs tobookmaker_id: the unique id of the bookmaker who offers the oddlabel: the label name of the oddvalue: the odd valuename: the name of the oddsort_order: n/amarket_description: the description of the market the odd belongs to
Now youβve gathered an overview of the available pre-match odds. You can also retrieve the odds for only a specific fixture.
GET Pre-match Odds by Fixture ID
A lot of our customers are not interested in all odds, but only in odds of a specific fixture. This endpoint is perfectly suited for this. The only thing youβve to do is parse the fixture_id you want the odds for:
https://api.sportmonks.com/v3/football/odds/pre-match/fixtures/{fixture_id}
For example, if youβre interested in the pre-match odds available for Celtic vs Rangers (fixture id: 18535517)
GET Pre-match Odds by Fixture ID and Bookmaker ID
As you might have noticed in the previous example, requesting all the pre-match odds for a single fixture is quite a big response. Maybe youβre only interested in the odds of a specific fixture from a single bookmaker?
This endpoint is perfectly suited for this. The only thing youβve to do is parse the fixture_id and bookmaker_id you want the odds for:
https://api.sportmonks.com/v3/football/odds/pre-match/fixtures/{fixture_id}/bookmakers/{bookmaker_id}
For example, if youβre interested in the pre-match odds from bet365 (id: 2) available for Celtic vs Rangers (fixture id: 18535517)
GET Pre-match Odds by Fixture ID and Market ID
You can also request all the pre-match odds from a specific market and a specific fixture. The only thing youβve to do is parse the fixture_id and market_id you want the odds for:
https://api.sportmonks.com/v3/football/odds/pre-match/fixtures/{fixture_id}/markets/{market_id}
For example, if youβre interested in the pre-match odds from the BTTS market (id: 14) available for Celtic vs Rangers (fixture id: 18535517)
Adding useful information
As youβve learnt in the includes tutorial, you can enrich your request with includes. This section will discuss some of the most common requests used on the odds endpoints.
First of all, you can find a list of all available includes on the endpoint pages. For the odds, there are only 3 includes available:
market: includes the market information the oddd belongs to.bookmaker: includes the bookmaker information of the bookmaker that offers the odd.fixture: includes the fixture information the odds is available for.
For example, if youβre interested in the pre-match odds available for Celtic vs Rangers (fixture id: 18535517) with the name of the bookmakers, markets and fixture info.
Selecting and filtering
In our filtering tutorial youβve learnt how to select specific fields or filter only on the data youβre interested in. Our API returns a set of data related to the odd by default. We can imagine youβre not interested in all the odds data the API returns. Letβs say youβre only interested in the market description and value.
Weβre going to use the GET Pre-match Odd by Fixture ID endpoint for this example.
You can add the &select= parameter followed by the fields you want. In our case: market_description,value. This results in the below request and response:
Check our filtering tutorial for more tips and tricks.
See also
Understanding the data behind odds
Statistics Tutorial - Team and player performance data
Fixture Statistics - Match-level statistical analysis
Expected Goals (xG) - Advanced metrics used by bookmakers
Trends Tutorial - Performance trends and form analysis
Related odds features
Live (Inplay) Odds - Real-time odds during matches
Bookmakers - Available bookmaker data
Markets - Betting market types
Predictions & analysis
Predictions - ML-powered match predictions
Value Bet - Identify betting value
Building applications
Fixtures Tutorial - Match scheduling and data
Livescores Tutorial - Real-time match tracking
API reference
Pre-match Odds Endpoints - API documentation
Last updated
Was this helpful?