Reference
Endpoint Catalog
Quick reference for all public TournamentSuite REST API endpoints, organized by resource.
API Version: v1
Base URL: https://api.tournamentsuite.com/api/v1
All requests require an X-API-Key header or an Authorization: Bearer <token> header. Endpoints marked Public do not require authentication.
Tournaments
# Public
GET /tournaments/:id # Get tournament details
GET /tournaments/:id/bracket # Get bracket structure
GET /tournaments/:id/schedule # Get match schedule
GET /tournaments/:id/stages # Get tournament stages
# Organizer (API key with manage:tournaments)
POST /tournaments # Create tournament
PUT /tournaments/:id # Update tournament
DELETE /tournaments/:id # Delete tournament
POST /tournaments/:id/start # Start tournament and generate bracket
POST /tournaments/:id/publish # Publish tournament (make it public)
# Participant (user access token)
POST /tournaments/:id/participate # Register for a tournament
POST /tournaments/:id/checkin # Confirm attendance (check in)Participants
# Public
GET /tournaments/:id/participants # List participants
GET /tournaments/:id/participants/:pid # Get participant details
# Organizer
DELETE /tournaments/:id/participants/:pid # Remove or disqualify participant
PATCH /tournaments/:id/participants/:pid # Update participant (seed, status)Matches
# Public
GET /matches/:id # Get match details
# Participant (user access token)
POST /matches/:id/start # Signal match has started
POST /matches/:id/report # Submit match result
POST /matches/:id/confirm # Confirm opponent's reported result
POST /matches/:id/dispute # Open a dispute on the result
POST /matches/:id/evidence # Attach evidence to a dispute
# Organizer
POST /matches/:id/resolve # Override result and resolve disputeCircuits
# Public
GET /circuits/public/active # List active circuits
GET /circuits/public/:id # Get circuit details
# Authenticated (read:circuits)
GET /circuits/:id # Get circuit with full details
GET /circuits/:id/standings # Get cumulative standings
GET /circuits/:id/seasons/:sid # Get season details
GET /circuits/:id/tournaments # List tournaments in circuit
# Organizer (manage:circuits)
POST /circuits # Create circuit
PUT /circuits/:id # Update circuit
POST /circuits/:id/seasons # Create a new season
POST /circuits/:id/tournaments/:tid/classify # Classify tournament results into standings
POST /circuits/:id/start # Start a circuit season
POST /circuits/:id/complete # Complete a circuit seasonOrganizations & Teams
# Public
GET /organizations/:id # Get organization details
# Authenticated
POST /organizations # Create organization
PUT /organizations/:id # Update organization
DELETE /organizations/:id # Delete organization
GET /organizations/:id/staff # List staff members
POST /organizations/:id/staff/invite # Invite staff member
POST /organizations/:id/staff/invitations/:token/accept # Accept invitation
DELETE /organizations/:id/staff/:staffId # Remove staff memberUsers & Profiles
# Public
GET /users/:username # Get public user profile
# Authenticated (own account)
GET /users/me # Get own profile
PATCH /users/me # Update own profile
# Gaming account links
POST /gaming/platforms/:platform/link # Link a gaming account (Steam, Riot, Epic)
DELETE /gaming/platforms/:platform/unlink # Unlink a gaming account
GET /gaming/profile # Get all linked gaming profilesNotifications
# Authenticated
GET /notifications # List notifications
PATCH /notifications/:id/read # Mark notification as read
PATCH /notifications/read-all # Mark all as read
GET /notifications/preferences # Get notification preferences
PATCH /notifications/preferences # Update notification preferencesWebhooks & Developer
# Authenticated (manage:webhooks)
GET /developer/webhooks # List webhook subscriptions
POST /developer/webhooks # Create webhook subscription
PATCH /developer/webhooks/:id # Update webhook subscription
DELETE /developer/webhooks/:id # Delete webhook subscription
# Authenticated (read:webhooks)
GET /developer/api-keys # List API keys
POST /developer/api-keys # Create API key
DELETE /developer/api-keys/:id # Revoke API keyCalendar
# Authenticated
GET /calendar/feed # Get calendar feed (filterable by tournament, circuit)
GET /calendar/export # Export as iCalendar (.ics)Analytics
# Authenticated (read:analytics)
GET /tournaments/:id/analytics # Tournament participant and match analytics
GET /circuits/:id/analytics # Circuit engagement and standings analyticsHealth
# Public
GET /health # API health checkCommon query parameters
All list endpoints support standard pagination and filtering:
?page=1&limit=20
?status=PUBLISHED
?startDate=2026-07-01
?endDate=2026-08-31
?sortBy=createdAt&sortOrder=descSee Pagination for details.
Response codes
See Response Codes for the full list of status codes and error envelope format.