Single-bet, parlay and futures deep-link coverage, generated directly from the engine on each release.
| Sportsbook | Desktop | iOS | Android | Direct bet | Notes |
|---|---|---|---|---|---|
| BetMGMbetmgm | BET | BET | BET | — | |
| BetMGM (UK)betmgm_uk_ | BET | GAME | GAME | — | |
| BetRiversbetrivers | BET | GAME | GAME | — | |
| BetRivers (New York)betrivers_new_york_ | BET | GAME | GAME | — | |
| Blue Bookblue_book | BET | BET | BET | — | |
| Borgataborgata | BET | GAME | GAME | — | |
| Bwinbwin | BET | GAME | GAME | — | |
| Caesarscaesars | BET | BET | BET | — | |
| DraftKingsdraftkings | BET | BET | BET | — | |
| DraftKings Predictionsdraftkings_predictions | GAME | BET | BET | — | |
| Fanaticsfanatics | — | BET | BET | — | |
| FanDuelfanduel | BET | BET | BET | — | |
| FanDuel (Ontario)fanduel_ontario_ | BET | BET | BET | — | |
| Hard Rockhard_rock | GAME | BET | BET | — | |
| Hard Rock (Florida)hard_rock_florida_ | GAME | BET | BET | — | |
| Hard Rock (Illinois)hard_rock_illinois_ | GAME | BET | BET | — | |
| Kalshikalshi | BET | BET | BET | — | |
| Novignovig | BET | BET | GAME | — | |
| Onyx Oddsonyx_odds | BET | BET | BET | — | |
| Paddy Powerpaddy_power | BET | GAME | GAME | — | |
| PartyPokerpartypoker | BET | GAME | GAME | — | |
| Polymarketpolymarket | BET | BET | BET | — | |
| PrizePicksprizepicks | BET | BET | BET | — | Parlays only |
| PrizePicks (5/6-Pick Flex)prizepicks_5_or_6_pick_flex_ | BET | BET | BET | — | |
| Prophet Xprophet_x | BET | BET | BET | ◆ DIRECT | |
| Sleepersleeper | — | BET | BET | — | |
| Sportingbetsportingbet | BET | GAME | GAME | — | |
| Sports Interactionsports_interaction | BET | GAME | GAME | — | |
| Tailgate Exchangetailgate_exchange | — | BET | BET | — | |
| theScorethescore | BET | BET | BET | — | |
| 1xBet1xbet | GAME | GAME | GAME | — | |
| 4CX4cx | GAME | GAME | GAME | — | |
| 888sport888sport | GAME | GAME | GAME | — | |
| Action 24/7action_24_7 | GAME | GAME | GAME | — | |
| ATGatg | GAME | GAME | GAME | — | |
| Bally Betbally_bet | GAME | GAME | GAME | — | |
| BC.Gamebc_game | GAME | GAME | GAME | — | |
| Bet105bet105 | GAME | GAME | GAME | — | |
| Bet365bet365 | GAME | GAME | GAME | — | |
| Bet99bet99 | GAME | GAME | GAME | — | Only for main leagues right now |
| Bet Rightbet_right | GAME | GAME | GAME | — | Only for main leagues right now |
| Betanobetano | GAME | GAME | GAME | — | |
| BetCrisbetcris | GAME | GAME | GAME | — | |
| BetDEXbetdex | GAME | GAME | GAME | — | |
| Betfairbetfair | GAME | GAME | GAME | — | |
| Betfair Exchangebetfair_exchange | GAME | GAME | GAME | — | |
| Betfredbetfred | GAME | GAME | GAME | — | |
| BetJackbetjack | GAME | GAME | GAME | — | |
| BetNacionalbetnacional | GAME | GAME | GAME | — | Only for soccer and basketball |
| BetOnlinebetonline | GAME | GAME | GAME | — | |
| BetOpenlybetopenly | GAME | GAME | GAME | — | |
| betPARXbetparx | GAME | GAME | GAME | — | |
| BetPlaybetplay | GAME | GAME | GAME | — | |
| Betsafebetsafe | GAME | GAME | GAME | — | |
| Betssonbetsson | GAME | GAME | GAME | — | |
| BetUSbetus | GAME | GAME | GAME | — | Excluding soccer |
| BetVictorbetvictor | GAME | GAME | GAME | — | |
| Betwaybetway | GAME | GAME | GAME | — | Only for soccer and basketball |
| Betway (Alaska)betway_alaska_ | GAME | GAME | GAME | — | |
| Bodogbodog | GAME | GAME | GAME | — | |
| Bookmakerbookmaker | GAME | GAME | GAME | — | |
| Boomersboomers | GAME | GAME | GAME | — | |
| Bovadabovada | GAME | GAME | GAME | — | |
| Braccobracco | GAME | GAME | GAME | — | |
| BUSRbusr | GAME | GAME | GAME | — | |
| Campeonbetcampeonbet | GAME | GAME | GAME | — | |
| Casumocasumo | GAME | GAME | GAME | — | |
| ClutchBetclutchbet | GAME | GAME | GAME | — | |
| Coderecodere | GAME | GAME | GAME | — | |
| Coolbetcoolbet | GAME | GAME | GAME | — | |
| Crab Sportscrab_sports | GAME | GAME | GAME | — | |
| Crypto.comcrypto_com | GAME | GAME | GAME | — | |
| Duelbitsduelbits | GAME | GAME | GAME | — | |
| EliteBetelite_bet | GAME | GAME | GAME | — | |
| FireKeepersfirekeepers | GAME | GAME | GAME | — | |
| Flifffliff | GAME | GAME | GAME | — | |
| Gemini Exchangegemini_exchange | GAME | GAME | GAME | — | |
| Gutsguts | GAME | GAME | GAME | — | |
| iBetibet | GAME | GAME | GAME | — | |
| Ladbrokesladbrokes | GAME | GAME | GAME | — | |
| LeoVegasleovegas | GAME | GAME | GAME | — | |
| Lottolandlottoland | GAME | GAME | GAME | — | |
| LowViglowvig | GAME | GAME | GAME | — | |
| Midnitemidnite | GAME | GAME | GAME | — | |
| Mise-o-jeumise-o-jeu | GAME | GAME | GAME | — | |
| MyBookiemybookie | GAME | GAME | GAME | — | |
| NorthStar Betsnorthstar_bets | GAME | GAME | GAME | — | |
| Ozoonozoon | GAME | GAME | GAME | — | |
| PickleBetpicklebet | GAME | GAME | GAME | — | |
| Pinnaclepinnacle | GAME | GAME | GAME | — | |
| Play Albertaplay_alberta | GAME | GAME | GAME | — | |
| PointsBetpointsbet | GAME | GAME | GAME | — | |
| PointsBet (Australia)pointsbet_australia_ | GAME | GAME | GAME | — | |
| PointsBet (Ontario)pointsbet_ontario_ | GAME | GAME | GAME | — | |
| Polymarket (USA)polymarket_usa_ | — | GAME | GAME | — | |
| PowerPlaypowerplay | GAME | GAME | GAME | — | |
| Prolineproline | GAME | GAME | GAME | — | |
| Resorts World Betresorts_world_bet | GAME | GAME | GAME | — | |
| Rizkrizk | GAME | GAME | GAME | — | |
| SaharaBetssaharabets | GAME | GAME | GAME | — | |
| Sportsbetting.agsportsbetting_ag | GAME | GAME | GAME | — | |
| Sportzinosportzino | GAME | GAME | GAME | — | |
| Stakestake | GAME | GAME | GAME | — | |
| SugarHousesugarhouse | GAME | GAME | GAME | — | |
| Superbetsuperbet | GAME | GAME | GAME | — | |
| SuperBooksuperbook | GAME | GAME | GAME | — | |
| Svenska Spelsvenskaspel | GAME | GAME | GAME | — | |
| TABtouchtabtouch | GAME | GAME | GAME | — | |
| Tipicotipico | GAME | GAME | GAME | — | |
| TonyBettonybet | GAME | GAME | GAME | — | |
| Unibetunibet | GAME | GAME | GAME | — | |
| Unibet (Sweden)unibet_sweden_ | GAME | GAME | GAME | — | |
| Xbetxbet | GAME | GAME | GAME | — |
These are the books GetParlayDeepLink can build a multi-leg (parlay) betslip link for. Books not listed have no parlay deep link.
| Sportsbook | Desktop | iOS | Android |
|---|---|---|---|
| BetMGMbetmgm | BET | BET | BET |
| BetMGM (UK)betmgm_uk_ | BET | GAME | GAME |
| BetRiversbetrivers | BET | GAME | GAME |
| BetRivers (New York)betrivers_new_york_ | BET | GAME | GAME |
| Blue Bookblue_book | BET | BET | BET |
| Borgataborgata | BET | GAME | GAME |
| Bwinbwin | BET | GAME | GAME |
| Caesarscaesars | BET | BET | BET |
| DraftKingsdraftkings | BET | BET | BET |
| Fanaticsfanatics | — | BET | BET |
| FanDuelfanduel | BET | BET | BET |
| FanDuel (Ontario)fanduel_ontario_ | BET | BET | BET |
| Hard Rockhard_rock | GAME | BET | BET |
| Hard Rock (Florida)hard_rock_florida_ | GAME | BET | BET |
| Hard Rock (Illinois)hard_rock_illinois_ | GAME | BET | BET |
| Novignovig | BET | BET | GAME |
| Paddy Powerpaddy_power | BET | GAME | GAME |
| PartyPokerpartypoker | BET | GAME | GAME |
| PrizePicksprizepicks | BET | BET | BET |
| PrizePicks (5/6-Pick Flex)prizepicks_5_or_6_pick_flex_ | BET | BET | BET |
| Prophet Xprophet_x | GAME | BET | BET |
| Sleepersleeper | — | BET | BET |
| Sportingbetsportingbet | BET | GAME | GAME |
| Sports Interactionsports_interaction | BET | GAME | GAME |
| theScorethescore | BET | BET | BET |
| Betway (Alaska)betway_alaska_ | GAME | GAME | GAME |
| SugarHousesugarhouse | GAME | GAME | GAME |
These are the books GetDeepLinkFuture can build a futures (outright / championship-winner) link for. Futures use their own URL shapes — there is no event page to land on — so coverage is narrower than single bets, and books not listed have no futures deep link.
| Sportsbook | Desktop | iOS | Android | Notes |
|---|---|---|---|---|
| Betfairbetfair | BET | BET | BET | |
| BetMGMbetmgm | BET | BET | BET | |
| Caesarscaesars | BET | BET | BET | Not live-tested — no Caesars futures odds yet |
| DraftKingsdraftkings | BET | BET | BET | |
| Fanaticsfanatics | — | BET | BET | Not live-tested — event id still null in the futures feed |
| FanDuelfanduel | BET | BET | BET | |
| FanDuel (Ontario)fanduel_ontario_ | BET | BET | BET | |
| Paddy Powerpaddy_power | BET | BET | BET |
Base URL https://dl.oddsjam.com — JSON in, JSON out, no authentication. In-cluster callers can skip the edge and use http://deeplinker:8090.
Every link-returning response is the same object: mobile and desktop convenience URLs plus a urls map carrying, per platform, the URL and whether it adds_to_slip / is direct_bet_enabled. deep_link is null — never an error — when the book is unsupported or the odd lacks the identifiers that book needs, so always null-check before rendering a button.
Pass state to resolve <STATE> / <COUNTRY> / <PARTNER_ID> placeholders and per-locale domains; omit it to get raw URLs and localize yourself. GET responses are edge-cacheable for days (a link only changes when new sportsbook identifiers are written for the odd); POST responses never are, so prefer the GET endpoints on hot paths. Errors are {"error": "…"} with no-store. The & in a URL arrives as \u0026 — Go's JSON encoder escapes it and any decoder puts it back.
Single-bet links for game odds. Resolve by odd id when the odd lives in the odds Redis, or POST the metadata you already hold and skip the lookup entirely.
Resolve one odd id and return its per-platform links. Edge-cached, so this is the endpoint to hit from a client.
| Field | Type | Description |
|---|---|---|
| odd_id REQUIRED | string | Shaped game_id:sportsbook:market:bet_name. Percent-encode it — bet names contain +. |
| state | string | Locale to resolve <STATE> / <COUNTRY> / <PARTNER_ID> placeholders and per-locale domains (nj, pa, ca-on, uk, br-br…). Omit to get raw URLs with placeholders intact and localize per user. |
| include_adds_to_slip | bool | Default true. false drops the per-platform adds_to_slip / direct_bet_enabled flags from urls. |
curl -s 'https://dl.oddsjam.com/v1/deeplink?odd_id=12345:draftkings:player_points:lebron_james_over_25%2B5&state=nj'
{
"odd_id": "12345:draftkings:player_points:lebron_james_over_25+5",
"deep_link": {
"mobile": "dksb://sb/addbet/0QA123456",
"desktop": "https://sportsbook.draftkings.com/event/32219541?outcomes=0QA123456",
"urls": {
"ios": {
"url": "dksb://sb/addbet/0QA123456",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"android": {
"url": "dksb://sb/addbet/0QA123456",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"desktop": {
"url": "https://sportsbook.draftkings.com/event/32219541?outcomes=0QA123456",
"adds_to_slip": true,
"direct_bet_enabled": false
}
}
}
}
Resolve up to 500 odd ids in one pipelined Redis round trip. Unknown ids come back present with a null link.
| Field | Type | Description |
|---|---|---|
| odd_ids REQUIRED | string[] | Max 500 per request. |
| state | string | Locale to resolve <STATE> / <COUNTRY> / <PARTNER_ID> placeholders and per-locale domains (nj, pa, ca-on, uk, br-br…). Omit to get raw URLs with placeholders intact and localize per user. |
| include_adds_to_slip | bool | Default true. false drops the per-platform adds_to_slip / direct_bet_enabled flags from urls. |
curl -s https://dl.oddsjam.com/v1/deeplinks \
-H 'Content-Type: application/json' \
-d '{"odd_ids": ["12345:draftkings:player_points:lebron_james_over_25+5",
"67890:fanduel:moneyline:miami_heat"],
"state": "nj"}'
{
"deep_links": {
"12345:draftkings:player_points:lebron_james_over_25+5": {
"mobile": "dksb://sb/addbet/0QA123456",
"desktop": "https://sportsbook.draftkings.com/event/32219541?outcomes=0QA123456",
"urls": {
"ios": {
"url": "dksb://sb/addbet/0QA123456",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"android": {
"url": "dksb://sb/addbet/0QA123456",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"desktop": {
"url": "https://sportsbook.draftkings.com/event/32219541?outcomes=0QA123456",
"adds_to_slip": true,
"direct_bet_enabled": false
}
}
},
"67890:fanduel:moneyline:miami_heat": null
}
}
Build a link from metadata you supply — no Redis lookup. Everything but sportsbook is optional; each book uses the subset of ids it needs.
| Field | Type | Description |
|---|---|---|
| sportsbook REQUIRED | string | Any spelling of the book name; it is normalized ("DraftKings", "draft kings", "draftkings"). |
| deep_link_info | object | Sportsbook identifiers: sportsbook_event_id, sportsbook_full_event_id, sportsbook_market_id, sportsbook_selection_id, line_id, canonical_url. |
| sport, league, home_team, away_team, market_name, bet_name | string | Odd context; books that build search or event URLs need these. |
| game_start_date | string | ISO-8601 kickoff, used by books whose URL differs pre-game vs live. |
| is_live | bool | Overrides the game_start_date comparison for those books. |
| kind | string | "odd" (default) or "future" — see Future deep links. |
| state | string | Locale to resolve <STATE> / <COUNTRY> / <PARTNER_ID> placeholders and per-locale domains (nj, pa, ca-on, uk, br-br…). Omit to get raw URLs with placeholders intact and localize per user. |
| include_adds_to_slip | bool | Default true. false drops the per-platform adds_to_slip / direct_bet_enabled flags from urls. |
curl -s https://dl.oddsjam.com/v1/generate \
-H 'Content-Type: application/json' \
-d '{"sportsbook": "FanDuel",
"deep_link_info": {"sportsbook_market_id": "42.395971",
"sportsbook_selection_id": "1721338703"},
"sport": "basketball",
"league": "NBA",
"market_name": "Moneyline",
"bet_name": "Philadelphia 76ers",
"state": "nj"}'
{
"deep_link": {
"mobile": "fanduelsportsbook://account.sportsbook.fanduel.com/sportsbook/addToBetslip?marketId=42.395971\u0026selectionId=1721338703",
"desktop": "https://nj.sportsbook.fanduel.com/addToBetslip?marketId=42.395971\u0026selectionId=1721338703",
"urls": {
"ios": {
"url": "fanduelsportsbook://account.sportsbook.fanduel.com/sportsbook/addToBetslip?marketId=42.395971\u0026selectionId=1721338703",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"android": {
"url": "fanduelsportsbook://account.sportsbook.fanduel.com/sportsbook/addToBetslip?marketId=42.395971\u0026selectionId=1721338703",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"desktop": {
"url": "https://nj.sportsbook.fanduel.com/addToBetslip?marketId=42.395971\u0026selectionId=1721338703",
"adds_to_slip": true,
"direct_bet_enabled": false
}
}
}
}
Outright / championship-winner links. Futures have their own registry and URL shapes — there is no event page to land on — so coverage is narrower than single bets; see the Future DeepLink tab.
Resolve one future id from the futures metadata in Redis.
| Field | Type | Description |
|---|---|---|
| future_id REQUIRED | string | Shaped league:sportsbook:market:bet_name. |
| state | string | Locale to resolve <STATE> / <COUNTRY> / <PARTNER_ID> placeholders and per-locale domains (nj, pa, ca-on, uk, br-br…). Omit to get raw URLs with placeholders intact and localize per user. |
| include_adds_to_slip | bool | Default true. false drops the per-platform adds_to_slip / direct_bet_enabled flags from urls. |
curl -s 'https://dl.oddsjam.com/v1/future-deeplink?future_id=nba:draftkings:championship_winner:boston_celtics&state=nj'
{
"future_id": "nba:draftkings:championship_winner:boston_celtics",
"deep_link": {
"mobile": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"desktop": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"urls": {
"ios": {
"url": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"android": {
"url": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"desktop": {
"url": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"adds_to_slip": true,
"direct_bet_enabled": false
}
}
}
}
Batch futures resolve, up to 500 ids, same envelope as the odds batch.
| Field | Type | Description |
|---|---|---|
| future_ids REQUIRED | string[] | Max 500 per request. |
| state | string | Locale to resolve <STATE> / <COUNTRY> / <PARTNER_ID> placeholders and per-locale domains (nj, pa, ca-on, uk, br-br…). Omit to get raw URLs with placeholders intact and localize per user. |
| include_adds_to_slip | bool | Default true. false drops the per-platform adds_to_slip / direct_bet_enabled flags from urls. |
curl -s https://dl.oddsjam.com/v1/future-deeplinks \
-H 'Content-Type: application/json' \
-d '{"future_ids": ["nba:draftkings:championship_winner:boston_celtics"], "state": "nj"}'
{
"deep_links": {
"nba:draftkings:championship_winner:boston_celtics": {
"mobile": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"desktop": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"urls": {
"ios": {
"url": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"android": {
"url": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"desktop": {
"url": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"adds_to_slip": true,
"direct_bet_enabled": false
}
}
}
}
}
Same body as the odds generate endpoint, with "kind": "future" — it routes to the futures builder instead of the game-odds one.
| Field | Type | Description |
|---|---|---|
| kind REQUIRED | string | Must be "future" here; omitted or "odd" builds a game-odds link. |
| sportsbook REQUIRED | string | Futures books only. The futures feed's "fd" shorthand is accepted as input and always answers as fanduel. |
curl -s https://dl.oddsjam.com/v1/generate \
-H 'Content-Type: application/json' \
-d '{"kind": "future",
"sportsbook": "DraftKings",
"deep_link_info": {"sportsbook_event_id": "31445",
"sportsbook_selection_id": "0QA987654"},
"league": "NBA",
"market_name": "Championship Winner",
"bet_name": "Boston Celtics",
"state": "nj"}'
{
"deep_link": {
"mobile": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"desktop": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"urls": {
"ios": {
"url": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"android": {
"url": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"desktop": {
"url": "https://sportsbook.draftkings.com/event/31445?outcomes=0QA987654",
"adds_to_slip": true,
"direct_bet_enabled": false
}
}
}
}
One link that puts several selections on the same betslip, for the books listed on the Parlay DeepLink tab. Legs are always caller-supplied — there is no id-resolving variant.
Build a multi-leg betslip link. A single-leg parlay yields the same link as the single-bet endpoint for that book.
| Field | Type | Description |
|---|---|---|
| sportsbook REQUIRED | string | Book must support parlays, else deep_link is null (still 200). |
| legs REQUIRED | object[] | One deep_link_info map per leg, same shape /v1/generate takes. Max 500. |
| sport | string | Some books key the betslip path off the sport. |
| state | string | Locale to resolve <STATE> / <COUNTRY> / <PARTNER_ID> placeholders and per-locale domains (nj, pa, ca-on, uk, br-br…). Omit to get raw URLs with placeholders intact and localize per user. |
| include_adds_to_slip | bool | Default true. false drops the per-platform adds_to_slip / direct_bet_enabled flags from urls. |
curl -s https://dl.oddsjam.com/v1/parlay-deeplink \
-H 'Content-Type: application/json' \
-d '{"sportsbook": "FanDuel",
"sport": "basketball",
"state": "nj",
"legs": [{"sportsbook_market_id": "42.395971",
"sportsbook_selection_id": "1721338703"},
{"sportsbook_market_id": "42.395104",
"sportsbook_selection_id": "1721254199"}]}'
{
"deep_link": {
"mobile": "fanduelsportsbook://account.sportsbook.fanduel.com/sportsbook/addToBetslip?marketId[0]=42.395971\u0026selectionId[0]=1721338703\u0026marketId[1]=42.395104\u0026selectionId[1]=1721254199",
"desktop": "https://nj.sportsbook.fanduel.com/addToBetslip?marketId[0]=42.395971\u0026selectionId[0]=1721338703\u0026marketId[1]=42.395104\u0026selectionId[1]=1721254199",
"urls": {
"ios": {
"url": "fanduelsportsbook://account.sportsbook.fanduel.com/sportsbook/addToBetslip?marketId[0]=42.395971\u0026selectionId[0]=1721338703\u0026marketId[1]=42.395104\u0026selectionId[1]=1721254199",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"android": {
"url": "fanduelsportsbook://account.sportsbook.fanduel.com/sportsbook/addToBetslip?marketId[0]=42.395971\u0026selectionId[0]=1721338703\u0026marketId[1]=42.395104\u0026selectionId[1]=1721254199",
"adds_to_slip": true,
"direct_bet_enabled": false
},
"desktop": {
"url": "https://nj.sportsbook.fanduel.com/addToBetslip?marketId[0]=42.395971\u0026selectionId[0]=1721338703\u0026marketId[1]=42.395104\u0026selectionId[1]=1721254199",
"adds_to_slip": true,
"direct_bet_enabled": false
}
}
}
}
The same tables this page renders, served as JSON — use them to pick the button label (BET vs GAME) per book and platform instead of hardcoding a list. The book lists below are real but truncated with … for readability; the endpoints return them in full.
Every book with a registered builder, per bet kind. Names are always canonical.
curl -s https://dl.oddsjam.com/v1/books
{
"books": [
"1xbet",
"4cx",
"888sport",
"action_24_7",
"atg",
"…"
],
"future_books": [
"betfair",
"betmgm",
"caesars",
"draftkings",
"fanatics",
"…"
],
"parlay_books": [
"betmgm",
"betmgm_uk_",
"betrivers",
"betrivers_new_york_",
"betway_alaska_",
"…"
]
}
Per-platform capability lists. future_adds_to_slip_books is intersected with the futures registry, so it never claims a book that can't build a futures link.
| Field | Type | Description |
|---|---|---|
| platform | string | desktop (default), ios or android. |
curl -s 'https://dl.oddsjam.com/v1/deeplink-books?platform=ios'
{
"one_click_books": [
"1xbet",
"4cx",
"888sport",
"action_24_7",
"…"
],
"adds_to_slip_books": [
"betfair_future",
"betmgm",
"blue_book",
"caesars",
"…"
],
"parlay_adds_to_slip_books": [
"betmgm",
"blue_book",
"caesars",
"draftkings",
"…"
],
"future_adds_to_slip_books": [
"betfair",
"betmgm",
"caesars",
"draftkings",
"…"
]
}
Liveness plus Redis reachability; 503 when Redis is unreachable. Never cached.
curl -s https://dl.oddsjam.com/health
{
"status": "ok"
}