PPactDocs
Developers

OAuth & API scope reference

Every scope Pact exposes, what it grants, and recommended sets per use case.

Scopes control exactly what a token can do. Both OAuth tokens and API keys are scoped — request the minimum your integration needs. Workspace admins approve least-privilege apps faster, and a leaked low-scope token does less damage.

Scopes follow a resource:action shape: a read: scope lets you list and fetch; a write: scope lets you create and update.

All scopes

ScopeGrants
read:accountsView company accounts
write:accountsCreate and update company accounts
read:contactsView contacts
write:contactsCreate and update contacts
read:dealsView deals and pipeline
write:dealsCreate and update deals
read:activitiesView the activity feed
write:activitiesLog activities
read:workflowsView workflow runs

Request multiple scopes as a space-separated list, for example read:contacts write:contacts read:deals.

Use caseScopes
Read-only dashboard / reportingread:accounts read:contacts read:deals read:activities
Inbound lead capture (forms, web)write:contacts write:accounts
Two-way CRM syncread:accounts write:accounts read:contacts write:contacts read:deals write:deals
Activity logging (calls, emails)read:contacts write:activities
Pipeline automationread:deals write:deals read:workflows

Principles

  • Least privilege. Start with read: scopes; add write: only where you actually create or update records.
  • Read does not imply write. read:contacts cannot modify a contact — you need write:contacts for that.
  • Scopes are checked per request. A call to a write endpoint with a read-only token returns 403 Forbidden, not 401.

Changing scopes

To change an OAuth app's scopes, update it in Admin → API & developers — connected workspaces re-consent on the next authorization. For an API key, the scopes are fixed at creation; issue a new key (or rotate) to change them.

What's next?