TOURNAMENTSUITE
TOURNAMENTSUITE
Developer Documentation
Core ConceptsProjects & CredentialsTournamentsParticipantsMatchesCircuitsThe Data API: Public Read-Only AccessAnti-Cheat Integration API
Core Concepts

Projects & Credentials

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

What is a project?

A project is the organizational unit that contains your tournaments, API credentials, and webhooks. When you create a project in the Platform dashboard, you get an isolated space where all your data lives.

API credentials created inside a project can only access resources within that same project. This means:

  • An API key from Project A cannot read tournaments from Project B.
  • Webhooks registered in a project only fire for events within that project.

This isolation makes it straightforward to maintain separate projects for different clients if you are an agency or platform operator.

Creating a project

Log in to the Platform dashboard, click Create Project, and fill in a name and description. You can create as many projects as your plan allows.

API keys

Each project can have multiple API keys. An API key is a static secret sent in the X-API-Key header — the credential for server-side integrations where no user context is needed. This is currently the only credential type available for the public API.

  • Generated from the project's Developer section, under API Keys
  • Each key carries a specific set of scopes
  • Keys can optionally be created with an expiration period, after which they stop working automatically
  • Keys can be revoked at any time without affecting other keys in the project

Rotating a key

Instead of deleting a key and creating a new one, you can rotate it. Rotating issues a brand-new secret while preserving the key's name, scopes, and expiration — the old secret is revoked immediately and the new one is returned once, at rotation time. Use this to refresh a credential on a schedule without reconfiguring scopes or updating references to the key elsewhere in your integration.

Rate limits and IP restrictions

Beyond the rate limits tied to your subscription plan, each individual API key can carry its own request-rate ceiling (per minute, hour, or day) and an IP allowlist. If a key's own limit is exceeded, or a request arrives from an address outside its allowlist, the request is rejected before it reaches the API — independent of your plan-level limits. Configure these when you generate or edit a key.

Plan-gated capabilities

Some API capabilities are gated by your project's subscription plan rather than by key scopes. A key with the right scope can still receive an error on a given endpoint if the project's current plan does not include that capability. If you hit this, check your plan tier before assuming the key is misconfigured.

Sandbox

Your developer account includes a personal sandbox with its own API key, separate from any project's production API keys — sandbox credentials are never shared with production credentials. Use it to explore the API without touching real project data.

The sandbox is currently read-only from the dashboard: you can view its status and API call activity, but creating, resetting, or deleting a sandbox is not yet available. There is no separate sandbox base URL — sandbox access uses the sandbox's own API key against the standard API.

Was this helpful?

Core Concepts

The data model and key resources behind the Tournament Suite API.

Tournaments

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

On this page

What is a project?Creating a projectAPI keysRotating a keyRate limits and IP restrictionsPlan-gated capabilitiesSandbox