Skip to main content
The OpenWhispr API lets you manage notes, folders, transcriptions, and usage programmatically. All endpoints live under /api/v1. Most require an API key — the exceptions are covered below.

Base URL

Authentication

Most requests need a Bearer token in the Authorization header.
Generate API keys from the OpenWhispr desktop app: open Integrations in the left sidebar and use the API card. Keys start with owk_live_ and are shown once at creation. API key management is offered on paid plans.
Two exceptions: the agent bootstrap endpoints (/auth/email-code, /auth/email-code/verify) take no credentials at all — that’s how an assistant gets its first token. And the /keys/* management endpoints also accept the short-lived session token (owt_) that bootstrap produces, not just an owk_live_ API key. Every other endpoint needs a Bearer owk_live_ (or ow_wks_live_) key.

Scopes

Each key has scoped permissions. Requests missing the required scope get a 403 Forbidden response. Keys that start with ow_wks_live_ are workspace keys and carry a different set of scopes — see Workspace API keys.

Response format

All responses use a consistent envelope.

Pagination

List endpoints use cursor-based pagination. Treat next_cursor as an opaque token — pass it back exactly as received via the cursor query parameter; never parse or construct one yourself.
When has_more is false, you’ve reached the end.

Rate limits

Limits are per API key with minute and daily windows. A search request counts as 5 against both windows. Every response includes rate limit headers: