Revision History

Version Date Changes

1.0.0

22 March 2023

Initial version

1.0.1

11 April 2023

Added casinoId to getGames and gameLaunch requests. Removed clientId and currency from gameLaunch body parameters.

1.0.2

09 May 2023

Added NonUniqueGameRound error and validation for game round uniqueness.

1.0.3

11 May 2023

Added free spins bonus support.

1.0.4

26 September 2023

Extended response for retrieving a list of games with the "currencies" parameter.

1.0.5

29 September 2023

Launching game via provider’s in-game lobby.

1.0.6

22 January 2024

Added invalid amount exception and validation for amount

1.0.7

04 April 2024

Production callback url changed

2.0.0

04 October 2024

Added required parameter gameId to getBalance and bet requests. Callback url version upgrade.

2.0.1

03 December 2024

Added required parameter gameId to login method

2.0.2

30 June 2025

Extended API to support aggregators with subproviders

2.0.3

20 October 2025

Extended API to support canceling free spins instance

2.0.4

23 February 2026

Improved API documentation with additional explanations and clarifications

Description

This document is intended to provide a Game Provider (GP) with the necessary information to support a seamless integration with ATLASLIVE Platform (AP). To integrate game communication flow, a Game Provider has to implement the ATLASLIVE Casino Integration API.

This API is a service contract with a collection of REST calls with request and response messages. The format and details of the messages are described below in this document.

Integration setup

ATLASLIVE integration team should provide:
  • provider_id that is used in the callback URL — a single lowercase word uniquely identifying the provider

  • secret_key for validation requests

  • test client_id and password for obtaining token and testing endpoints

  • login credentials for testing games on site

Game provider’s integration team should provide:
  • URL for retrieving games and games configurations

  • launch URL that will return a direct link to the running game

  • username and password to authenticate ATLASLIVE Platform (AP) requests to the Game Provider (GP) backend

  • list of subprovider IDs in case the Game Provider (GP) works as an aggregator and provides games from its subproviders."

Integration callback URL

Environment Callback URL Description

Stage

https://integration.pl-test.play-platform.com/integration-callback/gs/hive/v2/{provider_id}

Environment for integration development

Production

https://integration.pl-01.play-platform.com/integration-callback/gs/hive/v2/{provider_id}

Production environment


Callback url v2
When switching to a new callback URL, https://integration.pl-test.play-platform.com/integration-callback/gs/hive/v2/{provider_id}, the gameId parameter should be added to the request payloads when retrieving client balance and placing bets. The Atlas game session stores a token that is created for a specific game and specific client. In the new version, Atlas includes an additional check to verify that the gameId from the request matches the gameId for which the token was created. If there is a mismatch, error 7012 will be returned. See Error codes section.
Previous version of callback URL v1: https://integration.pl-test.play-platform.com/integration-callback/gs/hive/v1/{provider_id} will not be supported soon.

Interaction flow

Client interaction with the ATLASLIVE Platform (AP) web:
  • loading site with games

  • initiate game launch

ATLASLIVE Platform interaction with Game Provider (GP) Platform:
  • generate a session for the user

  • requesting GP game launch URL with all required parameters for running the game

Game provider interaction with AP:
  • obtaining a session token

  • requesting client balance

  • return link for game launch

Client interaction with the GP game iframe:
  • make bet

Game provider interaction with AP:
  • initiate a bet request to AP service

  • receive a successful response

  • update client balance in game iframe with new balance from response

Integration notes

Request and response formats

Request and response messages are sent in JSON format using the HTTPS protocol.
All requests contain the header Content-Type: application/json.
All requests should be passed to the AP with the header Hash with calculated hash value.
All responses are passed along with a 200 HTTP status code, regardless of the response’s content.
Requests to Game Provider are passed via the HTTP POST method with basic authentication. An authorization token based on the operator’s username and password will be sent in the “Authorization” header. All field names in requests are case-sensitive.

Error codes

If an error occurs, ATLASLIVE Platform and Game Provider should return a 200 HTTP status code.
Error response has the following format:

{
    "error": "Session validation failed",
    "errorCode": 7001
}
There is a list of business errors that should be implemented on the Game Provider side:
Error code Error message

