Game List Transfer
Overview
The list of games must be submitted for each account. To exclude some games from the list of available games, you must transfer the entire list of games except for games that require disconnection on the website working with this account.
POST /open-api-games/v1/games
Parameters
Request:
| Name | Type | Description |
|---|---|---|
contentProviderId | string | A unique id of the game provider. |
accountId | string | A unique id for the account. If 0 is given, then the account will be created, and its id will be passed in the response. An account is a set of games provided for a specific commission for a specific set of countries and currencies. Different accounts may contain the same games. |
clientId | string | Client id. |
games.id | string | A unique game id. Passed in query parameters of the iframe link. Cannot be greater than or equal to 60 characters a unique game id. Maximum length: 60 characters |
games.launchMethod.capabilities | []string | A list of supported game formats. Available values: dc_html5full, dc_flashplayer |
games.launchMethod.devices | []string | A list of supported device types. Available values: dt_desktop, dt_mobile |
games.launchMethod.screen_width | int | Screen width |
games.launchMethod.screen_height | int | Screen height |
games.launchMethod.gameEmbedUrl | string | [Optional field] A link to call the game. A link is inserted into the iframe on the platform site if it is a desktop. A link opens directly if using a mobile device. Check table “Placeholders” for templates which can be used in the link. |
games.defaultName | string | Game name. Displayed in the list of games. |
games.defaultDescription | string | Game description. Displayed in the list of games. |
games.icons | object | A list of links to icons in different resolutions. Each of the permissions is required. Links must end with a picture extension. Allowed extensions: jpeg, jpg, png |
games.icons.link500x500 | string | Icon link with dimensions 500x500 |
games.icons.link300x300 | string | Icon link with dimensions 300x300 |
games.icons.link300x188 | string | Icon link with dimensions 300x188 |
games.icons.link40x40 | string | Icon link with dimensions 40x40 |
games.gameType | string | Game type: SPIN, BET. The BET category includes games in which you can cancel a bet before the start of its drawing. |
games.hasInternalBonuses | boolean | The game has additional internal bonuses: cumulative bonuses based on the number of spins or funds spent in the game. For example, jackpots.Game type: SPIN, BET. The BET category includes games in which you can cancel a bet before the start of its drawing. |
games.tags | []string | List of game tags |
games.decodedSymbols | object | [Optional field] Decoding of codes on the game reel. The key is an integer. |
games.spinDescription | map<string, spinDescription> | [Optional field] Spins description |
games.spinDescription.spinDescription | object | Spins description ( only for spin games ) |
games.spinDescription.spinDescription.lines | list | Available lines |
games.spinDescription.spinDescription.bets | list | Bets steps |
games.spinDescription.spinDescription.free_spins | object | Free spins description |
games.spinDescription.spinDescription.free_spins.enabled | boolean | Are free spins enabled ? |
games.spinDescription.spinDescription.free_spins.lines | list | Available lines |
games.spinDescription.spinDescription.free_spins.bets | list | Bets steps |
games.spinDescription.spinDescription.free_spins.multipliers | list | Multipliers |
games.betDescription | map<string, betDescription> | [Optional field] Bets description |
games.betDescription.betDescription | object | Bets description ( only for bets games ) |
games.betDescription.betDescription.bets | list | Bets steps |
games.betDescription.betDescription.free_bets | object | Free bets description |
games.betDescription.betDescription.free_bets.enabled | boolean | Are free spins enabled ? |
games.betDescription.betDescription.free_bets.bets | list | Free bets steps |
games.betDescription.betDescription.free_bets.multipliers | list | Multipliers |
games.inactive | boolean | Active/Inactive |
games.disableForFun | boolean | Is Demo disabled |
games.freeGames | object | [Optional field] Free games info |
games.freeGames.possibleBets | list | List of possible bets |
games.freeGames.possibleLines | list | List of possible lines |
Placeholders:
| Name | Description |
|---|---|
GAME_SESSION | Unique id of the game session of a specified user. |
CURRENCY_NAME | ISO currency code. |
GAME_ID | Game ID passed by the provider. |
USER_LANGUAGE | Language of a player. |
USER_ID | Unique user id. |
HOME_URL | Link to the lobby platform. |
REFILL_URL | Link to the platform replenishment. |
ACCOUNT_ID | Account id, where the game is launched. |
Response:
| Name | Type | Description |
|---|---|---|
isSuccess | boolean | Is success? |
errorMessage | string | Text description of the error. Empty string if isSuccess == true. |
error | string | Error code, see “Errors” table |
Errors:
| Name | Description |
|---|---|
NO_ERROR | No error |
SIGN_NOT_FOUND | No signed header was sent. |
INVALID_SIGN | Invalid signature. |
INVALID_BODY | Invalid request body. |
UNKNOWN_ACCOUNT | Unknown account. |
INTERNAL_ERROR | Internal error of the account management service. |
Example
Request:
{
"contentProviderId": "1ef438b4-9b66-412e-bad0-b61e2b38b8fa",
"accountId": 1,
"games": [
{
"id": "sample-game-id",
"launchMethod": [
{
"capabilities": [
'dc_html5full'
],
"devices": [
'dt_mobile',
'dt_desktop'
],
"gameEmbedUrl": 'https://myawesomesite.com/client/launch.html?gameSession={{GAME_SESSION}}&game_id={{GAME_ID}}¤cy={{CURRENCY_NAME}}&lang={{USER_LANGUAGE}}'
}
],
"defaultName": 'Sample game',
"icons": {
"link40x40": 'https://myawesomesite.com/icons/icon40x40.png',
"link500x500": 'https://myawesomesite.com/icons/icon500x500.jpg',
"link300x300": 'https://myawesomesite.com/icons/icon300x300.png',
"link300x188": 'https://myawesomesite.com/icons/icon300x188.jpeg'
},
"gameType": 'SPIN',
"hasInternalBonuses": false,
"tags": [
'game-tag'
],
"decodedSymbols": {
"1": "Banana",
"2": "Cherry"
},
"disableForFun": false,
"freeGames": {
"possibleBets": [
1,
2,
3,
4,
5,
10,
20,
30,
40,
50,
100
],
"possibleLines": [
1,
20,
30,
50,
100
]
}
}
]
}
Response:
{
"isSuccess": true,
"errorMessage": "",
"error": "NO_ERROR"
}
Another example, you can use following script. Insert your personal data:
#!/bin/bash
# Set Variable Values
endpointUrl="https://api.lostgame.tech/open-api-games/v1/accounts"
secret="YOUR_SECRET"
REQ='{
"contentProviderId": "YOUR_PROVIDER_ID",
"accountId": "YOUR_ACCOUNT_ID",
"games": [
{
"id": "GAME_ID",
"launchMethod": [
{
"capabilities": [
"dc_html5full"
],
"devices": [
"dt_mobile",
"dt_desktop"
],
"gameEmbedUrl": "https://myawesomesite.com/client/launch.html?gameSession=&game_id=¤cy=&lang="
}
],
"defaultName": "GAME_NAME",
"gameType": "BET",
"hasInternalBonuses": false,
"tags": [
"PROVIDER_NAME"
],
"disableForFun": false,
"freeGames": {
"possibleBets": [
1,
2,
3,
4,
5,
10,
20,
30,
40,
50,
100
],
"possibleLines": [
1,
20,
30,
50,
100
]
}
}
],
"clientId": "YOUR_CLIENT_ID"
}'
# Generate signature
if hash md5 2>/dev/null; then
MD5=md5
else
MD5="md5sum"
fi
SIGN=`echo -n "$REQ$secret" | $MD5 | awk '{ print $1 }'`
echo running POST request to host $endpointUrl with sign = $SIGN and request = $REQ
# Send POST query
curl -v \
-H "Sign:$SIGN" \
-H "Content-Type: application/json" \
--request POST --max-time 30 \
--data "$REQ" $endpointUrl
An additional example is provided in sample-account-client/examples.js. Function: sendGamesList