CHeKT Apps

Permissions reference.

Every scope a CHeKT App can request, with the endpoints and events it unlocks. Built on the principle of least privilege.

How permissions work

CHeKT permissions are granular, additive, and reversible. Each permission grants access to a specific verb (read or write) on a specific resource family. Apps request the scopes they need at creation; the dealer admin approves the set as a whole.

You can later tighten permissions silently. Widening requires the dealer admin to re-approve.

Scope
A named permission like devices:read. Each scope is independent — you can grant any combination.
Read
Lists, gets, paginates. Never side-effects. Safe to grant broadly.
Write
Mutates state. Acknowledge, dispatch, arm, disarm. Grant only when needed.
Domain split
We split related actions across multiple scopes when the impact differs — alarms:write is separate from events:write because dispatch has cost.

All scopes

The complete permission catalog, grouped by resource family. Each scope lists the endpoints it unlocks and (where relevant) the webhook events it gates.

Devices

Cameras, bridges, sensors, and any other hardware reporting to CHeKT.

devices:readread

Read device metadata, status, firmware, signal strength, and configuration.

Unlocks endpoints
  • GET /v1/devices
  • GET /v1/devices/{id}
  • GET /v1/devices/{id}/snapshots
Required to receive events
  • device.online
  • device.offline
  • device.firmware_updated
devices:writewrite

Update device labels, groupings, and configuration. Trigger snapshots.

Unlocks endpoints
  • PATCH /v1/devices/{id}
  • POST /v1/devices/{id}/snapshot

Events & Alarms

The signal stream that drives every monitoring decision.

events:readread

Read events and alarm history across the dealer.

Unlocks endpoints
  • GET /v1/events
  • GET /v1/alarms
  • GET /v1/alarms/{id}
Required to receive events
  • alarm.created
  • alarm.resolved
  • verification.requested
events:writewrite

Acknowledge, escalate, annotate, or close alarms. Cannot delete history.

Unlocks endpoints
  • POST /v1/alarms/{id}/acknowledge
  • POST /v1/alarms/{id}/escalate
  • POST /v1/alarms/{id}/annotate
alarms:writewrite

Dispatch responders. Distinct from events:write because dispatching has cost implications.

Unlocks endpoints
  • POST /v1/alarms/{id}/dispatch
snapshots:readread

Read snapshot URLs and metadata tied to events.

Unlocks endpoints
  • GET /v1/snapshots/{id}
  • GET /v1/devices/{id}/snapshots
Required to receive events
  • snapshot.created

Sites & Partitions

Physical and logical grouping holding your devices.

sites:readread

Read site, partition, and zone data.

Unlocks endpoints
  • GET /v1/sites
  • GET /v1/sites/{id}/partitions
  • GET /v1/sites/{id}/zones
Required to receive events
  • partition.armed
  • partition.disarmed
sites:writewrite

Arm, disarm, bypass zones, and update partition configuration.

Unlocks endpoints
  • POST /v1/partitions/{id}/arm
  • POST /v1/partitions/{id}/disarm

Operators

Operator accounts at the dealer level. Useful for audit + roster apps.

operators:readread

Read operator roster, roles, and audit log.

Unlocks endpoints
  • GET /v1/operators
  • GET /v1/operators/{id}/audit

Webhooks

Manage the webhook delivery configuration for this app from code.

webhooks:readread

Read the current webhook subscription and delivery log.

Unlocks endpoints
  • GET /v1/webhook_endpoints/{id}
  • GET /v1/webhook_endpoints/{id}/deliveries
webhooks:writewrite

Update the URL, signing secret, or event subscriptions for this app's webhook.

Unlocks endpoints
  • PATCH /v1/webhook_endpoints/{id}

Common permission sets

Starting points for typical app shapes. Pick the closest one and trim or expand from there.

AI verification app

Reads alarms + snapshots, writes verification verdicts back.

  • events:read
  • snapshots:read
  • events:write

Reporting / dashboard

Read-only across the platform.

  • events:read
  • devices:read
  • sites:read
  • operators:read

Auto-dispatcher

Routes high-confidence alarms to a guard service automatically.

  • events:read
  • alarms:write

Audit + compliance

Pulls operator action history for regulators.

  • operators:read
  • events:read
  • sites:read

Best practices

Next steps