4001

Hash validation failed

4003

Method not allowed

4005

Required header 'Hash' is not present

4006

Invalid hash format

4007

Invalid amount format

5001

Internal error

7001

Session validation failed

7002

Provider not configured

7003

Currency mismatch exception

7004

Game round wasn’t previously created

7005

Transaction had already processed

7006

Bet transaction not found

7007

Insufficient funds

7008

Transaction already refunded

7009

Game round id is not unique

7010

Client id is missing in request

7011

Game not available

7012

Game id from request doesn’t match game id from session

7015

Game launch error

7016

Register free spins error

7017

Assign free spins error

If an error occurs while processing WIN or REFUND actions and our server responds with 5001 or 5xx statuses, the request should be retried.

Security checks

All requests should be passed to the ATLASLIVE Platform (AP) with the header Hash with calculated hash value.
Hash parameter is used to validate the sender’s identity and prevent data modification in transit.
It is calculated based on the parameters in a request message. Hash validation is case-insensitive and parameters order insensitive.

Hash calculation:
  1. Compose the string from request body parameters:

  2. Calculate HmacSHA512 checksum using the shared secret api key and convert it as a hex-encoded string.

  3. Include this hash into the outbound requests as the Hash header.

Request example:
{
    "token":  "test-P0dXo2je61enukvS6dscWs7kaJjQnB5F",
    "amount" : 10,
    "transactionId" : "unique-transaction-id",
    "currency" : "EUR",
    "roundId": "unique-round-id"
}
Secret key example:
53943f35-9756-4b9d-8025-51e835ab8170
Composed string for hashing:
{"token":"test-P0dXo2je61enukvS6dscWs7kaJjQnB5F","amount":10,"transactionId":"unique-transaction-id","currency":"EUR","roundId":"unique-round-id"}
Calculated HmacSHA512 hash based on secret key and composed string above:
622D614B4479E8EC2309666439D162265106697E8D668FF6321A5BB138C335EE6664460CA519B01F5BD2A979A60816E740D419A5F46ED871A9B05059788451B5

Wallet operations

Get client balance

This method returns a current balance of the player. Client balance must be requested by GP while client initiates game start , and it should be shown in the game iframe.
Client balance can be requested periodically if necessary for synchronization. But no need to request it before each bet. On receiving a bet request client balance will be validated by AP.
We use integer type representing of a balance amount (in cents), i.e 1 USD or 1 EUR has 100 coins.
If token from wallet request is expired, session validation exception will be returned. See Error codes section.

List of request body parameters:
Name Type Description

token

String

Unique session id of the player that is sent by AP in game launch request

gameId

String

Unique game id within the Game Provider platform. Required for callback url v2.

Request example:
POST {callback_url}/wallet HTTP/1.1
Content-Type: application/json;
Hash: 9490E4A06F0E6ECECA6F884933085655C5F6ADCFA8909A181C18211883B6A40DCCD48441F807B6CFFE16916D36751D520714EB37D6BCF655CC2ADBEC80768B09

{
  "token" : "test-P0dXo2je61enukvS6dscWs7kaJjQnB5F",
  "gameId": "777magic"}
Response example:
HTTP/1.1 200 OK
Content-Type: application/json

{
 "currency": "USD",
 "balance": 99999,
 "clientId": "43-4312345",
}

Bet

This method withdraws the amount from the player’s wallet. After receiving bet request player’s balance will be checked to ensure they still have the funds to cover the bet. Then the amount of the bet will be subtracted from player balance. Otherwise, insufficient funds exception will be returned. See Error codes section.
Every bet should have a unique transaction id. Every bet should be placed within a specific game round. Game round created for the client and should be unique within Game Provider system. It is possible to place a few bet for one game round.
The currency must be the same as in the request that initiates the start of the game. If token from bet request is expired, player balance will not be subtracted.

List of request body parameters:
Name Type Description

token

String

Unique session id of the player that is sent by AP in game launch request

roundId

String(150)

Unique game round id within Game Provider system. Limit 150 symbols.

amount

Integer

Amount of the bet (in cents).

transactionId

