Base path
All version control endpoints are scoped to a specific flow:Enable and disable version control
Version control is toggled through the main flow update endpoint, not a dedicated version endpoint.Enable
SetversionControlEnabled to true in the request body. The system creates a V 1.0 deployed version and a Staging working version, both containing the flowβs current nodes and edges.
Disable
SetversionControlEnabled to false. Optionally include sourceVersionId to choose which versionβs state is extracted back into the base flow. If omitted, the deployed version is used.
Get deployed version
Retrieves the currently deployed (production) version with its full node and edge data.Response
Returnsnull if version control is not enabled or no deployed version exists.
UUID of the deployed version.
UUID of the parent flow.
Display name of the version (for example,
V 1.0).UUID of the active history snapshot.
User ID of the last modifier.
Whether this is a staging version.
Whether this is the production version.
Array of node objects in this version.
Array of edge objects in this version.
Timestamp when the version was created.
Timestamp when the version was last updated.
Create version
Creates a new version by copying nodes and edges from an existing source version.Request body
Display name for the new version.
UUID of the version to copy nodes and edges from.
Response
Whether the version was created.
Human-readable status message.
The created version with its full node and edge data. Same shape as the deployed version response.
Example
Publish to production
Copies the current state of a source version into the deployed version and increments the production version number.Request body
UUID of the version to publish. Cannot be the deployed version itself.
Response
Whether the deployment succeeded.
Human-readable status message.
The updated deployed version with its full node and edge data.
Behavior
- Version control must be enabled on the flow
- The source version cannot be the deployed version
- The production version name is auto-incremented:
- Same source as last publish: minor version increments (for example,
V 1.0toV 1.1) - Different source: major version increments, minor resets (for example,
V 1.1toV 2.0)
- Same source as last publish: minor version increments (for example,
- A history snapshot labeled
Published as V x.yis created on the source version
Example
Rollback version
Restores a version to a previous history snapshot. Creates a new history entry with the restored snapshotβs nodes and edges β the original history is preserved.Request body
UUID of the version to roll back.
UUID of the history snapshot to restore.
Response
Whether the rollback succeeded.
Human-readable status message.
UUID of the newly created history entry.
The updated version summary.
Example
List versions
Returns a paginated list of all versions for a flow.Query parameters
Page number.
Number of versions per page.
Response
Array of version summaries, each containing:
idβ Version UUIDversionNameβ Display nameisStagingβ Whether this is the staging versionisDeployedβ Whether this is the production versionhistoryCountβ Number of history snapshotsupdatedByβ User ID of last modifiercreatedAt/updatedAtβ Timestamps
Pagination metadata with
total, page, pageSize, and totalPages.Example
cURL
List version history
Returns a paginated list of history snapshots for a specific version.Query parameters
Page number.
Number of history entries per page.
Response
Array of history entries, each containing:
idβ History snapshot UUIDflowVersionIdβ Parent version UUIDupdatedByβ User ID who created this snapshotnodeCountβ Number of nodes in this snapshotedgeCountβ Number of edges in this snapshotisCurrentβ Whether this is the versionβs active snapshotversionNameβ Optional label (for example,Published as V 1.1)createdAtβ Timestamp
Pagination metadata with
total, page, pageSize, and totalPages.Example
cURL
Errors
The version control endpoints return standard HTTP error codes with descriptive messages.| Status | Condition |
|---|---|
400 | sourceVersionId is missing when creating a version |
400 | Flow not found |
400 | Version control is not enabled on the flow |
400 | Attempting to publish the deployed version to itself |
404 | Version or history snapshot not found |