Nine bookmakers come with a free SportsGameOdds key. Unibet is one of them, and of the nine it is the one most likely to find a bug in your code — which, on a plan that costs nothing, is exactly what you want it doing.
That is not a knock on the book. It is a point about what the other eight have in common.
The nine books on the free plan
The free Amateur plan carries nine of the 85+ books in the feed: FanDuel, Draft Kings, BetMGM, Caesars, ESPN BET, Bovada, Unibet, PointsBet and William Hill.
At that size, which books you get matters more than how many. Nine books that all price the same way will happily let you ship an integration that falls over the first time it meets a market shape it has not seen. Most of that list is American, and American books mostly price two outcomes. Unibet is the one in the group that routinely returns a third.
The William Hill Odds API page covers the other non-American book on that list, including why its bookmakerID is one of the easiest in the feed to get wrong.
Why a third outcome changes your parsing
Two of the eight leagues on the free plan are soccer: the Champions League and MLS. Soccer draws, and a draw is not a push — it is a result that pays. So the headline market is a three-way moneyline rather than the two-way moneyline you get on an NFL game.
In the API that is betTypeID of ml3way, sitting on the reg period, which is the ninety minutes plus stoppage time rather than the full match including extra time. It carries six sides rather than two:
sideID | statEntityID | Pays when |
|---|---|---|
home | home | Home team leads after regulation |
away | away | Away team leads after regulation |
draw | all | Level after regulation |
home+draw | home | Home team wins or draws |
away+draw | away | Away team wins or draws |
not_draw | all | Either side wins |
If your code assumes a moneyline has a home side and an away side, four of those six will surprise it. Better to discover that on a Champions League fixture during a free prototype than on a paid plan with a product already live.
The other thing soccer tends to catch out is the stat itself. Goals are not a goals statID — points is the score stat across every sport in the API, so a total goals market is points-all-reg-ou-over. The stats reference has the full list, and bet types and sides covers the three-way structure in detail.
Requesting Unibet prices
Filter to Unibet alone with bookmakerID=unibet:
curl "https://api.sportsgameodds.com/v2/events?leagueID=UEFA_CHAMPIONS_LEAGUE&bookmakerID=unibet&oddsAvailable=true" \
-H "x-api-key: YOUR_API_KEY"
More often you want Unibet next to the American books, which is the same request with a longer list:
curl "https://api.sportsgameodds.com/v2/events?leagueID=MLS&bookmakerID=unibet,draftkings,fanduel,betmgm&oddsAvailable=true" \
-H "x-api-key: YOUR_API_KEY"
Every book in that request comes back on the same oddID, so lining the prices up is a lookup rather than a matching problem.
What a Unibet price looks like
{
"eventID": "...",
"leagueID": "UEFA_CHAMPIONS_LEAGUE",
"odds": {
"points-all-reg-ml3way-draw": {
"oddID": "points-all-reg-ml3way-draw",
"marketName": "3-Way Moneyline",
"statID": "points",
"statEntityID": "all",
"periodID": "reg",
"betTypeID": "ml3way",
"sideID": "draw",
"fairOdds": "+245",
"bookOdds": "+230",
"byBookmaker": {
"unibet": { "odds": "+240", "available": true },
"draftkings": { "odds": "+225", "available": true }
}
}
}
}
Two things worth knowing. Odds are strings, so +240 arrives as "+240" and the plus sign survives rather than being lost to a number cast. And fairOdds is the vig-free consensus across every book pricing that market while bookOdds keeps the margin in, so you get a benchmark without computing one.
Coverage, honestly
Unibet does not price everything, and neither does any other single book. Read byBookmaker on each odd rather than assuming Unibet is on a given market, and treat its absence as normal rather than as an error. The /markets endpoint returns the supported set by league if you would rather check up front than handle it at runtime.
Coverage is also not static. Books add and drop markets, so anything you hardcode today is a bug waiting for a slow week.
Linking out to the book
Each event carries a links.bookmakers object with a URL straight to that event on each book's own site, links.bookmakers.unibet among them. For an odds comparison product or anything with an affiliate arrangement, that saves you constructing URLs from team names and hoping the slug format holds.
Use cases for Unibet data
Prototyping is the honest first one. Unibet is available before you have entered a card, which makes it part of the set you can validate an integration against rather than something you read about and hope works after upgrading.
For odds comparison tools, a book pricing to a different audience than the American majors is worth having in the row. Two books aimed at the same customers tend to show the same number.
For anything soccer-facing, the three-way structure is the point rather than a complication. The Champions League and MLS pages cover how the periods and markets fit together for each competition.
Unibet API technical specifications
Unibet comes through the standard /v2/events endpoint. There is no separate call, credential or schema for any individual book.
Billing is per event object rather than per market or per book, so a ten-fixture matchday is ten objects whether you ask for Unibet alone or Unibet alongside eighty others. Adding books to a request costs response size and nothing else.
The free Amateur plan gives you 2,500 objects a month at 10 requests a minute with a ten-minute update interval — enough to build against real fixtures, not enough to run anything live. Odds refresh sub-minute on Pro. The API documentation covers authentication, pagination and the full parameter list, and handling odds covers reading byBookmaker in code.
Frequently asked questions
What is the bookmakerID for Unibet?
Is Unibet available on the free plan?
Why does a Unibet soccer market have three sides instead of two?
Which leagues can I get Unibet odds for on the free plan?
Why is a total goals market filed under points?
How do I tell which markets Unibet actually prices?
Build against it before you pay anything
Unibet is one of nine books on the free plan. 2,500 objects a month, no card required.