Scopes

Permission scopes on API keys and how they map to routes.

Each key has an explicit list of scopes. Routes require one or more scopes; missing scopes return 403 with PUBLIC_API_SCOPE_DENIED.

Catalog

ScopeUsed for
workspaces:readList / get workspaces
projects:readList / get projects, project processing status
projects:writeCreate projects, pause / resume tracking
contexts:read / contexts:writeSearch contexts (roadmap)
keywords:read / keywords:writeKeyword list / add / delete / frequency
rankings:readSEO keyword and AEO prompt rankings / detail
competitors:readSEO keyword-gap, AEO prompt-gap, and competitor selections (read)
competitors:writeCompetitor selection writes (not public yet)
tools:readList / get / poll tool jobs
tools:writeCreate / delete tool jobs
usage:readCredits and account limits
exports:read / exports:writeExport jobs (roadmap)

Workspace allowlist

A key may be limited to specific workspaces. Calls to other workspace ids return PUBLIC_API_WORKSPACE_DENIED.

Least privilege

Create a separate key per integration (for example Looker, Zapier, or a reporting pipeline) with only the scopes that integration needs. Rotate or revoke keys in Organization settings when an integration is retired.