Your first key and Workspace
Checkfu is in private alpha; access is by invitation. Request access; an admitted Organization receives an organization-scoped root API key and at least one Workspace. That root key is the bootstrap credential. Everything below is created with it. A key has a role (root, admin, developer, runner, or viewer) and a scope. Organization-scoped root keys manage the Organization. Ordinary API keys are hard-bound to one Workspace, matching CMA, and cannot select another Workspace by header. The full contract is in Authentication.
Mint the keys you’ll actually ship with
Do not embed the root key in services. Create narrower keys for each system:GET /v1/organizations/{organization_id}/api-keys and GET /v1/api-keys/{id} return current key metadata but never a secret. Patch, rotation, revocation, or replay expiry makes an old retry fail closed without returning the secret. Only an organization-scoped root key can list, retrieve, create, rotate, re-role, or revoke keys. Creation and rotation require an Idempotency-Key: one stable value per intended credential, a new value per intentionally distinct one.
Key management is an Organization-level surface. The Workspace a new key is bound to travels in the body’s scope, never a selector header.
Principals: the people and services your agents act for
A Principal is an identity inside a Workspace: one of your end users, or one of your services. Every Session names the Principal it runs for, so before the quickstart you need at least one:external_subject_idis your identifier for this identity: a user ID from your own database. Checkfu never authenticates your end users; your backend authenticates them and asserts the matching Principal on each request.principal_typeispersonfor humans andservicefor machine identities (automations and installed agents execute asservicePrincipals).
prin_… is what you pass as principal when creating Sessions, and what PermissionAssignments and Budgets attach to. Create one Principal per end user. Per-user attribution, budgets, and audit all key off it.
The three variables, ready
CHECKFU_WORKSPACE_ID is used when an Organization-management or identity-administration path names the Workspace explicitly; it is never a client selector.
Continue to the quickstart.