Why key management is dashboard-only
An API key can authenticate search, upload, and collection requests, but it can never create, list, or revoke another key — even its own. Key creation and revocation require a web session token (the one your browser holds after you sign in), specifically so a leaked API key can’t be used to mint new keys or revoke the legitimate ones on the account. There’s no way around this from server-to-server code; if you need a new key, someone has to generate it from the dashboard.What happens when you create a key
key field — the actual secret used in the Authorization header — is only ever returned in this response. Store it immediately; there’s no way to retrieve it again. If you lose it, revoke the key and create a new one.
Permission levels
Use
read_only keys for client-side or agent integrations (see MCP Overview) where you don’t need write access.
Listing and revoking
Listing returns every key on the account, including revoked ones — the plain secret is never included, onlyprefix (the first 12 characters), so you can tell which key is which. Revocation is immediate and permanent; a revoked key can’t be reactivated.
Plan limits
Creating a key beyond your plan’s limit returns
402 with code API_KEY_LIMIT_REACHED. See Errors.
API key object
Security notes
- Keys are stored as a SHA-256 hash — Pureframe AI never stores or logs the plain secret after creation.
- Key creation and revocation both require a web session token with admin role, not another API key — this prevents a compromised API key from minting or revoking other keys on the account.