Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.cognite.com/llms.txt

Use this file to discover all available pages before exploring further.

This article explains how Draft and Published states apply to each deployed version of a Flows custom app, and how the active version determines what users see on the Custom apps page in Cognite Data Fusion (CDF). Every version of a Flows custom app has a lifecycle state that controls whether it can be modified. Separately, an app has at most one active version — the build users run when they open the app from Custom apps.

Version states

Each app version is always in one of two states — Draft or Published. The state controls whether you can change its files and how you promote that build for users.

Draft

A version starts as Draft after you run apps deploy. Draft versions:
  • Are mutable — you can redeploy to update files, change the entry point, or iterate freely.
  • Can be shared via a direct link.
  • Are not the active version until you explicitly activate them.

Published

To transition a version from Draft to Published, run apps publish. Published versions:
  • Are immutable — files and configuration are locked and cannot be changed.
  • Can be shared via a direct link.
  • Can be set as the active version for the app.
The transition from Draft to Published is irreversible. To make changes, deploy a new version.

Active version

An app has zero or one active version at any time. If no version is active, the app does not appear on the Custom apps page in CDF. Once you activate a version:
  • The app becomes visible on the Custom apps page, and the activated version is what users open.
  • It is the version served when no specific version is requested in the URL.
Setting a version as active automatically replaces the previous active version. Rollback is instant — activating any previously published version takes effect immediately with no file operations.

CLI commands

# Deploy (creates or updates a Draft version)
npx @cognite/cli@latest apps deploy --interactive

# Publish (Draft → Published, makes the version immutable)
npx @cognite/cli@latest apps publish --interactive

# Activate (publishes if needed, then sets as the active version)
npx @cognite/cli@latest apps activate --interactive

# Check current state
npx @cognite/cli@latest apps status --interactive
apps activate combines publish and activate in one step. Use it when you’re ready to ship directly without a separate review.

Typical workflow

deploy > (share draft link for review) > publish > activate
To ship directly without a review:
deploy > activate

Further reading

Last modified on May 12, 2026