App Environments and Sharing Rules

How an app's environment (Development or Production) controls who can see and install it.

Every app you create in the DDx API Console is tagged with an environment: Development or Production. The environment is selected at app creation time and cannot be changed afterward.

The environment controls whether an app is eligible to be shared beyond its own workspace and to appear in the Admin API. Eligibility alone does not make an app visible to others; the actual sharing has to be granted separately (see How sharing is granted below).

Sharing rules at a glance

BehaviorDevelopmentProduction
Who can create the appAny workspaceOrganizational workspaces only
Default visibility on creationOwn workspace onlyOwn workspace only
Eligible to be installed by other workspacesNoYes, after approval by DDx
Eligible for "All child workspaces", "All workspaces", or custom workspace-access sharingNoYes, after approval by DDx
Returned by the Admin API (sources, destinations, API keys endpoints)NoYes, once the app is shared cross-workspace

How sharing is granted

There is currently no self-serve way to change an app's sharing scope after creation. New apps, in any environment, start with sharing scope CurrentWorkspaceOnly, meaning the app is only visible to the workspace that created it.

To make a Production app visible or installable beyond its own workspace, contact [email protected]. DDx staff can set the app's sharing scope to one of:

  • All child workspaces — visible to every workspace under the creator's workspace.
  • All workspaces — visible to every workspace in the Console.
  • Custom workspace access — visible only to a specific list of workspaces you provide.

Development apps are not eligible for any of these scopes; they always remain in the creator's workspace.

Admin API visibility

The Admin API only reads an app's existing sharing scope; it does not grant or change it. An app appears in responses from endpoints like GET /workspaces/{id}/interactionsApi/sources or POST /workspaces/{id}/interactionsApi/apiKeys only if:

  1. Its environment is Production, and
  2. Its sharing scope already permits the calling workspace.

If you are integrating via the Admin API and a Production app is missing from the response, the most likely cause is that no cross-workspace sharing scope has been granted yet.

Related

🤔

Have a question that isn't answered here? Reach out to us at [email protected].