Skip to content

Installable apps

A Caraer app packages the capabilities of an integration. It can declare installer settings, permission requirements, functions, webhooks, lifecycle hooks, app bars, and CMS modules. Each installation supplies the company context your integration runs in.

Customers can configure your integration through a repeatable installation flow. Instead of building a separate setup process for every company, you can let each installer choose mappings and connections while maintaining one app definition.

Package an external service as an app with an object picker, a field mapping, a connection to your service, and an action that starts processing. Store company-specific configuration on the installation and use a lifecycle hook for setup work.

Build a private app in a sandbox, then add settings and permissions, external OAuth, or secrets as needed. The CLI supports validation, deployment, and runtime inspection.

Private apps belong to their owning company. Public apps have a separate submission and review process; deploying code does not make an app publicly listed. An installation grants only its approved permissions, and configuration must be designed for each company’s actual schema.