Docs

Docs

x-cpod-domain: credentials

Credentials

Stored credentials (API keys, OAuth tokens) for use by integrations and connectors.

Try in explorer client.credentials

Credential

A stored credential — opaque secret material with metadata.

REST path/api/v1/credentials
Operations
listgetcreaterevoke
SDK
// list — returns only your records; add filters/search:
await client.credentials.credentials.list()

// create:
await client.credentials.credentials.create({
  id: "rec_01HXEXAMPLE",
  tenant_id: "example tenant_id",
  created_at: "2026-01-01T00:00:00Z",
  updated_at: "2026-01-01T00:00:00Z",
  app_id: "example app_id",
  created_by: "rec_01HXEXAMPLE",
})
FieldTypeDescription
id*uuidServer-assigned ULID with type prefix (e.g. per_…).
tenant_id*stringTenant scope — auto-stamped from the caller's JWT.
app_idstringApp scope. Stamped ONLY when the caller's JWT was minted for a specific Application (integration API keys). Absent for human-user sessions. Filters reads when present.
created_at*date-timeServer stamp.
updated_at*date-timeServer stamp; updated on every patch.
created_byuuidPerson id from the caller's JWT (sub).
updated_byuuidPerson id from the last writer's JWT (sub).
sourcestringProvenance tag — defaults to 'edm'.
source_typeenumWhere the write originated. Defaults to 'api'.frontendbackendserversystemapi
is_deletedbooleanSoft-delete flag. Excluded from default list queries.
deleted_atdate-timeStamped when soft-deleted; null otherwise.
deleted_byuuidPerson id who soft-deleted; null otherwise.
schema_versionnumberDocument schema version. Bumped on incompatible writes.
labelstring
scopejsonFree-form scope hints (e.g. {service: 'slack', tenant: '…'}).
secretstringReturned once at create time; never re-emitted.
namestringHuman-readable label for this credential — required.
typeenumCredential classification.api_keyservice_accountwebhook_tokenvirtual_llm
kindenumCanonical key classification.serviceuservirtual_llmwebhook_signing
descriptionstringFree-form description of the credential's purpose.
statusenumLifecycle state.activerevokedexpired
scopesjsonPermission scopes granted to this credential (e.g. edm:read).
issued_to_user_iduuidUser this credential was issued to, if type=user.
issued_to_servicestringService this credential was issued to, if type=service.
allowed_modelsjsonAllowlist of model identifiers for type=virtual_llm.
tpm_limitintegerTokens-per-minute rate limit.
rpm_limitintegerRequests-per-minute rate limit.
max_budget_usdnumberMaximum spend cap in USD.
spend_usdnumberCached spend counter in USD.
blockedbooleanWhether this key is blocked from making requests.
blocked_reasonstringReason the key was blocked.
rotated_from_key_iduuidID of the key this was rotated from.
created_by_user_iduuidID of the user who created this key.
prefixstringFirst 8 chars of the raw key for UI display (alias of key_prefix).
key_hashstringSHA-256 hash of the raw key; never returned after creation.
key_prefixstringFirst chars of the raw secret, for UI display.
secret_fingerprintstringHMAC-SHA256 fingerprint of the raw secret; raw secret never persisted.
expires_atdate-timeExpiry timestamp; omit for non-expiring credentials.
last_used_atdate-timeTimestamp of the last successful use.
tagsjsonFree-form labels for grouping credentials.