POST /api/v1/decision-flows/rollback
Restores a decision flow to a previously published version. Instead of overwriting history, rollback creates a new version that contains the configuration from the target version. This means the version history is fully immutable — you can always see when a rollback happened and what it restored. For example, if a flow is currently at version 5 and you roll back to version 3, the system creates version 6 whose configuration matches version 3. Versions 4 and 5 remain in the history for auditing.Authentication
Requires a valid tenant and the admin role.Request Body
Example Request
Example Response
The response returns the full updated decision flow record, including the new version inpublishedVersions.
What Happens on Rollback
- The target version’s
configSnapshotis looked up from the flow’s published version history. - A new version is appended (e.g., version 6) with the restored configuration and rollback notes.
- The flow’s
draftConfigis replaced with the restored configuration. - The flow’s
statusis set toactive. - Entity caches (offers, decisioning gates) are invalidated so the rolled-back configuration takes effect immediately.
- An audit log entry is recorded with the rollback details, including the source and target version numbers.
Optimistic Concurrency
The rollback usesrowVersion-based optimistic concurrency control. If another user modifies the same flow between your read and the rollback, the request returns a 409 Conflict and you should retry.
Error Responses
See also: Decision Flow Versions | Decision Flows | Change History