Authentication & scopes
Get a key
In your organisation: Settings → Platform API → Create key (Pro plan). The sc_… secret is shown exactly once — store it like a password. Send it on every request:
Authorization: Bearer sc_your_keyPick a scope
Scopes are ranked — each includes everything below it. Start with read and only step up when an endpoint tells you to.
- read — GET anything your org can see.
- score — also POST score events and start divisions.
- manage — the full surface: create, generate, moderate.
Each operation in the reference declares its requirement as x-required-scope. Billing, org membership and key management are never reachable with a key, whatever the scope.
Pin a key to one competition
When a scoreboard vendor only needs one event, create the key with a competition pin. It authenticates normally but 403s anywhere outside that competition — including org-wide collection endpoints.
Errors you will meet
{ "ok": false,
"error": { "code": "FORBIDDEN", "message": "This key is limited to 'read' — this endpoint needs the 'manage' scope. Create a key with the right scope in org settings." },
"requestId": "…" }401 UNAUTHENTICATED— bad or revoked key.403 FORBIDDEN— scope too low, pinned elsewhere, or a key can’t use that endpoint at all.402 PAYMENT_REQUIRED— the org’s plan doesn’t include the feature;error.feature_keysays which.429 RATE_LIMITED— over the per-key budget; checkX-RateLimit-Resetand retry after it.

