Skip to main content

Tenant API key

Every REST and WebSocket call carries a tenant API key issued from the Client Portal. The key is scoped — what fields you see depends on which scopes are attached.

REST

REST accepts either equivalent header:
When both headers are present, they must contain the same key.

WebSocket

Browsers can’t set custom headers on the WS upgrade, so the key rides as a query parameter:

AMQP

Provisioned per tenant on request — see the Messaging Feed page.

Verify your key

The first call to make on any new key:
If the scope list is shorter than expected, contact your account manager — your key may have been issued with a narrower bundle than your contract calls for.

Sport allowlist

Each key declares which sport namespaces it can access — cs2 (/cs2/v1/*) and soccer (/soccer/v1/*) today, with Dota 2 (dota2) rolling out. Only keys with that sport in their sport_allowlist reach those endpoints.

Error responses

Error body (JSON):

Rate limiting

Default 600 req/min per tenant key (configurable per contract). WebSocket connections aren’t rate-limited — the server still applies fairness on a per-tenant basis. When exceeded:

Key rotation

Rotate from the Client Portal. Two modes:
  • Rotate — issue a fresh secret, keep the same scopes. Old key invalidated immediately.
  • Revoke — disable the key. No replacement issued.
Either way, the change takes effect within a second across all running services — no propagation delay.
Last modified on June 20, 2026