Subsections of Tournaments integration

Tournaments players registration

  • For tournaments with a participation scope of ‘PRIVATE’, the player’s participation is not automatic and requires registration.
  • x-auth-token header is required

Request (POST)

/tournaments/{version}/{brand_id}/register

Request body:

{
  "tournament_id": "123e4567-e89b-12d3-a456-426614174000",  // Actual tournament ID, required
  "points_multiplier": "1.5",                               // Not required, currently not in use
  "metadata": {                                             // Additional ke-value pairs object, not required
    "source": "mobile_app",
    "referral_code": "ABCD1234"
  }
}

Response

Status 200

{
  "total" : 1,                                                  // Number of successfuly registered players
  "message" : "Player registered successfully for tournament"   // Result message
}

Status 400 (Tournament not found)

{
  "total" : 0,
  "data" : null,
  "message" : "tournament not found"
}

Tournaments list for casino

This document contains information about getting list of tournaments for particular casino.

Request (GET)

/gateway/tournaments/{version}/{brand_id}

Parameters:

Name In Type Required Description
version path string true The API version to use (pagination supported in version 3.0 and above).
brand_id path string true The ID of the casino.
status query string false Comma separated list of statuses:
1=Active, currenty running tournament
2=Inactive, cancelled by operator
3=Completed, ended tournaments
0=Pending, not started
page query string false page number, starts from page 1, set to 1 if not sent
page_size query string false limits number of results per page, set to 100 if not sent

Headers

  • x-auth-token: Not requred, its better to be sent for logged in user

Postman sample:

curl --location 'http://www.my_site_backend.com/tournaments/1/1501?status=0,1' \
--header 'x-auth-token: place your token here'

Response

Name Type Description
tournament_id string The ID of the tournament.
tournament_name string The Name of the tournament defined by operator.
tournament_description string The Description of the tournament defined by operator.
status numeric Current tournament status: 0 - Pending (Not started yet), 1 - Active (Started), 2 - Inactive (stopped before start), 3 - Completed
games object List of games, participating in tournament, that exists in requested casino. It grouped by operator key, and each key contains operator
friendly name and games information (name +id)
start_date datetime Date and time of the tournament start.
end_date datetime Date and time of the tournament end.
rules object See rules structure
prizes object See prizes structure

Status 200

{
    "status": "Success",
    "data": {
        "tournaments": [
         {
                "tournament_id": "15c19ead-fc42-4be1-8b52-5b384686850d",
                "tournament_name": "automation_iutAg",
                "tournament_description": "Automation Test",
                "status": 2,
                "games": {
                    "26": {
                        "provider_name": "Betsoft",
                        "groovy_provider_id": "26",
                        "games": [
                            {
                                "game_id": "82672",
                                "game_name": "Rook's Revenge"
                            }
                         ]
                    }
                },
                "start_date": "2025-12-01 09:51:00",
                "end_date": "2025-12-02 12:00:00",
                "rules": {
                    "MinimumBetsOrRoundsRequired": [
                        {
                            "required_bets": 5,
                            "required_rounds": 10
                        }
                    ],
                    "WinToPointsConversion": [
                        {
                            "points_to_add": 10,
                            "required_win": 10
                        }
                    ]
                },
                "prizes": {
                    "SpecificPositionPrize": [
                        {
                            "position": 1,
                            "prize": 100,
                            "prize_name": "Automation"
                        }
                    ]
                }
            }
        ],
        "numberOfPages": 9,
        "tournamentsPerPage": 10,
        "tournamentsCount": 90,
        "currencyCode": "USD"
    }

Status 400 (Missing authentication header)

{
  "status" : "Error",
  "data" : {
    "errMsg" : "invalid input - invalid token"
  },
  "message" : "authentication failed",
  "userFriendlyMessage" : "Authentication failed"
}

Tournaments prizes structure

Tournaments Prizes contains information about tournament prizes definitions

Suported prizes definitions:

SpecificPositionPrize

  • contain ‘position’, ‘prize’ and ‘prize_name’ fields. Define prize for specific position in leaderboard

SpecificPositionRangePrize

  • contain ‘start_position’, ’end_position’, ‘prize’ and ‘prize_name’ fields. Define prize for range of positions in leaderboard
  • Values of field prize/prize name can be empty, for one of the fields, so another should contain value

Tournaments rules structure

Tournaments Rules contains information about different rules and limitation tournament engine uses to calculate player achievements during player’s tournament participation. Each rule can have different set of fields that require to exetute the rule

Suported rules:

BetToPointsConversion

  • contain ‘points_to_add’ and ‘required_wager’ points defined in ‘points_to_add’ field added to player while amount of bet per transaction hits the defined ‘required_wager’.

MinimumBetAmount

  • contain ‘required_wager’ field, minimum amount of bet per transaction to be eligable for the tournament

MinimumBetsOrRoundsRequired

  • contain ‘required_bets’ and ‘required_rounds’ . Minimum bets (totally) OR rounds played required for player to be eligable for tournament participation

WinToPointsConversion

  • contain ‘points_to_add’ and ‘required_win’ points defined in ‘points_to_add’ field added to player while amount of win per transaction hits the defined ‘required_win’.

Get Leaderboard

This document contains information about getting the leaderboard for a particular tournament in a casino.

Request (GET)

/gateway/tournaments/{version}/{brand_id}/leaderboard

Parameters:

Name In Type Required Description
version path string true The API version to use.
brand_id path string true The ID of the casino.
tournament_id query string true The ID of the tournament.
player_id query string false The ID of the player. Automatically derived from x-auth-token when that header is present.
status query string false Tournament status filter:
1=Active, currenty running tournament
3=Completed, ended tournaments

Postman sample:

curl --location 'http://www.my_site_backend.com/tournaments/1/1501/leaderboard?tournament_id=b3c9408a-8077-4c24-8939-3baa65e1eb44' \
--header 'x-auth-token: place your token here'

Response

The API returns ALL leaderboard entries for the tournament in a single response (no pagination).

Name Type Description
leaderboards array Array of tournament leaderboard objects.
tournament_id string The ID of the tournament.
tournament_name string The Name of the tournament defined by operator.
player_data array List of ALL players with their positions and points in the tournament.
position integer The player’s position in the leaderboard (1 for first place, 2 for second, etc.).
player_id string The unique identifier of the player. Masked as “***” + last 3 digits (e.g., “***024”) for privacy in leaderboard.
points string The total points accumulated by the player in the tournament.
prize_value number The prize value for this position.
start_date datetime Date and time of the tournament start.
end_date datetime Date and time of the tournament end.
games object List of games, participating in tournament, grouped by operator key.
total_participants integer Total number of players participating in the tournament.
rules object See rules structure
prizes object See prizes structure
current_player_entry object Information about the current player’s leaderboard entry (if player_id provided). Player ID is NOT masked in this field.

Status 200

{
  "status": "Success",
  "data": {
    "leaderboards": [
      {
        "tournament_id": "540855c7-7343-49d4-89a6-0b0b2e8e06bc",
        "tournament_name": "Tour erfrfrff",
        "player_data": [
          {
            "position": 1,
            "player_id": "***704",
            "points": "400",
            "prize_value": 200
          },
          {
            "position": 2,
            "player_id": "***024",
            "points": "342",
            "prize_value": 100
          },
          {
            "position": 3,
            "player_id": "***705",
            "points": "200",
            "prize_value": 50
          },
          {
            "position": 4,
            "player_id": "***888",
            "points": "200",
            "prize_value": 0
          },
          {
            "position": 5,
            "player_id": "***706",
            "points": "144",
            "prize_value": 0
          }
        ],
        "start_date": "2025-10-20 18:00:00",
        "end_date": "2025-11-17 18:00:00",
        "games": {
          "Groove_BetSoft": {
            "provider_name": "Betsoft",
            "games": [
              {
                "game_id": "82687",
                "game_name": "House of Fun"
              }
            ]
          }
        },
        "total_participants": 60,
        "rules": {
          "BetToPointsConversion": [
            {
              "points_to_add": 1,
              "required_wager": 5
            }
          ],
          "MinimumBetAmount": [
            {
              "required_wager": 10
            }
          ],
          "MinimumBetsOrRoundsRequired": [
            {
              "required_bets": 10,
              "required_rounds": 1
            }
          ]
        },
        "prizes": {
          "SpecificPositionPrize": [
            {
              "position": 1,
              "prize": 200
            },
            {
              "position": 2,
              "prize": 100
            },
            {
              "position": 3,
              "prize": 50
            }
          ]
        }
      }
    ],
    "current_player_entry": {
      "position": 11,
      "player_id": "224336",
      "points": "50",
      "prize_value": 0
    }
  }
}

Status 400 (Missing authentication header)

{
  "status" : "Error",
  "data" : {
    "errMsg" : "invalid input - invalid token"
  },
  "message" : "authentication failed",
  "userFriendlyMessage" : "Authentication failed"
}

Status 404 (Tournament not found)

{
  "status" : "Error",
  "data" : {
    "errMsg" : "tournament not found"
  },
  "message" : "Tournament with the specified ID does not exist",
  "userFriendlyMessage" : "Tournament not found"
}