Creating a key
- Open the OpenWhispr desktop app
- Click Integrations in the left sidebar
- On the API card, click Manage keys
- Click Create API Key, give it a name, and tick the permissions you need
- Choose an expiry — Never expires, 30, 60 or 90 days, or 1 year
- Copy the key — it starts with
owk_live_and is only shown once
What the app can grant
The dialog offers three permissions:
Every key also gets
usage:read, which isn’t shown as a checkbox and isn’t
listed on the key afterwards.
transcriptions:delete is the one scope the app can’t grant — there’s no checkbox for it, so a key made in the desktop app can’t delete transcriptions. To get one, create the key through the API and name the scope explicitly.Creating keys via the API
AI assistants can create their own keys programmatically using the agent setup flow. You can also manage keys via the API:POST /api/v1/keys/create— create a new keyGET /api/v1/keys/list— list active keysPOST /api/v1/keys/{id}/revoke— revoke a key
owt_ prefix).
Scopes
Each key has specific permissions. Choose only what you need.
Team spaces use a separate kind of key with its own scopes — see Workspace API keys.
Limits
- Max 5 API keys per user (workspace keys are counted separately — 20 per workspace)
- Expiry is chosen at creation: never, 30, 60 or 90 days, or 1 year
- Keys can be revoked at any time from the desktop app
Key format
owk_live_ for identification. Only the SHA-256 hash is stored server-side — the raw key cannot be recovered after creation.
Best practices
- Use separate keys for different integrations so you can revoke one without affecting others
- Set expiration dates for keys used in temporary automations
- Use the minimum scopes needed — a read-only dashboard doesn’t need
notes:write