Skip to main content
POST
/
api
/
tournaments
Create tournament
curl --request POST \
  --url https://ts.playservices.tech/api/api/tournaments \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "Test Tournament",
  "external_id": "EXT_001",
  "game": "crash-classic",
  "scheduled_start": "2023-11-07T05:31:56Z",
  "entry_fee": 10.5,
  "max_players": 50,
  "min_players": 5,
  "prize_pool": {
    "total": 500,
    "distribution": {
      "1": 50,
      "2": 30,
      "3": 20
    }
  },
  "config": {
    "tournament_type": "points_based"
  }
}
'
{
  "tournament_id": "<string>",
  "status": "<string>",
  "estimated_prize_pool": 123,
  "tournament": {
    "tournamentId": "12345",
    "name": "Daily Championship",
    "gameSlug": "crash-classic",
    "status": "scheduled",
    "scheduledStart": "2023-11-07T05:31:56Z",
    "actualStartTime": "2023-11-07T05:31:56Z",
    "completedAt": "2023-11-07T05:31:56Z",
    "maxPlayers": 100,
    "currentPlayers": 87,
    "entryFee": 10,
    "currency": "USD",
    "prizePool": {
      "totalAmount": 870,
      "currency": "USD",
      "guaranteedPrize": 500,
      "distribution": {}
    },
    "gameConfig": {},
    "createdAt": "2023-11-07T05:31:56Z"
  }
}
Create a new tournament with specified configuration including game type, player limits, entry fees, and prize distribution. The tournament will be created in ‘scheduled’ status and can be modified until it starts.

Authorizations

Authorization
string
header
required

Operator API key with role-based permissions (tournaments.read, players.write, etc.)

Body

application/json
name
string
required
Example:

"Test Tournament"

external_id
string
required
Example:

"EXT_001"

game
string
required
Example:

"crash-classic"

scheduled_start
string<date-time>
required
entry_fee
number
required
Required range: x >= 0
Example:

10.5

max_players
integer | null

Maximum players (null for unlimited capacity)

Required range: x >= 1
Example:

50

min_players
integer
Required range: x >= 1
Example:

5

prize_pool
object
config
object
Example:
{ "tournament_type": "points_based" }

Response

Tournament created

tournament_id
string
status
string
estimated_prize_pool
number
tournament
object