← Northwind CRM
Installations · Frame (d) · route /apps/:appId/installations

Installations & scopes

Where this app is installed and at what scope — organization, portal, or user. Add an installation to make the app available to a target; remove one to revoke it. An installation whose target portal was removed or suspended shows a status, it does not crash the table.

Overview Settings & attributes Installations

Installations

3 scopes

TargetScope levelInstalled byStatus
Northwind Inc.org_01hzz…nw
organization a.admin@northwind Active
Sales portalprt_sales
portal a.admin@northwind Active
Legacy portalprt_legacy
portal system Target suspended
Add-installation dialog

Contract (anticipated — commissioned by these frames). App installations / scopes are not in the app-registry contract today. These frames commission a scoping surface — GET /api/v1/app-registry/apps/{slug}/installations, POST …/installations { scopeLevel, targetId, targetType }, and DELETE …/installations/{id} — modelled on the portal precedent's portal_apps. Every reference carries its type (targetType: organization / portal / user), never a bare id (identifier-standard). Orphaned target: an installation whose target portal was removed/suspended renders a data-installation-status="orphaned" pill and stays removable — it never throws. Add is scoped to targets the caller administers; a cross-tenant target is 403 (frame g).

Review · app-management approve or reject each flow ↓
app-listpendingApproveReject
app-detailpendingApproveReject
installationspendingApproveReject