Skip to main content
API permissions (api.*) guard every REST endpoint in PropOps. When a user calls an API route, the system checks that their role includes the required api.* key before processing the request. There are 403 keys across 20 namespaces.
Parent keys (e.g. api.admin.activity_log) act as category toggles — enabling or disabling the parent key controls visibility of the entire sub-group. The child keys (e.g. api.admin.activity_log.view) control the specific action.

api.admin.* — Administration

Controls access to system administration endpoints — branch management, settings, security reports, cleanup tools, and more.

api.agents.* — Agent Operations

Controls agent-level operations — branch assignments, SLA management, logo uploads, and contractor document thumbnails.

api.analytics.* — Analytics & Insights

Controls access to analytics dashboards and page/activity tracking.

api.calendar.* — Calendar


api.contractors.* — Contractors

Controls contractor management — listings, maintenance trades, and certifications.

api.dashboard.* — Dashboard Widgets

Controls visibility of individual dashboard widgets, chiplets, and charts.

api.email.* — Email


api.financial.* — Financial


api.jobs.* — Jobs Management

The largest API namespace. Controls all job CRUD, case notes, photos, documents, statuses, types, and more.

api.security.* — Security

Controls security features — file integrity, session management, CSRF, password breach scanning, and alerts.

api.services.* — Services


api.sla.* — SLA


api.system.* — System

Controls core system operations — heartbeat, logs, maintenance mode, notices, notifications, and push messaging.

api.tenants.* — Tenants


api.users.* — Users & Staff


api.whatsapp.* — WhatsApp


notifications.* — Notification Targeting

These keys are stored in the api_permissions table but control notification routing rather than API access.