Skip to content
Dashboard

Authentication

All requests to the SuiteOp API must include a secret key in the Authorization header.

Authorization: Bearer sk_live_your_key_here

The Bearer scheme is case-insensitive. There is no other supported authentication method.

PartExampleMeaning
Prefixsk_Always present on API keys
Environmentlive_ or test_Production vs sandbox
Secretabc123…40+ random characters
  • sk_live_ keys reach production data. Keep them out of source control and client-side code.
  • sk_test_ keys are for development and testing. They operate against your organization’s data in sandbox mode.

Each key is issued with a set of permission scopes. Scopes follow a resource:action pattern (for example tasks:read, tasks:write, reservations:read). A request that requires a scope the key does not have returns a 403 authorization_error.

Select the minimum scopes your integration needs when creating a key. You cannot add scopes to an existing key; create a new key with the updated scope set.

ActionHow
CreateSettings → API Keys → Create API Key
ViewShown once at creation; not retrievable afterwards
RevokeSettings → API Keys → Revoke
RotateRevoke old key, create new key, update your integration

Keys can be created with no expiry or a fixed lifetime (30 days, 90 days, or 1 year); revoke any key that is no longer in use. For the full step-by-step on creating, scoping, monitoring, and revoking keys from the dashboard, see Managing API Keys.

StatusMeaning
401 authentication_errorKey is missing, malformed, revoked, or belongs to a different organization
403 authorization_errorKey is valid but lacks the required scope for this operation
  • Server-side only. Never embed API keys in browser JavaScript, mobile apps, or any client-side code. Keys are long-lived bearer tokens with full API access within their scopes.
  • Environment variables. Load keys from environment variables or a secrets manager at runtime.
  • Rotate on suspicion. If a key may have been exposed, revoke it immediately and issue a new one.
  • Scope minimally. A key used only for reading reservations should not have tasks:write.