Download OpenAPI specification:
The ThrillConnect API is used as the integration point between an operator's frontend and the ThrillTech platform and services. The API has been designed to support the most common use cases that operators have when integrating the ThrillTech Products with their gaming frontends and portals.
Modify CORS rules
required | Array of objects (CorsOriginDoc) |
{- "cors_origin_list": [
- {
- "pattern": "string",
- "match_mode": "string"
}
]
}
{- "cors_origin_list": [
- {
- "pattern": "string",
- "match_mode": "string"
}
]
}
Remove CORS rules
cors_origin_list required | Array of strings |
{- "cors_origin_list": [
- "string"
]
}
{- "removed": 0,
- "cors_origin_list": [
- {
- "pattern": "string",
- "match_mode": "string"
}
]
}
Subscribe a service to events regarding Jackpots, campaigns, drops and more
The process of subscribing to events works as follows:
/events/service?token=SERVICE_JWT_TOKEN
endpointOnce the service has connected to the WS, you need to subscribe to events of
interest. This subscription will depend on the type of events you are interested
in receiving, but for this example, we will subscribe to all events from the
ThrillPots
platform.
To subscribe to events, you need to send a SubscribeRequest
on the WebSocket connection:
{
"SubscribeRequest": {
"events": [{
"source": "thrillpots",
"event_type": "*"
}]
}
}
The above message will subscribe to all events from the ThrillPots platform. There is no
acknowledgement response to subscriptions, but if the subscription was successful, you should start
receiving events in due time. ThrillPots for example has a JackpotUpdate
event which is sent
every few seconds.
token required | string Service JWT token |
null
Subscribe a player to events regarding Jackpots, campaigns, drops and more
The process of subscribing to events works as follows:
/events/{operator_id}/{brand_id}?token={player_token}¤cy={player_currency}
endpoints (eg wss://THRILLCONNECT_HOST/event/thrilltech/brand1?token=player-auth-token¤cy=USD
)Once the player has connected to the WS, you need to subscribe to events of
interest. This subscription will depend on the type of events you are interested
in receiving, but for this example, we will subscribe to all events from the
ThrillPots
platform.
To subscribe to events, you need to send a SubscribeRequest
on the WebSocket connection:
{
"SubscribeRequest": {
"events": [{
"source": "thrillpots",
"event_type": "*"
}]
}
}
The above message will subscribe to all events from the ThrillPots platform. There is no
acknowledgement response to subscriptions, but if the subscription was successful, you should start
receiving events in due time. ThrillPots for example has a JackpotUpdate
event which is sent
every few seconds.
operator_id required | string The ID of the operator to authenticate against |
brand_id required | string ID of the brand to authenticate against |
token required | string Player token to use for wallet authentication |
currency required | string Player currency |
null
Retrieve the jackpot instance that is available for a specific game, brand and country
source_id required | string ID of the source to retrieve a jackpot for |
brand_id required | string ID of the brand of the source |
player_id required | string ID of the player |
country_code required | string Country of the player |
segments required | string Comma separated list of segments the player belongs to |
{- "id": "string",
- "currency": "string",
- "opt_in_required": true,
- "contribution_type": {
- "Fixed": 0.1
}, - "optin_status": {
- "instance_id": "string",
- "player_id": "string",
- "ext_player_id": "string",
- "player_brand_id": "string",
- "preferred_contribution_value": 0.1,
- "preferred_contribution_currency": "string",
- "contribution_count": 0,
- "contribution_value": 0.1,
- "pot_contributions": {
- "property1": {
- "contribution_count": 0,
- "contribution_value": 0.1
}, - "property2": {
- "contribution_count": 0,
- "contribution_value": 0.1
}
}, - "opted_in": true,
- "last_updated": 0
}, - "pots": [
- {
- "id": "string",
- "instance_count": 0,
- "is_progressive": true,
- "current_value": 0.1,
- "community_split": 0.1
}
], - "timestamp_start": 0,
- "timestamp_end": 0,
- "status": "Pending"
}
Opt-in / Opt-out for players
instance_id required | string The jackpot id for the opt-in/opt-out request |
player_id required | string (OperatorPlayerID) Represents a player's ID on an operator or aggregators system) |
brand_id required | string The brand path (operator_id:brand_id) that the player/contribution originates from |
player_country required | string The country that the player is playing from (ISO-3166-2 country code) |
opt_in required | boolean Flag indicating whether the player is opting in or out of the jackpot contributions |
contribution_value | string or null [Optional] Indicates the value of the bet the player wishes to make on each contribution |
contribution_currency | string or null [Optional] Indicates the currency of the preferred contribution value. If |
{- "instance_id": "string",
- "player_id": "string",
- "brand_id": "string",
- "player_country": "string",
- "opt_in": true,
- "contribution_value": "string",
- "contribution_currency": "string"
}
null
Retrieve sources for a specific brand.
A source represents a unique point in the player journey from where a jackpot contribution can originate from.
For example, a source could be a game code (for game-driven contributions), or 'sportsbook' or event 'deposit-flow' for non-gaming related jackpot contributions.
owner_id required | string The owner/brand ID to retrieve sources for |
name required | string An optional name filter for the source |
[- {
- "owner_id": "string",
- "source_name": "string",
- "source_id": "string",
- "jackpots": [
- {
- "priority": 0,
- "owner_id": "string",
- "instance_id": "string"
}
]
}
]
instance_id required | string The jackpot instance ID to fetch the ticker for |
{- "id": "string",
- "jackpot_type": "Jackpot",
- "currency": "string",
- "pots": [
- {
- "id": "string",
- "is_progressive": true,
- "current_value": "string",
- "community_split": "string"
}
], - "allowed_brands": [
- "string"
], - "allowed_sources": [
- "string"
], - "status": "Pending",
- "timestamp_start": 0,
- "timestamp_end": 0,
- "last_updated": 0
}