Outcome Selection Key Structure¶
Outcome's selection key/selection is an identifier of outcome within event.
Structure¶
Selection key has the following format in string representation:
"[1,[2,3],[4,5],6,7,[8,9]]"
"[marketType,[marketParam1,marketParam2],[period,subperiod],resultKind,outcomeType,[outcomeParam1,outcomeParam2]]"
Note
No spaces within selection key are allowed
| Part | Description | To build from market json (paths can slightly differ depending on used model/api) |
|---|---|---|
| 1 (marketType) | It's a marketType or marketId, which is described for every sport kind. See Markets by sport | market.marketTypeThis is present for any market |
| 2,3 (marketParam1,marketParam2) | It's a market item values/parameters that depend on market type | market.marketItems.marketParametersThis can be empty, single-item or double-item array |
| 4,5 (period,subperiod) | It is a market's period and subperiod. See Markets by sport | [market.period] (if subperiod is not used)[market.period,market.subperiod] (if subperiod is used) |
| 6 (resultKind) | Type of points related to outcome. See Markets by sport | market.resultKindThis is present for any market |
| 7 (outcomeType) | outcomeId/outcomeType. See Outcomes column for specific marketType. See Markets by sport | market.marketItems.outcomes.typeThis is present for any market |
| 8,9 (outcomeParam1,outcomeParam2) | Outcome's parameters that depend on market type. | market.marketItems.outcomes.valuesThis can be empty, single-item or double-item array |
Selection keys examples¶
- Football
"[2,[],[0],1,1,[]]"- MatchResult(2) MainTime(0) Goals(1) Draw(1).- Outcome: Draw by goals in main time.
"[7,[1,1.5],[1],2,37,[]]"- TeamTotal(7) Team1/HomeTeam(1) 1.5 Half1(1) Fouls(2) OverTeam/Over(37).- Outcome: Fouls total over 1.5 for home team in first half.
"[16,[],[0],1,102,[0,3]"- CorrectScore(16) MainTime(0) Goals(1) Score_{s1}-{s2}(102) s1/Team1Score=0 s2/Team2Score=3.- Outcome: Score by goals 0-3 in main time.
"[5,[0.5],[11,15],1,4,[]]"- Total(5) 0.5 from 11-15min Goals(1) Over(4). (See notes)- Outcome: Over 0.5 goals in interval from 11th to 15th minute
- Tennis
"[160,[],[1,2],1,0,[]]"- GameWinner2Ways(160) Set1(1) 2ndGame(2) Score(1) Win1(0).- Outcome: Home player wins 2nd game of the 1st set.
- HorseRacing
"[1002,[1551616],[0],1,14,[]]"- RaceWinner(1002) HorseWithId(1551616) Event(0) Race(1) Yes(14).- Outcome: Horse with id=1551616 wins the race.
Markets examples with selection key for outcomes¶
{
"message": {
"key": {
"eventId": "12550185",
"resultKind": 1,
"marketType": 1,
"period": 1,
"subPeriod": 0,
"layout": null,
"dataVersion": 1
},
"marketItems": [
{
"values": [],
"isOpen": true,
"outcomes": [
{
"outcomeType": 0,
"outcomeValues": [],
"price": 3.33,
"status": 1,
"lineItemId": "a4e8e400b295456484038a21715c9e8f",
"selectionKey": "[1,[],[1],1,0,[]]",
"dataVersion": 2
},
{
"outcomeType": 3,
"outcomeValues": [],
"price": 1.3,
"status": 1,
"lineItemId": "a4e8e400b295456484038a21715c9e8f",
"selectionKey": "[1,[],[1],1,3,[]]",
"dataVersion": 2
}
],
"isRemoved": false,
"oddsMultipliers": null
}
],
"status": 1,
"stage": 2,
"parlaySize": 0,
"dataVersion": 1,
"sourceDataVersion": 2747,
"timestamp": "2025-01-19T00:44:14.71094Z",
"sourceTimestamp": "2025-01-19T00:44:13.979Z",
"sport": "Football",
"metadataSport": 0,
"isFrozen": false,
"visibility": null
}
}
Total:
{
"message": {
"key": {
"eventId": "12550185",
"resultKind": 4,
"marketType": 5,
"period": 0,
"subPeriod": null,
"layout": null,
"dataVersion": 957
},
"marketItems": [
{
"values": [
"6.5"
],
"isOpen": true,
"outcomes": [
{
"outcomeType": 4,
"outcomeValues": [],
"price": 1.35,
"status": 1,
"lineItemId": "f703f0873f03492f8a692cc17e1e2f53",
"selectionKey": "[5,[6.5],[0],4,4,[]]",
"dataVersion": 2
},
{
"outcomeType": 5,
"outcomeValues": [],
"price": 3,
"status": 1,
"lineItemId": "f703f0873f03492f8a692cc17e1e2f53",
"selectionKey": "[5,[6.5],[0],4,5,[]]",
"dataVersion": 2
}
],
"isRemoved": false,
"oddsMultipliers": {}
},
{
"values": [
"7.5"
],
"isOpen": true,
"outcomes": [
{
"outcomeType": 4,
"outcomeValues": [],
"price": 2.35,
"status": 1,
"lineItemId": "f703f0873f03492f8a692cc17e1e2f53",
"selectionKey": "[5,[7.5],[0],4,4,[]]",
"dataVersion": 2
},
{
"outcomeType": 5,
"outcomeValues": [],
"price": 1.53,
"status": 1,
"lineItemId": "f703f0873f03492f8a692cc17e1e2f53",
"selectionKey": "[5,[7.5],[0],4,5,[]]",
"dataVersion": 2
}
],
"isRemoved": false,
"oddsMultipliers": {}
},
{
"values": [
"8.5"
],
"isOpen": true,
"outcomes": [
{
"outcomeType": 4,
"outcomeValues": [],
"price": 5,
"status": 1,
"lineItemId": "f703f0873f03492f8a692cc17e1e2f53",
"selectionKey": "[5,[8.5],[0],4,4,[]]",
"dataVersion": 2
},
{
"outcomeType": 5,
"outcomeValues": [],
"price": 1.15,
"status": 1,
"lineItemId": "f703f0873f03492f8a692cc17e1e2f53",
"selectionKey": "[5,[8.5],[0],4,5,[]]",
"dataVersion": 2
}
],
"isRemoved": false,
"oddsMultipliers": {}
}
],
"status": 1,
"stage": 2,
"parlaySize": 0,
"dataVersion": 957,
"sourceDataVersion": 2770,
"timestamp": "2025-01-19T00:45:53.6136608Z",
"sourceTimestamp": "2025-01-19T00:45:52.729Z",
"sport": "Football",
"metadataSport": 0,
"isFrozen": false,
"visibility": {
"default": true
}
}
}
Correct score:
{
"message": {
"key": {
"eventId": "12690125",
"resultKind": 1,
"marketType": 16,
"period": 0,
"subPeriod": null,
"layout": null,
"dataVersion": 856
},
"marketItems": [
{
"values": [],
"isOpen": true,
"outcomes": [
{
"outcomeType": 102,
"outcomeValues": [
"0",
"3"
],
"price": 1.4,
"status": 1,
"lineItemId": "d6f2ac92dc1d4bbd8c163cac96ad63e6",
"selectionKey": "[16,[],[0],1,102,[0,3]]",
"dataVersion": 4
}
],
"isRemoved": false,
"oddsMultipliers": {}
}
],
"status": 1,
"stage": 2,
"parlaySize": 0,
"dataVersion": 856,
"sourceDataVersion": 874,
"timestamp": "2025-01-23T13:50:43.0962633Z",
"sourceTimestamp": "2025-01-23T13:50:42.54Z",
"sport": "Football",
"metadataSport": 0,
"isFrozen": false,
"visibility": {
"default": true
},
"isTombstoned": false
}
}