String(150)

Unique reference of bet transaction within Game Provider system. Limit 150 symbols.

currency

String

Player’s ISO 4217 currency code. Examples: 'EUR' or 'USD'

bonusInstanceId

String

Unique bonus instance identifier for the specific clientId.

gameId

String

Unique game id within the Game Provider platform. Required for callback url v2.

bonusInstanceId is optional parameter. If the spin is made within the free spin round, the bet request must contain this parameter. Free spins bonus should be previously registered within game provider system and assigned to the player. The value of bonusInstanceId in bet request is the same value as bonusInstanceId from assigning bonus request.
Request example:
POST {callback_url}/bet:place HTTP/1.1
Content-Type: application/json;
Hash: 2DA0178B4E2312B0366A5498048C718105360A0907DDF406A3A72639461595A1A7C4ABC5E9D6648ED512A9061A2F4CEB69E7000ABDEF8A6035311DC203D92D39

{
 "token": "test-jYPq0ViUriiubZdha5cJBeVwvRK4rktb",
 "roundId": "4d206dd2-2d15-4f03",
 "amount": 100,
 "transactionId": "316b6958-b746",
 "currency": "USD",
 "gameId": "777magic"
}
Response example:
HTTP/1.1 200 OK
Content-Type: application/json

{
 "currency": "USD",
 "balance": 99999,
 "clientId": "43-4312345",
}

Win

This method deposits the amount to the player’s wallet. Win amount will be added to the client balance even if the session token is expired. It is possible to have a few win for one game round.
Every win request should have a unique transaction id.
Every win should be sent within a specific game round that was previously created for client during bet request. Otherwise, game round not found exception will bet returned. If an error occurs while processing win request and our server responds with 5001 or 5xx statuses, the request should be retried. All other errors are perceived as expected. See Error codes section.

List of request body parameters:
Name Type Description

token

String

Unique session id of the player that is sent by AP in game launch request

clientId

String

Identifier of the user within ATLASLIVE platform that is sent by AP in game launch request and wallet request.

roundId

String(150)

Unique game round id within Game Provider system. Limit 150 symbols.

amount

Integer

Amount of the win (in cents).

transactionId

String(150)

Unique reference of win transaction within Game Provider system. Limit 150 symbols.

Request example:
POST {callback_url}/bet:win HTTP/1.1
Content-Type: application/json;
Hash: DEDA49A5FD3EFE00073E2452C7BAADB18FECE45B66B363E080AAC3E3F8DF6EAC8B869DA934F2D90DAFFE6A3E42B86D89B294EB753003F9360A1CD11B750099A5

{
 "token": "test-jYPq0ViUriiubZdha5cJBeVwvRK4rktb",
 "clientId": "43-12345",
 "roundId": "4d206dd2-2d15-4f03",
 "amount": 100,
 "transactionId": "dc5fbe6f-abb0",
}
Response example:
HTTP/1.1 200 OK
Content-Type: application/json

{
 "currency": "USD",
 "balance": 99999,
 "clientId": "43-4312345",
}

Refund

This method should be used to refund a bet amount to the client balance. To refund some bet transaction it should be previously processed on casino operator system. Bet transaction can be refunded just once.

Refund should be used in following cases:

  • if in-game error has been happened and user won’t be able to receive game round result.

  • if user manually cancel the bet in game iframe (for games that have this option)

  • if response for a bet request wasn’t received due to a timeout.

If the bet transaction was successfully completed on AP side, it will be refunded, otherwise an error 7006 "Bet transaction not found" will be returned.
If an error occurs while processing refund request and our server responds with 5001 or 5xx statuses, the request should be retried. All other errors are perceived as expected. See Error codes section.

List of request body parameters:
Name Type Description

token

String

Unique session id of the player that is sent by AP in game launch request

clientId

String

Identifier of the user within ATLASLIVE platform that is sent by AP in game launch request and wallet request.

roundId

String(150)

Unique game round id within Game Provider system. Limit 150 symbols.

amount

Integer

Amount of the win (in cents).

transactionId

String(150)

Unique reference of refund transaction within Game Provider system. Limit 150 symbols.

refundTransactionId

String(150)

Reference to the original bet transaction that should be refunded. Limit 150 symbols.

Request example:
POST {callback_url}/bet:refund HTTP/1.1
Content-Type: application/json;
Hash: 35E4697AD42E9788D92B67F21FCE9FFA20E209AB3F389A061CE317FF0A74561560EF2F79CD067373DEF99F00AA12C59E083BE8418B661E180FE02C3B0F1BCA8C

{
 "token": "test-jYPq0ViUriiubZdha5cJBeVwvRK4rktb",
 "clientId": "43-12345",
 "roundId": "4d206dd2-2d15-4f03",
 "amount": 100,
 "transactionId": "913b6908-c948",
 "refundTransactionId": "316b6958-b746",
}
Response example:
HTTP/1.1 200 OK
Content-Type: application/json

{
 "currency": "USD",
 "balance": 99999,
 "clientId": "43-4312345",
}

Authenticate

This method is used by those providers who have an in-game lobby. When the player switches to another game through this lobby, a new token is created for the selected game and all following wallet requests within that game must use the new token.
Each call to /lobby:authenticate invalidates the previous token and returns a new one linked to the specified gameId. Therefore, for each subsequent lobby switch, oldToken must be the newToken received from the most recent /lobby:authenticate response — not the original game launch token. Using an already-invalidated token will result in error 7001 (Session validation failed). See Error codes section.
All games that are available in the lobby should have been previously added and configured on the ATLASLIVE platform. Otherwise, the response will contain a "Game not available" exception. See Error codes section.

List of request body parameters:
Name Type Description

oldToken

String

The currently active session token. On the first lobby switch this is the token received from the initial game launch. On each subsequent switch it must be the newToken returned by the previous /lobby:authenticate call.

gameId

String

Unique game id within the Game Provider platform.

Request example:
POST {callback_url}/lobby:authenticate HTTP/1.1
Content-Type: application/json;
Hash: 35E4697AD42E9788D92B67F21FCE9FFA20E209AB3F389A061CE317FF0A74561560EF2F79CD067373DEF99F00AA12C59E083BE8418B661E180FE02C3B0F1BCA8C

{
 "oldToken": "test-jYPq0ViUriiubZdha5cJBeVwvRK4rktb",
 "gameId": "777magic"
}
Response example:
HTTP/1.1 200 OK
Content-Type: application/json

{
 "newToken": "test-VJ1wXX95omY9RHASO2w8lJDTeA8UwN6W",
 "currency": "USD",
 "balance": 99999
}
Lobby switch flow example:

Step 1 — AP launches game-A and provides the initial token to the Game Provider:

POST {provider_base_url}/gameLaunch HTTP/1.1
Content-Type: application/json;
Authorization: Basic YXRsYXNfaWFjOnBhc3N3b3JkMTI=

{
 "gameId": "777magic",
 "demo": false,
 "isMobile": false,
 "token": "test-tRV2UjWHh1UFUOhQiZXpSwPD4f1N8y1N",
 "casinoId": "nashbet",
 "language": "en",
 "cashierUrl": "https://nashbet.test.k8s-hz.atlas-iac.com/account/payment/deposit",
 "lobbyUrl": "https://nashbet.test.k8s-hz.atlas-iac.com/casino"
}
HTTP/1.1 200 OK
Content-Type: application/json

{
 "url": "https://game-launch-link"
}

Step 2 — Player switches to game-B via lobby. oldToken is the initial game launch token:

POST {callback_url}/lobby:authenticate HTTP/1.1
Content-Type: application/json;
Hash: 35E4697AD42E9788D92B67F21FCE9FFA20E209AB3F389A061CE317FF0A74561560EF2F79CD067373DEF99F00AA12C59E083BE8418B661E180FE02C3B0F1BCA8C

{
 "oldToken": "test-tRV2UjWHh1UFUOhQiZXpSwPD4f1N8y1N",
 "gameId": "roulette"
}
HTTP/1.1 200 OK
Content-Type: application/json

{
 "newToken": "test-VJ1wXX95omY9RHASO2w8lJDTeA8UwN6W",
 "currency": "USD",
 "balance": 99999
}

test-tRV2UjWHh1UFUOhQiZXpSwPD4f1N8y1N is now invalidated. All wallet requests for game-B must use test-VJ1wXX95omY9RHASO2w8lJDTeA8UwN6W.

Step 3 — Player switches to game-C via lobby. oldToken must be the newToken from Step 2:

POST {callback_url}/lobby:authenticate HTTP/1.1
Content-Type: application/json;
Hash: 9490E4A06F0E6ECECA6F884933085655C5F6ADCFA8909A181C18211883B6A40DCCD48441F807B6CFFE16916D36751D520714EB37D6BCF655CC2ADBEC80768B09

{
 "oldToken": "test-VJ1wXX95omY9RHASO2w8lJDTeA8UwN6W",
 "gameId": "777magic"
}
HTTP/1.1 200 OK
Content-Type: application/json

{
 "newToken": "test-QIJCEsOVGEUHe5D0WKnvbHEjpkLut8rH",
 "currency": "USD",
 "balance": 99999
}

test-VJ1wXX95omY9RHASO2w8lJDTeA8UwN6W is now invalidated. All wallet requests for game-C must use test-QIJCEsOVGEUHe5D0WKnvbHEjpkLut8rH.

Error 7001 (Session validation failed) is returned when oldToken is expired or has already been invalidated by a previous /lobby:authenticate call. Always use the most recently issued token as oldToken for the next switch.

Retrieving list of games

Using this method AP is able to get the list of casino games available for the integration. Get games request is sent with Basic authentication. In Basic HTTP authentication requests contain a header Authorization and token value in following format: "Basic {token}" where token is the Base64-encoded username and password joined by a single colon ":".

For example atlas:password123 base64 encoded YXRsYXM6cGFzc3dvcmQxMjM=
Get games request will be sent with header:
Authorization: Basic YXRsYXM6cGFzc3dvcmQxMjM=

Username, password for authorization and provider_base_url are provided by GP. All game parameters in response are required to configure game correctly for running on AP site.

List of request parameters:
Name Type Required Description

casinoId

String

Optional

Casino project identifier.

subProviderId

String

Optional

Identifier of subprovider, should be previously provided by Game Provider and be unique within the Game Provider platform.

casinoId is optional and is not sent to the Game Provider by default. In case Game Provider needs this parameter to be sent with request they should ask for the additional configuration.
For the stage environment casinoId: atlas-test
subProviderId is optional and is sent to the Game Provider if it works as an aggregator and a list of subprovider IDs was configured during the initial stage of the integration process. If subProviderId is sent, the Atlas platform is expected to receive only the games of this specific subprovider.
Request example:
GET {provider_base_url}/getGames?casinoId=atlas-test HTTP/1.1
Content-Type: application/json;
Authorization: Basic YXRsYXNfaWFjOnBhc3N3b3JkMTI=
Response example:
HTTP/1.1 200 OK
Content-Type: application/json

{
 "gameList":
    [
       {
           "gameId": "777magic",
           "gameName": "777 magic slots",
           "gameTypeId": "slots",
           "demoGameAvailable": true,
           "jackpotAvailable": true,
           "freeSpinAvailable": true,
           "isDesktop": true,
           "isMobile": true,
           "currencies": ["EUR", "USD"]
       },
       {
           "gameId": "roulette",
           "gameName": "American Roulette",
           "gameTypeId": "live",
           "demoGameAvailable": true,
           "jackpotAvailable": false,
           "freeSpinAvailable": false,
           "isDesktop": true,
           "isMobile": true,
           "currencies": ["EUR", "USD"]
       }
    ]
}
List of game parameters:
Name Type Description

gameId

String

Unique game id within the Game Provider platform

gameName

String

Name of the game

gameTypeId

String

Type of the game

subProviderId

String

Identifier of subprovider, should be unique within the Game Provider platform. It is required if subProviderId was sent in the request.

demoGameAvailable

Boolean

Is the game supported demo-mode.

jackpotAvailable

Boolean

Is game supported jackpot

freeSpinAvailable

Boolean

Is game supported free spin bonus.

isMobile

Boolean

Is game available for mobile devices.

isDesktop

Boolean

Is game available for desktop.

currencies

List

List of currencies that are supported by the game. Optional parameter.

Game launching

Using this method, AP is able to get the link for launching the game. A launch request is sent with Basic authentication. See example in Retrieving list of games section. Username, password for authorization, and provider_base_url are provided by GP.

The game can be launched in demo mode or in real mode. When game launching is initiated with the parameter "demo":true, fake balance amount should be displayed in the game iframe, and ATLASLIVE Platform doesn’t expect any callback requests for bet and win actions.

List of request body parameters:
Name Type Description

gameId

String

Unique game id within the Game Provider platform.

demo

Boolean

Is the game launching in demo mode.

isMobile

Boolean

Is game launching on mobile device.

token

String

Unique game session id of the player. Should be ignored if "demo": true.

casinoId

String

Casino project identifier.

language

String

Player language in ISO 639-1 standard (en, fr, it).

cashierUrl

String

An encoded URL for opening the AP website Cashier page

lobbyUrl

String

An encoded URL for opening the AP website Lobby page

We keep one token for a specific game and a specific client. When the client initiates a game launch a few times for the same game, we return the existing session token and don’t create a new one.
casinoId is optional and is not sent to the Game Provider by default. In case Game Provider needs this parameter to be sent with a request, they should ask for the additional configuration.
For the stage environment casinoId: atlas-test
Request example:
POST {provider_base_url}/gameLaunch HTTP/1.1
Content-Type: application/json;
Authorization: Basic YXRsYXNfaWFjOnBhc3N3b3JkMTI=

{
    "gameId": "777magic",
    "demo": false,
    "isMobile": false,
    "token": "test-tRV2UjWHh1UFUOhQiZXpSwPD4f1N8y1N",
    "casinoId" : "nashbet",
    "language": "en",
    "cashierUrl": "https://nashbet.test.k8s-hz.atlas-iac.com/account/payment/deposit",
    "lobbyUrl": "https://nashbet.test.k8s-hz.atlas-iac.com/casino"
}
Success response example:
HTTP/1.1 200 OK
Content-Type: application/json

{
 "url": "https://game-launch-link"
}
Error response example:
HTTP/1.1 200 OK
Content-Type: application/json

{
 "errorCode": 7015,
 "error": "Game isn’t active"
}

FreeSpins bonus API

FreeSpins bonus allows the player to play a specified number of free rounds in a game. It is configured with a certain bet value specified for each game and currency. During free round’s game play, bets are not deducted from the player’s balance. The winnings in these rounds are credited to the player in the usual way.

FreeSpins bonus interaction steps:
  • Casino operator creates free spins bonus campaign within ATLASLIVE Platform.

  • ATLASLIVE Platform sends register a free spins bonus request to the Game Provider system.

  • Game Provider creates a free spin bonus for specified game on their side.

  • Player activates a free spin bonus.

  • ATLASLIVE Platform sends to the Game Provider system request for assigning free spins bonus to the player.

  • Player initiates game launch.

  • Game provider should return a link that will run the game with a free spin bonus feature.

In the following two requests casinoId is optional and is not sent to the Game Provider by default. In case Game Provider needs this parameter to be sent with request they should ask for the additional configuration. For the stage environment casinoId: atlas-test.

Register free spin bonus

Using this method ATLASLIVE Platform registers a new FreeSpins Bonus within the Game Provider system. BonusId is a unique identifier. The Game Provider should not create new FreeSpins bonus if there is an active FreeSpins bonus with the same bonusId.

List of request body parameters:
Name Type Description

gameId

String

Unique game id within the Game Provider platform.

bonusId

String

Unique bonus identifier within the ATLASLIVE platform.

casinoId

String

Casino project identifier.

spinsCount

Integer

Number of free rounds

betValues

Map

List of bet amounts with the currencies

startDate

Long

Date and time when the bonus will start, timestamp in seconds.

expirationDate

Long

Date and time when the bonus will expire or until it is valid, timestamp in seconds.

Request example:
POST {provider_base_url}/registerBonus HTTP/1.1
Content-Type: application/json;
Authorization: Basic YXRsYXNfaWFjOnBhc3N3b3JkMTI=

