Audience and scope
This guide is for operators of self-hosted FlowX.AI 5.1.x LTS deployments upgrading to 5.9.x LTS. The 5.9.x LTS family opens with 5.9.0 (target 2026-06-02) and continues with monthly LTS patches from July 2026 onward.- In scope: Self-hosted deployments running any 5.1.x patch level.
- Out of scope: SaaS deployments. They are continuously upgraded on the SaaS line and do not perform this migration. Any other self-hosted source version requires a FlowX-assisted custom migration plan.
Get your Organization UUID
FlowX issues an Organization UUID when your organization registers with FlowX SaaS for license validation and usage reporting. Request it from your FlowX representative before the upgrade window starts. You will need this single UUID for:- The
ORGANIZATION_IDLiquibase parameter on 9 services (application-manager,authorization-system,cms-core,document-plugin,integration-designer,notification-plugin,organization-manager,process-engine,scheduler-core). See Organization & deployment configuration for the full behavior. - The
FLOWX_LICENSE_ORGANIZATIONIDruntime env var on thelicenseservice (OAuth client-id for the FlowX SaaS license handshake. Different env var, same UUID value). - The
Fx-Organization-IdKafka header on every custom producer.
Inventory to gather
Before the upgrade window, capture the following from your current 5.1.x deployment:1
Current component versions
Open FlowX.AI Designer โ Platform Status and record the version of each FlowX component. You will compare these against the 5.9.x targets in the v5.9.0 deployment guidelines after the upgrade.
2
Current SDK versions
List the
@flowx/* web SDK package versions in each container app, plus the iOS and Android renderer versions. iOS and Android renderers ship on the 9.0.x line in 5.1.x; 5.9.x targets the 10.x line. Web @flowx/* packages follow the Designer version baseline, not the renderer 9/10 numbering.3
Keycloak realms and clients
Export the list of realms, clients, client scopes, and protocol mappers from your current Keycloak. 5.9.x introduces a dedicated service-accounts realm and renames every service-account client to a
flowx-{service}-sa pattern. See Authentication & IAM migration.4
Kafka topic ACLs and custom producers
If you manage Kafka topic ACLs manually, list every topic and its producers/consumers. The
WorkspaceCreatedEvent topic ownership changes on 5.9.x. List every custom Kafka producer your team operates. Each must add the Fx-Organization-Id header on 5.9.x.5
Custom API clients
Identify any internal tooling that calls:
GET /api/process-definition/{uuid}/get-input-json. Renamed to/get-start-metadataon 5.9.x.PATCH /api/platform/environment. Removed on 5.9.x.
6
Partitioning configuration
If you enabled data partitioning on 5.1.x, capture the current
scheduler.dataPartitioning YAML block and the five related env vars. The structure and names change on 5.9.x; your FlowX representative will share the new YAML during the upgrade plan.7
Backups
Take fresh backups of:
- All Postgres databases (per-service).
- All MongoDB databases (per-service).
- Keycloak realm exports.
- SpiceDB schema and relations.
Dropped third-party dependency versions
The following third-party versions are no longer supported in 5.9.0. Upgrade them before the FlowX 5.9 upgrade window โ running an unsupported version after the FlowX upgrade is not covered by the standard support process.Versions are dropped from the supported list as upstream support is no longer provided. For the full supported-version matrix (Keycloak, PostgreSQL, MongoDB, Oracle, Elasticsearch Sink Connector, renderer SDKs), see the v5.9.0 deployment guidelines โ Third-party supported component versions.
Infrastructure deltas
The 5.1 โ 5.9 jump adds several runtime dependencies your 5.1.x environment may not already have:New services to deploy
5.9.x ships several microservices that do not exist in a 5.1.x deployment. Ensure Helm charts and infrastructure are provisioned for these before upgrading:The AI Platform is also new on 5.9.x. If your deployment uses AI features, refer to the AI Platform setup guide for the full list of AI services (agent-builder, knowledgebase-rag, embedder, and others) and their infrastructure requirements (Qdrant and S3).The AI Platform also ships a versioned documentation image (
flowx-docs:5.9.0) that is mounted into the AI Assistant so it can answer from the FlowX documentation. It is a content image, not a standalone service; pull the version matching your release (see the component versions in the deployment guidelines).Rollback considerations
The upgrade migrates identity, configuration, and runtime data in place across systems that reference each other, which is what rules out a partial rollback. Restoring one of them while the rest stay on 5.9.x leaves the platform inconsistent rather than recovered.What the upgrade changes for good
Most of what makes the upgrade one-way sits in these areas:- Identity. Keycloak realms and every service account are reorganized during the upgrade. Going back means returning to the realm export taken beforehand, and with it losing the end users onboarded, passwords reset, and MFA enrolled since cutover.
- Platform data. The database migrations are forward-only, and process instances are migrated in place. Runtime work that advanced on 5.9.x has no 5.1.x equivalent to return to.
- Access model. End-user groups, solution sharing, and UI Flow permissions become FlowX-managed records with no 5.1.x counterpart, so the access configuration your teams rebuild after the upgrade does not survive a restore.
- AI capabilities. Knowledge Base content is indexed into a new vector database, and the AI services it replaces leave the deployment. Returning to 5.1.x means standing the previous AI stack back up and rebuilding its indexed content.
- Client applications. The web, iOS, and Android renderers move to a new SDK line, and custom integrations adopt a changed API surface. Reverting the platform means reverting those releases too โ for mobile apps, on app-store review timelines.
Plan the window around this
Because rollback costs data, the mitigations all sit before and during the upgrade rather than after it.1
Rehearse on a full copy of production
Restore a recent production backup into an isolated environment and run the complete upgrade against it, including the restore procedure itself. The rehearsal is where you find out whether your backups are actually restorable.
2
Take the backups immediately before cutover, with runtime traffic stopped
Stop runtime traffic before the backups so the restore point sits as close as possible to the cutover. Every minute of traffic accepted after the backup is data a rollback would discard.
3
Put the go/no-go decision before first login
Everything up to and including the data-sync job is platform work on already-migrated data. Once users log in and runtime traffic resumes, new business data accumulates on 5.9.x and the cost of restoring climbs with every hour. Make the abort decision at that boundary โ see the data-sync step for what has to complete before anyone logs in.
4
Agree the acceptable data loss with the business
Confirm before the window who accepts the loss of post-cutover runtime data if a restore is called, and how long the platform may stay unavailable while it runs.
This applies to crossing the LTS boundary. Moving between patch releases inside the 5.9.x family (5.9.1 to 5.9.2, for example) is a routine in-family upgrade covered by the LTS compatibility guarantee, and carries none of the migrations above.
Next
Authentication & IAM migration
Start with this. It is the largest single break.
Runtime authorization migration
Project-scoped roles, end-user groups, per-environment sharing.

