Skip to main content
All API key endpoints require an email-verified session. Keys inherit the owner’s permissions unless you scope them down.

List keys

GET /api/api-keys

  • Auth – signed-in, email-verified user.
  • Response – array of key views:
lastUsedAt updates automatically whenever the key authenticates a request.

Create a key

PUT /api/api-keys

  • Body
Valid accessType values:
  • full – inherits the owner’s permissions. Do not include projectIds or permissions.
  • projects – require projectIds (IDs or slugs you already have access to).
  • custom – require permissions (permission strings such as marketing.pipelines.read).
  • Response
Store secret immediately; the API will never return it again.

Retrieve / update / delete

Using keys

  • Send the key with every request via x-api-key or Authorization: ApiKey <secret>. Authorization: Bearer <secret> also works when your client library only supports bearer tokens.
  • When both a session cookie and an API key are present, Browsary prefers the more privileged identity (session first, then key).
  • Keys scoped to specific projects will receive HTTP 400 errors if they call endpoints outside the allowed list.