Bookmakers

Bookmaker keys and the leagues each one delivers.

42 bookmakers, exchanges and prediction markets deliver prices through v1 as of 30 October 2026. Each has a page with its key and leagues. SockOdds is independent and is not affiliated with any bookmaker listed.

BookmakerKeyKindLeagues
SportsbetsportsbetSportsbook11
TABtabSportsbook12
LadbrokesladbrokesSportsbook2
NedsnedsSportsbook6
PointsBetpointsbetSportsbook5
UnibetunibetSportsbook14
Betfair Exchangebetfair_exchangeBetting exchange11
PinnaclepinnacleSportsbook10
DabbledabbleSportsbook11
BetrbetrSportsbook7
DraftKingsdraftkingsSportsbook4
FanDuelfanduelSportsbook4
BetMGMbetmgmSportsbook4
KalshikalshiPrediction market11
PolymarketpolymarketPrediction market10
MatchbookmatchbookBetting exchange9
Bally Betbally_betSportsbook4
BearBetbearbetSportsbook7
BetBlitzbetblitzSportsbook1
BetBuzzbetbuzzSportsbook3
BetChampsbetchampsSportsbook1
BetDeluxebetdeluxeSportsbook12
BetFocusbetfocusSportsbook12
BetOpenlybetopenlyBetting exchange1
BetRealbetrealSportsbook1
BetRightbetrightSportsbook3
BetRiversbetriversSportsbook4
BlondeBetblondebetSportsbook1
CashCagecashcageSportsbook7
ChaseBetchasebetSportsbook1
Fanatics Marketsfanatics_marketsPrediction market4
Hard Rock Bethard_rock_betSportsbook4
LightningBetlightningbetSportsbook8
MintbetmintbetSportsbook15
NovignovigBetting exchange4
PlayUpplayupSportsbook1
ProphetXprophetxBetting exchange8
Star SportsstarsportsSportsbook7
SwiftBetswiftbetSportsbook10
TABtouchtabtouchSportsbook8
theScore Betthescore_betSportsbook2
TopBettopbetSportsbook4

The catalogue names 32 more bookmakers that v1 does not deliver yet. GET /v1/bookmakers lists every key:

curl -sS "https://api.sockodds.com/v1/bookmakers?regions=au&limit=5" \
  -H "Authorization: Bearer $SOCKODDS_API_KEY"
const response = await fetch("https://api.sockodds.com/v1/bookmakers?regions=au&limit=5", {
  headers: { Authorization: `Bearer ${process.env.SOCKODDS_API_KEY}` },
});
console.log(JSON.stringify(await response.json(), null, 2));
import json, os, urllib.request

request = urllib.request.Request(
    "https://api.sockodds.com/v1/bookmakers?regions=au&limit=5",
    headers={"Authorization": "Bearer " + os.environ["SOCKODDS_API_KEY"]},
)
with urllib.request.urlopen(request) as response:
    print(json.dumps(json.load(response), indent=2))

Response from a local copy of the API with invented test prices

{
  "data": [
    {
      "key": "bearbet",
      "name": "BearBet",
      "kind": "sportsbook",
      "regions": [
        "au"
      ]
    },
    {
      "key": "bet365",
      "name": "bet365",
      "kind": "sportsbook",
      "regions": [
        "au"
      ]
    },
    {
      "key": "betblitz",
      "name": "BetBlitz",
      "kind": "sportsbook",
      "regions": [
        "au"
      ]
    },
    {
      "key": "betbuzz",
      "name": "BetBuzz",
      "kind": "sportsbook",
      "regions": [
        "au"
      ]
    },
    {
      "key": "betchamps",
      "name": "BetChamps",
      "kind": "sportsbook",
      "regions": [
        "au"
      ]
    }
  ],
  "meta": {
    "count": 5,
    "cursor": "eyJuIjo1LCJmIjoiMmE5ZmE1MmI5MzA5ZWE2MSJ9"
  },
  "links": {
    "next": "https://api.sockodds.com/v1/bookmakers?regions=au&limit=5&cursor=eyJuIjo1LCJmIjoiMmE5ZmE1MmI5MzA5ZWE2MSJ9"
  }
}

Search across the SockOdds documentation and catalogue.