API key
For server-to-server integrations, use an API key. Create one in Settings → Developer in the dashboard — keys are prefixedsp_live_... and scoped to your team.
Supabase JWT
The web app authenticates via Supabase JWT tokens. The frontend manages these automatically — you only need to handle them yourself when building a custom integration against the same backend.Unauthenticated endpoints
A small number of routes are intentionally public:
All other routes require an
Authorization: Bearer ... header and will return 401 without one.
Rate limits
Limits are applied per-team across three buckets:
Exceeding a limit returns a
429 response with a Retry-After header indicating when to retry: