v.1.0.0
Overview
Choice Gaming provides a public API for casino platforms, enabling full integration of game launch, wallet transactions, and promotional features such as free rounds and tournaments.All communication is ** HTTPS ** and uses ** application / json ** via ** POST ** requests.
1. Game Launch
1.1 Get Launcher URL
Purpose: Retrieve an up-to-date game launch URL (handles geo-blocks and rotating hosts).
Endpoint:
POST /serviceApi.php
{
"action": "getLauncherURL",
"platform": 8,
"partnerId": 1,
"time": "29-08-2026 11:47:24",
"hash": "sha256(privateKey + time + data)",
"data": {
"gameMode": "real",
"gameId": "1",
"lang": "en",
"externalToken": "session_token",
"playerId": "operator_player_id",
"country": "GB",
"ip": "user_ip",
"exitURL": ""
}
}
Response:
{
"code": 0,
"message": "ok",
"data": {
"launcherURL": "https://stg.otkgaming.com/?partnerId=1&gameId=1&gameMode=real&lang=en&platform=8&externalToken=80bf..."
}
}
1.2 Game Details
Games can be embedded via iframe or direct launch URL using:
https://<game_provider_base_url>?<query_parameters>
| Parameter | Description | Type | Notes |
|---|---|---|---|
| partnerId | Platform partner id | number | Provided by Platform |
| gameId | Game id | number | Defined by provider |
| gameMode | Game mode | string | fun or real |
| lang | Language code | string(2) | ISO 639-1 |
| country | Country code | string(2) | ISO 3166-1 alpha-2 |
| playerId | Player identifier | string | Unique per platform |
| ip | Player IP address | string | — |
| platform | Platform identifier | number | — |
| externalToken | Player session token | string(255) | Required for real mode |
Example:
https://stg.otkgaming.com/?partnerId=1&gameId=2&gameMode=real&lang=en&platform=1&externalToken=80bf...
1.3 Demo Mode
Same as real launch, except no externalToken:
https://stg.otkgaming.com/?partnerId=1&gameId=2&gameMode=fun&lang=en&platform=1
2. Games Integration (Wallet API)
Available Methods
| Endpoint | Description |
|---|---|
/playerInfo | Get player details and balance |
/bet | Commit player bet |
/win | Commit win transaction |
/cancel | Revoke bet transaction |
/tournamentWin | Register tournament win |
/promoWin | Register promotional win |
All requests:
POST /<method>
Content-Type: application/json
2.1 /playerInfo
Request:
{"externalToken": "valid-session-token"}
Response:
{
"country":"UK",
"currency":"EUR",
"balance":10000,
"playerId":"abc123"
}
2.2 /bet
Request:
{
"externalToken":"token",
"playerId":"abc123",
"gameId":"123",
"transactionId":"124677",
"amount":10,
"currency":"EUR"
}
Response:
{
"transactionId":"abc123",
"externalTrxId":"abc123",
"balance":9000
}
2.3 /win
Request similar to /bet.
Ensures each round is finalized with a win transaction.
2.4 /cancel
Used to revoke a bet transaction.
3. Error Handling
All API responses include a numeric code and message.
Example:
{
"code":404,
"message":"Invalid Token"
}
Error codes are standardized across endpoints.
4. Extra Calls
4.1 Free Rounds
Create or manage free-round campaigns.
4.2 Free Rounds by Bet
Assign or trigger free rounds based on player bet.
4.3 Round Info
Fetch round-specific transaction data.
4.4 Round Replay Info
Retrieve round replay metadata for review.
4.5 Game List
Get the list of all available games with their identifiers.
4.6 Cancel Free Rounds
Revoke or expire existing free-round sessions.
5. Currencies
5.1 Currency List
Provides supported ISO-4217 currency codes used by Choice Gaming.
Notes
- All requests must use HTTPS.
- All calls are JSON POST.
externalTokenidentifies player sessions.- Same endpoint is used for staging and production.
© Choice Gaming — Integration API v1.0.0