curl --request GET \
--url 'https://v5.oddspapi.io/en/bookmakers?apiKey='import requests
url = "https://v5.oddspapi.io/en/bookmakers?apiKey="
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://v5.oddspapi.io/en/bookmakers?apiKey=', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://v5.oddspapi.io/en/bookmakers?apiKey=",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://v5.oddspapi.io/en/bookmakers?apiKey="
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://v5.oddspapi.io/en/bookmakers?apiKey=")
.asString();require 'uri'
require 'net/http'
url = URI("https://v5.oddspapi.io/en/bookmakers?apiKey=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body[
{
"slug": "188bet",
"bookmakerName": "188BET",
"active": true,
"domain": "https://188bet.com",
"serverGroup": "at4",
"price": 10,
"websocketPregame": true,
"websocketLive": false,
"maxDelayPregameInSec": 80,
"maxDelayPregameMainInSec": 60,
"availableCountries": [
"ag",
"al",
"am",
"ar",
"at"
]
},
{
"slug": "1xbet",
"bookmakerName": "1xBet",
"active": true,
"domain": "https://1xbet.com",
"serverGroup": "de4",
"price": 10,
"websocketPregame": true,
"websocketLive": true,
"maxDelayPregameInSec": 30,
"maxDelayLiveInSec": 4,
"maxDelayPregameMainInSec": 6,
"availableCountries": [
"bo",
"kr",
"tn",
"in"
]
}
]Get Bookmakers
List bookmakers.
Returns the bookmaker catalog available to the provided apiKey.
Lookup mode: bookmakers (optional filter list) + playerProps (optional capability filter).
curl --request GET \
--url 'https://v5.oddspapi.io/en/bookmakers?apiKey='import requests
url = "https://v5.oddspapi.io/en/bookmakers?apiKey="
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://v5.oddspapi.io/en/bookmakers?apiKey=', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://v5.oddspapi.io/en/bookmakers?apiKey=",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://v5.oddspapi.io/en/bookmakers?apiKey="
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://v5.oddspapi.io/en/bookmakers?apiKey=")
.asString();require 'uri'
require 'net/http'
url = URI("https://v5.oddspapi.io/en/bookmakers?apiKey=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body[
{
"slug": "188bet",
"bookmakerName": "188BET",
"active": true,
"domain": "https://188bet.com",
"serverGroup": "at4",
"price": 10,
"websocketPregame": true,
"websocketLive": false,
"maxDelayPregameInSec": 80,
"maxDelayPregameMainInSec": 60,
"availableCountries": [
"ag",
"al",
"am",
"ar",
"at"
]
},
{
"slug": "1xbet",
"bookmakerName": "1xBet",
"active": true,
"domain": "https://1xbet.com",
"serverGroup": "de4",
"price": 10,
"websocketPregame": true,
"websocketLive": true,
"maxDelayPregameInSec": 30,
"maxDelayLiveInSec": 4,
"maxDelayPregameMainInSec": 6,
"availableCountries": [
"bo",
"kr",
"tn",
"in"
]
}
]Authorizations
Your API key (query-based auth for v5).
Query Parameters
Comma- or space-separated bookmaker slugs. Supports * / all for wildcard.
If true, only return bookmakers that support player proposition markets.
Response
Returns Bookmaker[]
Stable bookmaker slug — the key used in bookmakers filters and in all odds payloads.
Bookmaker display name.
Whether the bookmaker is currently served by the API.
Main public website URL of the bookmaker.
Deprecated internal field — safe to ignore for API consumers.
Deprecated internal field — safe to ignore for API consumers.
Whether pregame odds for this bookmaker are streamed over the WebSocket.
Whether live (in-play) odds for this bookmaker are streamed over the WebSocket.
Whether this bookmaker offers player proposition markets.
Maximum expected refresh delay for pregame odds, in seconds — the freshness bound for this bookmaker. Measured from observed vs. bookmaker change times (currently the rolling p50) where the book publishes usable timestamps, estimated otherwise.
Maximum expected refresh delay for live odds, in seconds. Measured from observed vs. bookmaker change times (currently the rolling p50) where the book publishes usable timestamps, estimated otherwise.
Maximum expected refresh delay for pregame main lines, in seconds. Measured from observed vs. bookmaker change times (currently the rolling p50) where the book publishes usable timestamps, estimated otherwise.
ISO 3166-1 alpha-2 country codes where the bookmaker accepts customers.