Skip to content

API key scopes

Every API key holds scopes, and every operation it can reach needs one of them. A key that lacks the scope an operation needs is refused with INSUFFICIENT_SCOPE, which names the missing scope. A scope ending in :write also grants the matching :read scope.

Read the organization's org units through the public API.

Kind:read

Create, change and delete org units through the public API.

Kind: write · Also grants: org:read

Read Autonomy Zones, their Ask behaviour, their dictionary and agents' zone assignments through the public API.

Kind:read

Create and change Autonomy Zones, their Ask behaviour and their dictionary, and assign agents to zones through the public API.

Kind: write · Also grants: zones:read

Read intent policies and stated policy through the public API.

Kind:read

Change intent policies and stated policy through the public API.

Kind: write · Also grants: policies:read

Read learning proposals through the public API.

Kind:read

Accept and dismiss learning proposals through the public API.

Kind: write · Also grants: proposals:read

Read the organization's policy presets and their rules through the public API.

Kind:read

Change the organization's policy presets and their rules through the public API.

Kind: write · Also grants: presets:read

Read Agent Intent Policy authoring through the public API (beta).

Kind:read

Author Agent Intent Policies through the public API (beta).

Kind: write · Also grants: aip:read

Read anomalies, Ask grounds and holds through the public API.

Kind:read

Answer anomalies, Ask grounds and holds through the public API.

Kind: write · Also grants: triage:read

Read security alerts through the public API.

Kind:read

Change security alerts through the public API.

Kind: write · Also grants: alerts:read

Read agents, their ownership, sessions, execution graph and inventory sessions through the public API.

Kind:read

Change agents, their ownership and sessions through the public API.

Kind: write · Also grants: agents:read

Run the OpenLatch client on a host: send events, fetch the policy bundle, hold actions for review, poll alerts and read the licence state.

Kind:action

  • POST /api/v1/alerts/ack-all
  • GET /api/v1/alerts/pending
  • POST /api/v1/alerts/{alert_id}/ack
  • POST /api/v1/events/ingest
  • POST /api/v1/holds
  • GET /api/v1/holds/{native_tool_use_id}
  • POST /api/v1/hosts/identity
  • GET /api/v1/hosts/self
  • DELETE /api/v1/hosts/self/credential
  • GET /api/v1/license/state
  • GET /api/v1/policy/bundle

Enroll a host and receive its host credential.

Kind:action

  • POST /api/v1/hosts/enroll

Read the key's own user and organization, and revoke the key itself. Every key holds it.

Kind: implicit · You cannot grant it when you create a key.

Full access (legacy): every operation the key reached before scopes. Held only by keys created before scopes, never combined with another scope.

Kind: marker · You cannot grant it when you create a key.

An operation listed under no scope is not available to scoped keys: only a Full access (legacy) key reaches it.