Skip to content
On this page

API Methods

API KEY

Include api_key parameter in all requests.

/game/list

Displays enabled games for your API key.

Returns all games if api_key parameter is not specified.

Response

json
[
  {
    "id": "Sweets",
    "name": "Sweets",
    "category": "Slots",
    "thumbnail": "/engine/sweets/images/background_logo.png",
    "background": "/engine/sweets/images/background.png",
    "released": "01.2022",
    "balanceUpdateDelay": 3500,
    "recentRelease": true,
    "isPublic": true,
    "features": [
      {
        "name": "FREE_SPINS",
        "description": "Free spins"
      }
    ],
    "lines": [
      [ 1, 1, 1 ],
      [ 0, 0, 0 ],
      [ 2, 2, 2 ],
      [ 0, 1, 2 ],
      [ 2, 1, 0 ]
    ],
    "symbols": [
      {
        "name": "brown_cupcake",
        "payTable": {
          "x3": 5
        }
      }
    ],
    "size": {
      "x": 3,
      "y": 3
    }
  }
]

category

Available values:

  1. Slots
  2. Classic
  3. Multiplayer

features

  1. ASSETS_3D This game uses 3D assets. Some low-end mobile devices might have performance issues.
  2. FREE_SPINS This slot game has free spins feature.
  3. WILD This slot game has wild symbol.
  4. SCATTER This slot game has scatter symbol.
  5. BONUS_GAME This game features custom bonus game.

lines

Available only for slots.

Each array represents winning line id. Numbers inside them represent XY symbol position, where position in array is X, and the value is Y.

symbols

Available only for slots.

Symbols and their payouts.

size

Available only for slots.

"x" - Number of symbols on the X axis

"y" - Number of symbols on the Y axis

{ x: 5, y: 3 } slot size will look like this:

balanceUpdateDelay | Optional

Our games call "finish" callback to your server immediately after game is over, not when game animation completes. It means that it's your job to make a client-side or server-side timer which will show balance update in player's browser. See callbacks documentation for code example.

WARNING

It's important to use this property correctly. Update player balance immediately after callback was received by your server, do not confuse server-side balance update with balance update animation in player's browser. Regarding balance update animation, if you don't set a timer - it will look like a "spoiler" for player. If you don't take time parameter in callbacks into account - it might look like balance update was slightly delayed.

/game/info/< id >

Displays information for single game.

Response

See /game/list response. This method returns single object instead of an array.

/game/create/< id >

Creates game with specified parameters and returns game URL, which you should use to display the game on your website via iframe tag. Player actions will trigger callbacks on your URL unless isDemo param is set to true (or if your API key is in demo mode).

TIP

Most of the parameters are ignored in demo API keys.

Parameters

playerId

Player ID in your database. This will be used as an identification method when callbacks are sent to your server.

playerName

Player name. This parameter is required, but you can set it to "Anonymous" or something else if your player is anonymous.

minBet

Min. amount to bet. Default: 0.01

maxBet

Max. amount to bet. Default: -1 (unlimited)

step

(Optional) | Available since March 2023

Users can change their bet value using "+" / "-" buttons. step value determines how much will be added/subtracted with each click.

If not specified, step will use minBet parameter value.

currencyName

Currency name.

TIP

Any currency and cryptocurrency is supported, but if you are using one of the following currencies, please set currencyName parameter to:

  • Euro - EUR
  • US Dollar - USD
  • Demo (USD) - Demo

currencyParam

Number of decimals for specified currency. Currencies such as USD use 2 decimals, most cryptocurrencies use 8 decimals. Default: 2

isDemo

If set to true, sets game to demo mode. Default: false for paid API keys, true for demo API keys

Response

json
{
    "id": "ABC1234567890",
    "url": "https://phoenix-gambling.com/frame/Tower/ABC1234567890"
}

TIP

Create iframe with the provided URL to launch the game.

You don't have to create a game session every time someone launches a game - just create it once for the player. This way bonus games will be saved if user accidentally refreshes the page.

/game/editSession/< session id >

Changes session parameters in real time, user will see action immediately.

All parameters are optional, they won't be changed, unless you specifically put it in POST data.

INFO

This method is not available for demo API keys.

INFO

Use this method to change parameters like isDemo, without requiring the player to refresh the page.

This is extra useful if you store one session for each game and player in your database.

Parameters

See /game/create