Skip to main content
The Scrums.com API is planned and not yet publicly available. Endpoints and behaviour are subject to change before release.

Overview

API keys are the authentication mechanism for server-to-server integrations, CI pipelines, and automation. Unlike bearer tokens that represent a user session, API keys are issued to a service account or directly to an organization context. Every API key is scoped and permissioned. Keys do not grant access beyond their declared scope and permission set.

Core Concepts

Key types

Scopes

A key is scoped to one of:
  • Organization — can access all resources in the org, respecting permissions
  • Workspace — restricted to resources in a single workspace
Workspace-scoped keys are preferred for CI pipelines and integrations that operate within a single team.

Permissions

Keys can be granted a subset of permissions, independent of the user role that created them.

Key rotation

Keys should be rotated regularly. The platform supports creating a replacement key and then deleting the old one without a gap in service. Keys do not expire automatically — rotation is a manual operational responsibility.

Endpoints

GET /v1/api-keys

List API keys for an organization.

Request

Response

Notes

  • The full key value is never returned after creation. Only the key prefix is stored and returned.

POST /v1/api-keys

Create a new API key.

Request

Response

Notes

  • The key field is returned only once at creation. Store it securely immediately.
  • Requires org admin or owner role to create.

DELETE /v1/api-keys/

Revoke an API key immediately. All in-flight requests using this key will fail once deleted.

Notes

  • Deletion is immediate and irreversible.
  • If a replacement key is needed, create the new key before deleting the old one.

Common Workflows

Rotating a key

Auditing key access

Objects

API Key

Best Practices

  • Follow least-privilege. Grant only the permissions the consuming system actually needs. A CI pipeline that only reads status does not need service_lines:manage.
  • Name keys to identify the consumer. Use the name field to record what system the key belongs to and when it was issued. “My key” is not a useful name.
  • Never embed secret keys in client-side code. Use publishable_key type for any key that touches a browser or mobile client. Secret keys belong in server-side environments only.
  • Rotate keys after team member departures. If the person who configured an integration leaves, rotate the keys they had access to. Key access is not automatically revoked with user deactivation.
Last modified on April 15, 2026