Permissions & events

Declare explicit capabilities and communicate without compile-time coupling.

Permissions

List every permission your module needs in the manifest. Core middleware checks keys such as my-integration.records:write before handlers run. Cross-module data access requires user consent at install time when you declare requiredPermissions owned by other modules.

Events

Emit events for workflows other modules can subscribe to (e.g. my-integration.record.created). Consume events to react to CRM, Sites, or Pay activity without polling. Payloads should be versioned and documented in your manifest event schema.

Approvals

Outbound side effects (email, refunds, publishes) may require human approval via the tenant approval inbox. Internal summaries and read-only analytics typically auto-approve.