/api/v1. Most require an API key — the exceptions are covered below.
Base URL
Authentication
Most requests need a Bearer token in theAuthorization header.
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 a403 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. Treatnext_cursor as an opaque
token — pass it back exactly as received via the cursor query parameter;
never parse or construct one yourself.
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: