Bookmakers

,The starting point of most betting applications is an overview of all the bookmakers available. The Bookmakers endpoints will help you set up odds properly in your website/application. This endpoint is very useful for administrative purposes to check and structure the bookmakers' availability.

This section will briefly discuss all the options available to request bookmakers.

An overview of all the options available:

  • GET All Bookmakers: returns all the bookmakers available in our football API.

  • GET Bookmakers by ID: returns bookmakers' information from your requested bookmaker id.

  • GET Bookmakers by Fixture ID: returns all the bookmakers available for your requested fixture id.

  • GET Bookmaker Event ID's by Fixture ID: returns all the bookmaker event ids available for your requested fixture id.

For all the bookmaker endpoints the base URL is the same:

https://api.sportmonks.com/v3/odds/bookmakers

Per endpoint the rest of the URL requires additional information. We will explain this per endpoint.

*Important: Please note that the domain in the URL is odds instead of football.

Requesting bookmakers

GET All Bookmakers

The first option is to request all the bookmakers available in our APIs. With this information, you can determine if the bookmakers you’re interested in are available.

The URL to get all bookmakers is the same as the base URL for bookmakers. All you have to do is authorize the request with your API token. Check our authentication section for more info.

https://api.sportmonks.com/v3/odds/bookmakers?api_token=YOUR_TOKEN
Response

  "data": [
    {
      "id": 1,
      "legacy_id": 1,
      "name": "10Bet"
    },
    {
      "id": 2,
      "legacy_id": 2,
      "name": "bet365"
    },
    {
      "id": 3,
      "legacy_id": 3,
      "name": "188Bet"
    },
    {
      "id": 4,
      "legacy_id": 5,
      "name": "5 Dimes"
    },
    {
      "id": 5,
      "legacy_id": 7,
      "name": "888Sport"
    },
  //And more  

Let’s take a look together at what the API returns. You can see the id of the bookmaker, the legacy id (what the bookmaker id was in our old API), and the bookmaker's name.

Now you’ve gathered an overview of the available bookmakers with their unique, you can use this id on the Bookmakers by ID endpoint.

GET Bookmaker by ID

This endpoint returns bookmakers' information from your requested bookmaker ID. All you’ve to do is add the unique id of the bookmaker you want.

https://api.sportmonks.com/v3/odds/bookmakers/{bookmaker_id}

For example, if you’re interested in bet365 (id: 2):

https://api.sportmonks.com/v3/odds/bookmakers/2?api_token=YOUR_TOKEN
Response
{
  "data": {
    "id": 2,
    "legacy_id": 2,
    "name": "bet365"
  },

The previous mentioned endpoints are extremely convenient for displaying information about all bookmakers or one specific bookmaker. However, it does not indicate if the bookmaker has odds available for the fixtures you’re interested in. You can use the next endpoint for this.

GET Bookmaker by Fixture ID

Looking for the available bookmakers of a specific fixture? The GET All Bookmakers by Fixture ID returns all the bookmakers available for your requested fixture id. You will need to add the fixture_id to your request:

https://api.sportmonks.com/v3/odds/bookmakers/fixtures/{fixture_id}

For example, if you’re interested in the bookmakers available for Celtic vs Rangers (fixture id: 18535517)

https://api.sportmonks.com/v3/odds/bookmakers/fixtures/18535517?api_token=YOUR_TOKEN
Response
{
  "data": [
    {
      "id": 1,
      "legacy_id": 1,
      "name": "10Bet"
    },
    {
      "id": 2,
      "legacy_id": 2,
      "name": "bet365"
    },
    {
      "id": 3,
      "legacy_id": 3,
      "name": "188Bet"
    },
    {
      "id": 5,
      "legacy_id": 7,
      "name": "888Sport"
    },
    {
      "id": 7,
      "legacy_id": 11,
      "name": "Bet-At-Home"
    },
    //and more

Check our fixture or season schedule tutorial for information about how to retrieve a fixture id.

GET Bookmaker Event ID's by Fixture ID

A lot of our customers want to link the fixture from our APIs to the fixture event of the bookmakers. To help you with this, we’ve integrated the GET Bookmaker Event ID’s by Fixture ID. This endpoint returns all the bookmaker event ids available for your requested fixture.

You will need to add the fixture id and mapping parameter to your request:

https://api.sportmonks.com/v3/odds/bookmakers/fixtures/{fixture_id}/mapping

For example, if you’re interested in the bookmakers and their event ids for Celtic vs Rangers (fixture id: 18535517)

https://api.sportmonks.com/v3/odds/bookmakers/fixtures/18535517/mapping?api_token=YOUR_TOKEN
Response
{
  "data": [
    {
      "fixture_id": 18535517,
      "bookmaker_id": 2,
      "bookmaker_name": "bet365",
      "bookmaker_event_id": "124197340",
      "bookmaker_event_url": null
    },
    {
      "fixture_id": 18535517,
      "bookmaker_id": 62,
      "bookmaker_name": "22Bet",
      "bookmaker_event_id": "394661073",
      "bookmaker_event_url": "https://22bet.com/en/line/Football/13521-Scotland-Premier-League/143753399-Celtic-Rangers"
    }
  ],

Please note that for now, we only have the event id’s of bet365 and 22bet available. Therefore you will not see other bookmakers in the response. We're working on other bookmakers as well.

Adding useful information

There are no include options available for the bookmaker endpoints.

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. By default, our API returns a set of data related to the bookmaker. We can imagine you’re not interested in all the bookmaker data the API returns. Let’s say you’re only interested in the name.

You can add the &select= parameter followed by the fields you want. In our case: name. This results in the below request and response:

https://api.sportmonks.com/v3/odds/bookmakers?api_token=YOUR_TOKEN&select=name
Response
{
  "data": [
    {
      "name": "10Bet",
      "id": 1
    },
    {
      "name": "bet365",
      "id": 2
    },
    {
      "name": "188Bet",
      "id": 3
    },
    {
      "name": "5 Dimes",
      "id": 4
    },
    //And more

Check our filtering tutorial for more tips and tricks.

Last updated