5.3 Bet Types
Every offer you publish and every bet we place carries a bet_type string. The string is a comma-separated
encoding of the market and the selection within it. This page lists every bet type we currently understand.
5.3.1 Reading the notation
The format descriptions below use a small notation:
| Notation | Meaning |
|---|---|
<for/against> | Choose exactly one of the listed alternatives. |
<handicap>, <home_score> | Substitute your own value. |
[,sub,kills] | An optional segment. Include it only when it applies. |
<handicap>*4 | Multiply the handicap by 4 before encoding it. See Handicap encoding. |
Three conventions apply throughout:
forandagainstcorrespond to back and lay. If you are not an exchange, always usefor.h,aanddstand for home, away and draw. In tennis, home becomesp1and away becomesp2.- A bet type must match one of the families below exactly. Unrecognised strings are discarded along with the offer that carries them.
5.3.1.1 Handicap encoding
Wherever a format shows <handicap>*4, the value you send is the handicap multiplied by four, so that
quarter-line handicaps stay integers.
Sign handling differs by side. A positive or negative handicap on the home side keeps its sign. On the away side the sign is inverted: a negative away handicap becomes positive, and a positive away handicap becomes negative.
For a Real Madrid (home) vs FC Barcelona (away) match:
| Market | Our format |
|---|---|
home +0.75, away -0.75 | 3 and 3 |
home -0.5, away +0.5 | -2 and -2 |
One exception: in the match_odds_over_under general bet type the handicap is not multiplied by 4.
5.3.2 General
Intended mainly for soccer, basketball, mma and boxing, but you may use it for any sport where the more specific families below do not express the market you need.
| Sub-type | Format | Example |
|---|---|---|
| Asian handicap | <for/against>,ah,<h/a>,<handicap>*4 | for,ah,h,22 |
| Asian over/under | <for/against>,<ahover/ahunder>,<handicap>*4 | for,ahover,822 |
| Team asian over/under | <for/against>,<tahover/tahunder>,<h/a>,<handicap>*4 | for,tahover,h,20 |
| Moneyline | <for/against>,ml,<h/a> | for,ml,h |
| Win/draw/win | <for/against>,<h/a/d> | for,h |
| Win/draw/win HT-FT | <for/against>,<h/a/d>,<h/a/d> | for,h,a |
| Double chance | <for/against>,dc,<h/a>,<d/a> | for,dc,h,a |
| Odd/even | <for/against>,<odd/even> | for,odd |
| Team odd/even | <for/against>,<odd/even>,<h/a> | for,even,h |
| Team clean sheet | <for/against>,clean,<h/a>,<yes/no> | for,clean,h,yes |
| Win to nil | <for/against>,wintonil,<h/a>,<yes/no> | for,wintonil,h,no |
| Will score | <for/against>,score,<both/either/neither/one>,<yes/no> | for,score,both,yes |
| Team will score | <for/against>,score,<h/a>,<yes/no> | for,score,h,no |
| Correct score | <for/against>,cs,<home_score>,<away_score> | for,cs,2,1 |
| Other correct score | <for/against>,othercs,<home_high>,<away_high> | for,othercs,3,1 |
| Match odds and both score | <for/against>,mo_both_score,<h/a/d>,<yes/no> | for,mo_both_score,h,yes |
| Match odds and over/under | <for/against>,moou,<h/a/d>,<over/under>,<handicap> | for,moou,h,over,2 |
| Any other unquoted | <for/against>,aou,<h/a/d>,3 | for,aou,h,3 |
| Exact total | <for/against>,exact_total,<goals> | for,exact_total,4 |
| Goal range | <for/against>,gr,<low>,<high> | for,gr,1,3 |
| Team goal range | <for/against>,teamgr,<h/a>,<low>,<high> | for,teamgr,h,2,4 |
| Score win margin | <for/against>,swm,<no_goal/sd> | for,swm,no_goal |
| Win margin | <for/against>,wm,<h/a>,<low>,<high> | for,wm,h,1,3 |
| To qualify | <for/against>,qualify,<h/a> | for,qualify,h |
Notes:
- Other correct score asks whether the home and away sides each score more than the given
home_highandaway_highvalues. - Match odds and over/under is the one place where the handicap is not multiplied by 4.
- Goal range and team goal range accept the literal string
infas<high>when there is no upper limit. - Win margin means the chosen side wins by between
lowandhighgoals.
5.3.3 Tennis
Every tennis bet type is built on the base structure:
<for/against>,tset,<which_set>,<void_rule>[,<unit>]
| Segment | Allowed values |
|---|---|
<which_set> | 1, 2, 3, 4, 5, all |
<void_rule> | vset1, vset2, vset3, vset4, vset5, vwhole |
<unit> | set, game |
<void_rule> states how much of the match must be played for the bet to stand. With vwhole the whole
match must finish or the bet voids; with vset2 the first two sets are enough.
<unit> is optional only because the money line market does not need it. Every other market requires it.
| Sub-type | Format | Example |
|---|---|---|
| Moneyline | <for/against>,tset,<which_set>,<void_rule>,<p1/p2> | for,tset,all,vwhole,p1 |
| Asian handicap | <for/against>,tset,<which_set>,<void_rule>,<unit>,ah,<p1/p2>,<handicap>*4 | for,tset,1,vset1,game,ah,p1,-14 |
| Asian over/under | <for/against>,tset,<which_set>,<void_rule>,<unit>,<ahover/ahunder>,<handicap>*4 | for,tset,all,vwhole,set,ahover,10 |
| Correct score | <for/against>,tset,<which_set>,<void_rule>,<unit>,cs,<p1_score>,<p2_score> | for,tset,all,vwhole,set,cs,2,1 |
| Odd/even | <for/against>,tset,<which_set>,<void_rule>,<unit>,<odd/even> | for,tset,all,vset1,game,even |
| Game win | <for/against>,tgame,<which_set>,<which_game>,<void_rule>,<p1/p2> | for,tgame,2,1,vwhatever,p1 |
Game win is the one tennis market that does not follow the base structure: it uses tgame rather than
tset and names both the set and the game.
5.3.4 American football, rugby league and rugby union
The base structure is one of:
<for/against>,tquarter,<which_quarter>
<for/against>,thalf,<which_half>
<for/against>,tp,<time_period>
where <which_quarter> is one of 1, 2, 3, 4; <which_half> is 1 or 2; and <time_period> is
reg for regular time (the four quarters) or all for regular time plus overtime.
| Sub-type | Suffix appended to the base | Example |
|---|---|---|
| Moneyline | ,ml,<h/a> | for,tp,all,ml,h |
| Win/draw/win | ,wdw,<h/a/d> | for,tp,reg,wdw,h |
| Asian handicap | ,ah,<h/a>,<handicap>*4 | for,thalf,2,ah,h,-22 |
| Asian over/under | ,<ahover/ahunder>,<handicap>*4 | for,tp,reg,ahover,254 |
| Team asian over/under | ,<tahover/tahunder>,<h/a>,<handicap>*4 | for,tp,all,tahover,a,94 |
5.3.5 Hockey
The base structure is <for/against>,<time_period_type>,<time_period> where <time_period_type> is tp or
tperiod.
With tperiod, <time_period> is 1, 2 or 3 — the three main periods. With tp, it is reg (regular
time), all (regular time plus overtime plus penalties) or pen (penalties).
| Sub-type | Suffix appended to the base | Example |
|---|---|---|
| Moneyline | ,ml,<h/a> | for,tperiod,1,ml,a |
| Win/draw/win | ,wdw,<h/a/d> | for,tp,reg,wdw,d |
| Asian handicap | ,ah,<h/a>,<handicap>*4 | for,tp,all,ah,h,-18 |
| Asian over/under | ,<ahover/ahunder>,<handicap>*4 | for,tperiod,2,ahover,10 |
| Team asian over/under | ,<tahover/tahunder>,<h/a>,<handicap>*4 | for,tp,all,tahover,a,10 |
| Odd/even | ,<odd/even> | for,tp,reg,even |
5.3.6 Baseball
The base structure is <for/against>,<time_period_type>,<time_period> where <time_period_type> is tp or
thalf.
The value 1 works only with thalf and denotes the first half. reg (the first nine innings) and all
(regular time plus overtime) work only with tp.
| Sub-type | Suffix appended to the base | Example |
|---|---|---|
| Moneyline | ,ml,<h/a> | for,tp,all,ml,h |
| Win/draw/win | ,wdw,<h/a/d> | for,tp,reg,wdw,d |
| Asian handicap | ,ah,<h/a>,<handicap>*4 | for,thalf,1,ah,a,2 |
| Asian over/under | ,<ahover/ahunder>,<handicap>*4 | for,tp,all,ahover,52 |
| Team asian over/under | ,<tahover/tahunder>,<h/a>,<handicap>*4 | for,thalf,1,tahunder,h,6 |
5.3.7 Cricket
These markets are on regular time (one day, excluding the super-over) or all time (one day, including the
super-over). The base structure is <for/against>,tp,<reg/all>.
| Sub-type | Format | Example |
|---|---|---|
| Moneyline | <for/against>,tp,<reg/all>,ml,<h/a> | for,tp,all,ml,h |
| Win/draw/win | <for/against>,tp,reg,wdw,<h/a/d> | for,tp,reg,wdw,h |
5.3.8 Esports
A bet is either on the whole match (tp,all) or on a single map (tmap,<map_number> with the map number
from 1 to 5). An optional ,sub,kills segment denotes the kills sub-sport.
The base structure is therefore <for/against>,tp,all[,sub,kills] or
<for/against>,tmap,<map_number>[,sub,kills].
| Sub-type | Suffix appended to the base | Example |
|---|---|---|
| Moneyline | ,ml,<h/a> | for,tmap,1,sub,kills,ml,h |
| Asian handicap | ,ah,<h/a>,<handicap>*4 | for,tmap,3,ah,a,10 |
| Asian over/under | ,<ahover/ahunder>,<handicap>*4 | for,tmap,3,sub,kills,ahover,106 |
| Team asian over/under | ,<tahover/tahunder>,<h/a>,<handicap>*4 | for,tmap,2,tahunder,a,46 |
| Correct score | ,cs,<home_score>,<away_score> | for,tp,all,cs,2,1 |
Correct score is available on the whole match only: <for/against>,tp,all,cs,<home_score>,<away_score>.
5.3.9 Handball
A bet is either on regular time (tp,reg) or on the first half (thalf,1). The base structure is <for/against>,tp,reg or <for/against>,thalf,1.
| Sub-type | Suffix appended to the base | Example |
|---|---|---|
| Moneyline | ,ml,<h/a> | for,thalf,1,ml,a |
| Win/draw/win | ,wdw,<h/a/d> | for,tp,reg,wdw,h |
| Asian handicap | ,ah,<h/a>,<handicap>*4 | for,thalf,1,ah,h,-10 |
| Asian over/under | ,<ahover/ahunder>,<handicap>*4 | for,tp,reg,ahover,230 |
| Team asian over/under | ,<tahover/tahunder>,<h/a>,<handicap>*4 | for,tp,reg,tahunder,a,110 |
| Odd/even | ,<odd/even> | for,thalf,1,even |
Team asian over/under is supported on regular time only.
5.3.10 Darts
Every darts bet type is on an entire match (tp,all). An optional sub,180 segment denotes the 180s
sub-sport.
| Sub-type | Format | Example |
|---|---|---|
| Moneyline | <for/against>,tp,all,[sub,180,]ml,<h/a> | for,tp,all,sub,180,ml,a |
| Asian handicap | <for/against>,tp,all,[sub,180,]ah,<h/a>,<handicap>*4 | for,tp,all,sub,180,ah,h,-12 |
| Asian over/under | <for/against>,tp,all,[sub,180,]<ahover/ahunder>,<handicap>*4 | for,tp,all,sub,180,ahover,46 |
| Correct score | <for/against>,tp,all,cs,<home_score>,<away_score> | for,tp,all,cs,0,6 |
5.3.11 Snooker, volleyball and Aussie rules
Every bet type in this family is on an entire match (tp,all).
| Sub-type | Format | Example |
|---|---|---|
| Moneyline | <for/against>,tp,all,ml,<h/a> | for,tp,all,ml,h |
| Asian handicap | <for/against>,tp,all,ah,<h/a>,<handicap>*4 | for,tp,all,ah,h,-10 |
| Asian over/under | <for/against>,tp,all,<ahover/ahunder>,<handicap>*4 | for,tp,all,ahunder,10 |
5.3.12 Matchups
Supported for golf, moto and cycling. The base structure is
<for/against>,<time_period_type>,<time_period> where <time_period_type> is tp or tperiod.
The values 1 to 5 work only with tperiod and denote the first through fifth stage or round. all
stands for the all-rounds winner and works only with tp.
| Sub-type | Format | Example |
|---|---|---|
| Moneyline | <for/against>,<time_period_type>,<time_period>,ml,<h/a> | for,tperiod,2,ml,a |
5.3.13 Multirunner
Used for competitions with an outright winner market, such as horse racing. The runner name is written out
in full and must match the name of one of the runners you published for the event.
| Sub-type | Format | Example |
|---|---|---|
| Outright winner | unparsed,multirunner,<for/against>,win,<runner_name> | unparsed,multirunner,for,win,Overly Critical |
| Top N | unparsed,multirunner,<for/against>,top,<n>,<runner_name> | unparsed,multirunner,against,top,2,Beautiful Affair |
5.3.14 Proposition
Proposition and novelty bets. The structure is <for/against>,proposition,<prop> where <prop> is a
JSON array, written in one of two shapes:
- Player props:
[<proposition>,<player_name>,<direction>,Player Props] - Team and game props:
[<proposition>,<direction>,<type>], where<type>isTeam PropsorGame Props
| Sub-type | Example |
|---|---|
| Player prop | against,proposition,["Top Australia 2nd Inns Batter","Alex Carey","Player Props"] |
| Team prop | for,proposition,["(Map 1) 1st Barracks","Gaimin Gladiators","Team Props"] |
| Game prop | against,proposition,["1st Innings Runs","125 Runs or more","Game Props"] |
5.3.15 Where bet types appear
The same bet_type string is used in three places, and must be identical in all of them for a given
selection:
- The
bet_typefield of each offer in the events response. - The
bet_typefield of offers pushed over the offers WebSocket. - The
bet_typefield of each statement returned by the bets endpoints.