{
    "gameId": "777magic",
    "bonusId": "8900-765432",
    "casinoId" : "nashbet",
    "spinsCount": 10,
    "betValues": {
        "EUR": 200,
        "USD": 180
    },
    "startDate": 1685577600,
    "expirationDate": 1687219200
}
Success response example:
HTTP/1.1 200 OK
Content-Type: application/json
Error response example:
HTTP/1.1 200 OK
Content-Type: application/json

{
 "errorCode": 7016,
 "error": "Free spins are not available for this game"
}

Assign free spin bonus to the client

Using this method ATLASLIVE Platform can add one player to the existing FreeSpins Bonus.

List of request body parameters:
Name Type Description

bonusId

String

Unique bonus identifier within the ATLASLIVE platform.

bonusInstanceId

String

Unique bonus instance identifier for the specific clientId.

casinoId

String

Casino project identifier.

clientId

String

Identifier of the user within ATLASLIVE platform that is sent by AP in game launch request and wallet request.

currency

String

Player’s ISO 4217 currency code. Examples: 'EUR' or 'USD'

Request example:
POST {provider_base_url}/assignBonus HTTP/1.1
Content-Type: application/json;
Authorization: Basic YXRsYXNfaWFjOnBhc3N3b3JkMTI=

{
    "bonusId": "8900-765432",
    "bonusInstanceId": "876557",
    "casinoId" : "nashbet",
    "clientId": "43-4312345",
    "currency": "EUR"
}
Success response example:
HTTP/1.1 200 OK
Content-Type: application/json
Error response example:
HTTP/1.1 200 OK
Content-Type: application/json

{
 "errorCode": 7017,
 "error": "BonusId not found"
}

Cancel client free spin bonus

Using this method the ATLASLIVE Platform can cancel an existing FreeSpins Bonus instance previously assigned to a player.

List of request body parameters:
Name Type Description

casinoId

String

Casino project identifier.

bonusId

String

Unique bonus identifier within the ATLASLIVE platform.

bonusInstanceId

String

Unique bonus instance identifier for the specific player to be canceled.

clientId

String

Identifier of the user within the ATLASLIVE platform that is sent by AP in game launch and wallet requests.

currency

String

Player’s ISO 4217 currency code. Examples: 'EUR' or 'USD'.

Request example:
POST {provider_base_url}/cancelBonus HTTP/1.1
Content-Type: application/json;
Authorization: Basic YXRsYXNfaWFjOnBhc3N3b3JkMTI=

{
    "bonusId": "8900-765432",
    "bonusInstanceId": "876557",
    "casinoId": "nashbet",
    "clientId": "43-4312345",
    "currency": "EUR"
}
Success response example:
HTTP/1.1 200 OK
Content-Type: application/json

{}
Error response example:
HTTP/1.1 200 OK
Content-Type: application/json

{
 "errorCode": 7018,
 "error": "BonusInstanceId not found"
}

Obtaining token for API testing

This method should be used for API testing during integration development. Using this method, you are able to obtain a test token skipping creating session via game launch. Method is available only for the test environment. Client id and password will be provided by the Casino Operator.

List of request body parameters:
Name Type Description

clientId

String

Identifier of the user within the Casino Operator’s system.

password

String

Client password.

gameId

String

Unique game id within the Game Provider platform. Token will be created for this particular game.

Request example:
POST https://game-services-test.k8s-hz.atlas-iac.com/integration-callback/gs/hive/v2/{provider_id}/client:login HTTP/1.1 Content-Type: application/json; Hash: DF4773DA8A41DE35167640236AF9A5C4A5EA75A76BFDFAFD9CA00DD002776ECA0896726BF0F1E46D548D08CF795B11DCBD03D7BEEDDEC7520C338437D18B5FC3

{
    "clientId": "1-981242882",
    "password": "kiJS3trfF9L",
    "gameId": "777magic"
}
Response example:
HTTP/1.1 200 OK Content-Type: application/json
{
    "token": "test-QIJCEsOVGEUHe5D0WKnvbHEjpkLut8rH"
}