TS
Tournament Suite
TS
Tournament Suite
Developer Documentation
Core ConceptsProjects & CredentialsTournamentsParticipantsMatchesCircuits
Core Concepts

Tournaments

How tournaments work in TournamentSuite — lifecycle, structure, and key API operations.

A tournament is the central resource in TournamentSuite. It defines the competitive event, its format, its participants, and its schedule.

Tournament lifecycle

Tournaments move through the following states:

DRAFT → PUBLISHED → REGISTRATION_OPEN → REGISTRATION_CLOSED → ONGOING → COMPLETED
StatusDescription
DRAFTTournament is being configured; not visible to the public
PUBLISHEDTournament is public; registration may or may not be open
REGISTRATION_OPENPlayers can register
REGISTRATION_CLOSEDRegistration period has ended; organizer finalizes the bracket
ONGOINGTournament is in progress; matches are being played
COMPLETEDAll matches are resolved; final results are locked

Once a tournament moves to ONGOING, structural settings (format, team size, stage configuration) are locked.

Structure

A tournament contains one or more stages. Each stage has a format:

FormatDescription
SINGLE_ELIMINATIONLosers are immediately eliminated
DOUBLE_ELIMINATIONLosers get a second chance through a losers bracket
ROUND_ROBINEvery participant plays every other participant
SWISSParticipants are paired by current score each round
GROUPSPool stage producing ranked qualifiers

Stages run sequentially. Participants who advance from Stage 1 are automatically seeded into Stage 2.

Key endpoints

List tournaments

GET /api/v1/tournaments?status=PUBLISHED&page=1&limit=20

Get a tournament

GET /api/v1/tournaments/:id

Response includes full tournament details, current status, stage configuration, and participant counts.

Create a tournament

POST /api/v1/tournaments
Content-Type: application/json
X-API-Key: YOUR_API_KEY

{
  "name": "Summer Open 2026",
  "disciplineId": "cs2",
  "maxParticipants": 64,
  "teamSize": 5,
  "stages": [
    { "format": "GROUPS", "name": "Group Stage" },
    { "format": "SINGLE_ELIMINATION", "name": "Playoffs" }
  ],
  "startDate": "2026-07-01T00:00:00Z"
}

Start a tournament

POST /api/v1/tournaments/:id/start

Starting a tournament closes registration, generates the bracket, and seeds participants. After this point, the tournament is ONGOING.

Brackets and seeding

Once a tournament starts, each stage generates its bracket or group table. You can retrieve the bracket at any point:

GET /api/v1/tournaments/:id/bracket

The response includes the full match tree with participant assignments, scores, and advancement paths.

Related resources

  • Participants — who is in the tournament
  • Matches — individual games within a stage
  • Webhooks — get notified when tournament state changes

Projects & Credentials

How projects provide credential isolation and scope all API access on TournamentSuite.

Participants

How players and teams register, check in, and participate in TournamentSuite tournaments.

On this page

Tournament lifecycleStructureKey endpointsList tournamentsGet a tournamentCreate a tournamentStart a tournamentBrackets and seedingRelated resources