---
updatedAt: 2026-10-06T07:20:47.000Z
agentTools:
  siteIndex: https://developer.sportradar.com/llms.txt
  projectIndex: https://developer.sportradar.com/odds/llms.txt
---

# Books

Returns a list of configured bookmakers and their IDs.

<Callout icon="⏱️" theme="default">
  ### Update Frequency

  **TTL / Cache:** 5 minutes

  **Data Updates:** On bookmaker configuration changes

  Polling cadence for this and every other feed: [Update Frequencies](https://developer.sportradar.com/odds/docs/oc-ig-update-frequencies)
</Callout>

> 📘 Discovering Your Coverage
>
> Learn how to use the Books feed to discover the bookmakers configured for your key on the [API Basics](https://developer.sportradar.com/odds/docs/oc-ig-api-basics) page of the Odds Comparison Integration Guide.

***

## Data Points

<Accordion title="Books" icon="fa-light fa-chart-simple-horizontal">
  | Attribute | Parent Element | Type   | Description                                              |
  | --------- | -------------- | ------ | -------------------------------------------------------- |
  | `id`      | `book`         | GUID   | Unique ID of a sportsbook<br /><br />ex. `sr:book:18186` |
  | `name`    | `book`         | String | Name of a sportsbook<br /><br />ex. `FanDuel`            |
</Accordion>

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "odds-comparison-prematch",
    "version": "2"
  },
  "servers": [
    {
      "url": "https://api.sportradar.com/oddscomparison-prematch/"
    }
  ],
  "components": {
    "securitySchemes": {
      "sec0": {
        "type": "apiKey",
        "in": "header",
        "name": "x-api-key"
      }
    }
  },
  "security": [
    {
      "sec0": []
    }
  ],
  "paths": {
    "/{access_level}/v2/{language_code}/books.{format}": {
      "get": {
        "summary": "Books",
        "description": "Returns a list of configured bookmakers and their IDs.",
        "operationId": "oc-prematch-books",
        "parameters": [
          {
            "name": "access_level",
            "in": "path",
            "description": "The access level of your API key<br><br>`trial`, `production`",
            "schema": {
              "type": "string",
              "enum": [
                "trial",
                "production"
              ],
              "default": "trial"
            },
            "required": true
          },
          {
            "name": "language_code",
            "in": "path",
            "description": "2-letter code for supported languages<br><br>`en` (English)<br><br>English is the only fully supported language for this API. Click <span style=\"text-decoration:underline\">[here](https://api-docs.sportradar.us/misc/Sportradar_API_Languages.xlsx)</span> for valid language codes and a tabular list of available languages per competition.",
            "schema": {
              "type": "string",
              "default": "en"
            },
            "required": true
          },
          {
            "name": "format",
            "in": "path",
            "description": "Format returned<br><br>`json`, `xml`",
            "schema": {
              "type": "string",
              "enum": [
                "json",
                "xml"
              ],
              "default": "json"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "200",
            "content": {
              "application/json": {
                "examples": {
                  "Result": {
                    "value": "{\n  \"books\": [\n    {\n      \"id\": \"string\",\n      \"name\": \"string\"\n    }\n  ],\n  \"generated_at\": \"2023-05-11T14:59:47.467Z\"\n}"
                  }
                },
                "schema": {
                  "type": "object",
                  "properties": {
                    "books": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string",
                            "example": "string"
                          },
                          "name": {
                            "type": "string",
                            "example": "string"
                          }
                        }
                      }
                    },
                    "generated_at": {
                      "type": "string",
                      "example": "2023-05-11T14:59:47.467Z"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "x-readme": {
    "headers": [],
    "explorer-enabled": true,
    "proxy-enabled": true
  },
  "x-readme-fauxas": true
}
```