> For the complete documentation index, see [llms.txt](https://docs.sportmonks.com/v3/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sportmonks.com/v3/tutorials-and-guides/tutorials/odds-and-predictions/bookmakers.md).

# 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 or 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:

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

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

{% hint style="danger" %}
I**mportant: Please note that the domain in the URL is `odds` instead of `football`.**
{% endhint %}

### 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 authorise the request with your API token. Check our [authentication section](https://docs.sportmonks.com/v3/welcome/authentication) for more info.

```http
GET https://api.sportmonks.com/v3/odds/bookmakers?api_token={{apiToken}}&per_page=50&page=1
```

{% hint style="info" %}
The endpoint returns up to 50 bookmakers per page. Use `&page=2`, `&page=3` and so on to paginate through the full directory of 100+ bookmakers.
{% endhint %}

<details>

<summary>Response</summary>

```json
{
  "data": [
    {
      "id": 1,
      "legacy_id": 1,
      "name": "10Bet"
    },
    {
      "id": 2,
      "legacy_id": 2,
      "name": "bet365"
    },
    {
      "id": 8,
      "legacy_id": 13,
      "name": "BetCRIS"
    },
    {
      "id": 20,
      "legacy_id": 80,
      "name": "Pinnacle"
    }
  ]
}
```

</details>

The response returns each bookmaker's `id`, `legacy_id`, and `name`. Always use `id` when filtering odds requests. The `legacy_id` is the bookmaker's identifier from API 2.0 and is included for migration reference only.

{% hint style="danger" %}
**Do not use `legacy_id` for filtering.** Passing a `legacy_id` value as a bookmaker ID will return the wrong bookmaker or no results. For example, BetCRIS has `id: 8` and `legacy_id: 13`. Using `bookmakers:13` in a filter targets Coral, not BetCRIS.
{% endhint %}

#### GET Bookmaker by ID

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

```http
GET https://api.sportmonks.com/v3/odds/bookmakers/{{bookmaker_id}}?api_token={{apiToken}}
```

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

```http
GET https://api.sportmonks.com/v3/odds/bookmakers/2?api_token={{apiToken}}
```

<details>

<summary>Response</summary>

```json
{
  "data": {
    "id": 2,
    "legacy_id": 2,
    "name": "bet365"
  }
}
```

</details>

#### GET Bookmaker by Fixture ID

The GET Bookmakers by Fixture ID returns all the bookmakers that actually have odds available for a specific fixture. This is the right endpoint to use when you want to know which bookmakers to show for a given match, rather than querying the full directory.

```http
GET https://api.sportmonks.com/v3/odds/bookmakers/fixtures/{{fixture_id}}
?api_token={{apiToken}}
```

{% hint style="info" %}
You can also check `has_odds` and `has_premium_odds` on the fixture entity to confirm whether odds are available before querying.
{% endhint %}

#### 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. The GET Bookmaker Event ID's by Fixture ID endpoint returns all the bookmaker event ids available for your requested fixture.

```http
GET https://api.sportmonks.com/v3/odds/bookmakers/fixtures/{{fixture_id}}/mapping
?api_token={{apiToken}}
```

<details>

<summary>Response</summary>

```json
{
  "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"
    }
  ]
}
```

</details>

{% hint style="info" %}
Bookmaker event ID mapping is currently available for bet365 and 22Bet only.
{% endhint %}

### Bookmaker directory

The full bookmaker directory contains **100+ bookmakers**. The list below covers the most commonly asked bookmakers with their current API ids.

{% hint style="danger" %}
**The `id` and `legacy_id` are different values.** The `id` is the current v3 identifier to use in all API requests. The `legacy_id` is the API 2.0 identifier, included for migration reference only. Never use `legacy_id` in filters or odds requests.
{% endhint %}

#### Standard and Premium feed membership

The table below shows all bookmakers and which feeds they appear in. Use the correct endpoint per feed:

**Standard feed:**

```http
GET https://api.sportmonks.com/v3/odds/bookmakers?api_token={{apiToken}}&per_page=50
```

**Premium feed (TXODDS, pre-match only):**

```http
GET https://api.sportmonks.com/v3/odds/bookmakers/premium
?api_token={{apiToken}}&filter=populate
```

The premium feed contains **100+ bookmakers** returned in a single call with no pagination needed.

| id | Name         | Standard | Premium |
| -- | ------------ | -------- | ------- |
| 1  | 10Bet        | ✓        | ✓       |
| 2  | bet365       | ✓        | ✓       |
| 3  | 188Bet       | ✓        | ✓       |
| 7  | Bet-At-Home  | ✓        | ✓       |
| 8  | BetCRIS      | ✓        | -       |
| 9  | Betfair      | ✓        | ✓       |
| 10 | BetOnline    | ✓        | ✓       |
| 13 | Coral        | ✓        | ✓       |
| 14 | Dafabet      | ✓        | ✓       |
| 15 | Intertops    | ✓        | ✓       |
| 16 | Marathonbet  | ✓        | ✓       |
| 17 | Matchbook    | ✓        | ✓       |
| 19 | Paddy Power  | ✓        | ✓       |
| 20 | Pinnacle     | ✓        | -       |
| 22 | Tipico       | ✓        | ✓       |
| 23 | Unibet       | ✓        | ✓       |
| 28 | bwin         | ✓        | ✓       |
| 29 | WilliamHill  | ✓        | ✓       |
| 32 | Ladbrokes    | ✓        | ✓       |
| 34 | Sbo          | ✓        | ✓       |
| 35 | 1xbet        | ✓        | ✓       |
| 36 | Planetwin365 | ✓        | ✓       |
| 39 | Betway       | ✓        | ✓       |
| 41 | Skybet       | ✓        | ✓       |
| 44 | Bovada       | ✓        | ✓       |
| 51 | Sportingbet  | ✓        | ✓       |
| 56 | ComeOn       | ✓        | ✓       |
| 57 | Cashpoint    | ✓        | ✓       |
| 59 | HKJC         | ✓        | ✓       |
| 62 | 22Bet        | ✓        | -       |

#### Italian bookmakers

| id  | Name             | Standard | Premium |
| --- | ---------------- | -------- | ------- |
| 36  | Planetwin365     | ✓        | ✓       |
| 76  | SNAI             | ✓        | ✓       |
| 77  | GoldBet          | ✓        | ✓       |
| 87  | Eurobet.it       | ✓        | ✓       |
| 90  | Gioco Digitale   | ✓        | ✓       |
| 91  | Bwin.it          | ✓        | ✓       |
| 95  | Unibet.it        | ✓        | ✓       |
| 105 | Betflag          | ✓        | ✓       |
| 106 | Sisal Matchpoint | ✓        | ✓       |
| 111 | Domusbet.it      | ✓        | ✓       |
| 114 | Betaland         | ✓        | ✓       |
| 183 | SportYes.it      | ✓        | ✓       |
| 217 | StarYes.it       | ✓        | -       |

{% hint style="info" %}
Lottomatica and AdmiralBet are not present in either feed.&#x20;
{% endhint %}

#### Commonly asked bookmakers

| Bookmaker   | id  | legacy\_id | Standard | Premium |
| ----------- | --- | ---------- | -------- | ------- |
| BetCRIS     | 8   | 13         | ✓        | -       |
| Pinnacle    | 20  | 80         | ✓        | -       |
| Betano.de   | 216 | null       | -        | ✓       |
| IFortuna.eu | 172 | null       | ✓        | ✓       |
| Tipsport-Sk | 80  | null       | ✓        | ✓       |

{% hint style="info" %}
Czech Tipsport, Fortuna Czech Republic, Chance, SynotTip and Betano Czech Republic are not covered in either feed. The entities present are the Slovak and German variants of those brands.
{% endhint %}

### Selecting and filtering

In our [filtering tutorial](https://docs.sportmonks.com/v3/tutorials-and-guides/tutorials/filter-and-select-fields/filtering) you can learn how to select specific fields or filter on only the data you need. By default, our API returns all bookmaker fields. If you only need names and ids, you can narrow the response with the `select` parameter:

```http
GET https://api.sportmonks.com/v3/odds/bookmakers?api_token={{apiToken}}&select=name
```

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 or 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**](https://docs.sportmonks.com/v3/endpoints-and-entities/endpoints/bookmakers/get-all-bookmakers): returns all the bookmakers available in our football API.
* [**GET Bookmakers by ID**](https://docs.sportmonks.com/v3/endpoints-and-entities/endpoints/bookmakers/get-bookmaker-by-id): returns bookmakers' information from your requested bookmaker id.
* [**GET Bookmakers by Fixture ID**](https://docs.sportmonks.com/v3/endpoints-and-entities/endpoints/bookmakers/get-bookmaker-by-fixture-id): returns all the bookmakers available for your requested fixture id.
* [**GET Bookmaker Event ID's by Fixture ID**](https://docs.sportmonks.com/v3/endpoints-and-entities/endpoints/bookmakers/get-bookmaker-match-id-mappings-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:

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

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

{% hint style="danger" %}
**Important: Please note that the domain in the URL is `odds` instead of `football`.**
{% endhint %}

### 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 authorise the request with your API token. Check our [authentication section](https://claude.ai/v3/welcome/authentication.md) for more info.

```http
GET https://api.sportmonks.com/v3/odds/bookmakers?api_token={{apiToken}}&per_page=50&page=1
```

{% hint style="info" %}
The endpoint returns up to 50 bookmakers per page. Use `&page=2`, `&page=3` and so on to paginate through the full directory of 142 bookmakers.
{% endhint %}

<details>

<summary>Response</summary>

```json
{
  "data": [
    {
      "id": 1,
      "legacy_id": 1,
      "name": "10Bet"
    },
    {
      "id": 2,
      "legacy_id": 2,
      "name": "bet365"
    },
    {
      "id": 8,
      "legacy_id": 13,
      "name": "BetCRIS"
    },
    {
      "id": 20,
      "legacy_id": 80,
      "name": "Pinnacle"
    }
  ]
}
```

</details>

The response returns each bookmaker's `id`, `legacy_id`, and `name`. Always use `id` when filtering odds requests. The `legacy_id` is the bookmaker's identifier from API 2.0 and is included for migration reference only.

{% hint style="danger" %}
**Do not use `legacy_id` for filtering.** Passing a `legacy_id` value as a bookmaker ID will return the wrong bookmaker or no results. For example, BetCRIS has `id: 8` and `legacy_id: 13`. Using `bookmakers:13` in a filter targets Coral, not BetCRIS.
{% endhint %}

#### GET Bookmaker by ID

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

```http
GET https://api.sportmonks.com/v3/odds/bookmakers/{{bookmaker_id}}?api_token={{apiToken}}
```

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

```http
GET https://api.sportmonks.com/v3/odds/bookmakers/2?api_token={{apiToken}}
```

<details>

<summary>Response</summary>

```json
{
  "data": {
    "id": 2,
    "legacy_id": 2,
    "name": "bet365"
  }
}
```

</details>

#### GET Bookmaker by Fixture ID

The GET Bookmakers by Fixture ID returns all the bookmakers that actually have odds available for a specific fixture. This is the right endpoint to use when you want to know which bookmakers to show for a given match, rather than querying the full directory.

```http
GET https://api.sportmonks.com/v3/odds/bookmakers/fixtures/{{fixture_id}}
?api_token={{apiToken}}
```

{% hint style="info" %}
Check our fixture or [season schedule tutorial](https://claude.ai/v3/tutorials-and-guides/tutorials/season-schedule.md) for information about how to retrieve a fixture id. You can also check `has_odds` and `has_premium_odds` on the fixture entity to confirm whether odds are available before querying.
{% endhint %}

#### 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. The GET Bookmaker Event ID's by Fixture ID endpoint returns all the bookmaker event ids available for your requested fixture.

```http
GET https://api.sportmonks.com/v3/odds/bookmakers/fixtures/{{fixture_id}}/mapping
?api_token={{apiToken}}
```

<details>

<summary>Response</summary>

```json
{
  "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"
    }
  ]
}
```

</details>

{% hint style="info" %}
Bookmaker event ID mapping is currently available for bet365 and 22Bet only. We are working on expanding this to additional bookmakers.
{% endhint %}

### Bookmaker directory

The full bookmaker directory contains **142 bookmakers** across the Standard and Premium feeds. The list below covers the most commonly asked bookmakers with their current API ids.

{% hint style="warning" %}
**The `id` and `legacy_id` are different values.** The `id` is the current v3 identifier to use in all API requests. The `legacy_id` is the API 2.0 identifier, included for migration reference only. Never use `legacy_id` in filters or odds requests.
{% endhint %}

#### Standard feed bookmakers (selected)

| id | Name         | Feed              |
| -- | ------------ | ----------------- |
| 1  | 10Bet        | Standard          |
| 2  | bet365       | Standard, Premium |
| 3  | 188Bet       | Standard          |
| 5  | 888Sport     | Standard, Premium |
| 6  | BetFred      | Standard          |
| 7  | Bet-At-Home  | Standard, Premium |
| 8  | BetCRIS      | Standard          |
| 9  | Betfair      | Standard, Premium |
| 10 | BetOnline    | Standard, Premium |
| 13 | Coral        | Standard          |
| 14 | Dafabet      | Standard, Premium |
| 15 | Intertops    | Standard, Premium |
| 16 | Marathonbet  | Standard, Premium |
| 17 | Matchbook    | Standard, Premium |
| 19 | Paddy Power  | Standard, Premium |
| 20 | Pinnacle     | Standard          |
| 22 | Tipico       | Standard, Premium |
| 23 | Unibet       | Standard, Premium |
| 24 | Betsafe      | Standard, Premium |
| 26 | Betsson      | Standard          |
| 27 | Interwetten  | Standard, Premium |
| 28 | bwin         | Standard, Premium |
| 29 | WilliamHill  | Standard, Premium |
| 32 | Ladbrokes    | Standard, Premium |
| 35 | 1xbet        | Standard, Premium |
| 36 | Planetwin365 | Standard, Premium |
| 37 | BetClic      | Standard, Premium |
| 39 | Betway       | Standard          |
| 41 | Skybet       | Standard          |
| 62 | 22Bet        | Standard          |

#### Italian bookmakers

| id  | Name             | Feed              |
| --- | ---------------- | ----------------- |
| 36  | Planetwin365     | Standard, Premium |
| 76  | SNAI             | Standard          |
| 77  | GoldBet          | Standard          |
| 87  | Eurobet.it       | Standard          |
| 90  | Gioco Digitale   | Standard          |
| 91  | Bwin.it          | Standard          |
| 95  | Unibet.it        | Standard          |
| 105 | Betflag          | Standard          |
| 106 | Sisal Matchpoint | Standard          |
| 111 | Domusbet.it      | Standard          |
| 114 | Betaland         | Standard          |

{% hint style="info" %}
Lottomatica and AdmiralBet are not present in either feed.
{% endhint %}

#### Commonly asked bookmakers

| Bookmaker | id                | legacy\_id | Feed                          |
| --------- | ----------------- | ---------- | ----------------------------- |
| BetCRIS   | 8                 | 13         | Standard only                 |
| Pinnacle  | 20                | 80         | Standard only                 |
| Betano    | 216 (Betano.de)   | null       | Premium only                  |
| IFortuna  | 172 (IFortuna.eu) | null       | Standard                      |
| Tipsport  | 80 (Tipsport-Sk)  | null       | Standard (Slovak entity only) |

{% hint style="info" %}
Czech Tipsport, Fortuna Czech Republic, Chance, SynotTip and Betano Czech Republic are not covered in either feed. The entities present are the Slovak and German variants of those brands.
{% endhint %}

#### Premium feed bookmakers

The Premium Odds Feed (powered by TXODDS) covers a separate set of bookmakers, focused on pre-match odds movement and history. Run the dedicated endpoint to retrieve the full list:

```http
GET https://api.sportmonks.com/v3/odds/bookmakers/premium?api_token={{apiToken}}
```

The premium feed contains **42 bookmakers** across 2 pages. It does not include in-play odds. For in-play odds, use the Standard Odds feed.

### Selecting and filtering

In our [filtering tutorial](https://claude.ai/v3/tutorials-and-guides/tutorials/filter-and-select-fields/filtering.md) you can learn how to select specific fields or filter on only the data you need. By default, our API returns all bookmaker fields. If you only need names and ids, you can narrow the response with the `select` parameter:

```http
GET https://api.sportmonks.com/v3/odds/bookmakers?api_token={{apiToken}}&select=name
```

{% hint style="info" %}
Check our [filtering tutorial](https://claude.ai/v3/tutorials-and-guides/tutorials/filter-and-select-fields/filtering.md) for more tips and tricks.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.sportmonks.com/v3/tutorials-and-guides/tutorials/odds-and-predictions/bookmakers.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
