> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flowx.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# FlowX.AI 5.12.0 Release Notes

> What's new in FlowX.AI 5.12: parallel multi-instance subworkflow fan-out, event-triggered integration workflows, bulk process-instance migration, personal-data mask and restore nodes, and a Db2 data source.

[FlowX.AI 5.12 release hero](https://s3.eu-west-1.amazonaws.com/docx.flowx.ai/5.9/hero-5.12.0.html)

> [!NOTE]
>
> **FlowX.AI 5.12 is a SaaS release.** New capabilities are available on managed (SaaS) deployments; self-hosted deployments will receive them with the next LTS release family.

> [!NOTE]
>
> **Deployment models:**
>
> * SaaS Managed FlowX cloud deployments
> * All Deployments Available in both self-hosted and SaaS

FlowX.AI **5.12** is a SaaS-managed release: FlowX handles deployment-level changes such as infrastructure, Kafka topics, and service configuration. This release lets an integration workflow fan out over a collection without a subprocess, starts workflows directly from email and webhook events, and migrates process instances to a new build in bulk. It also adds personal-data mask and restore nodes to the Integration Designer and a Db2 relational data source.

### What changed since 5.11.0

| 5.11.0 | 5.12.0 |
| - | - |
| A workflow ran once per call; fanning out over a collection needed a BPMN Call Activity and a subprocess | + **Multi-instance subworkflow node** fans a workflow over a collection directly in the Integration Designer |
| An email or webhook trigger could start a process | + **Event-triggered workflows** start an integration workflow from the same triggers |
| Process instances migrated to a new build one at a time | + **Bulk migration** moves a filtered set of instances in one operation |
| Personal-data handling was configured on the agent | + **Mask and restore nodes** place it as explicit workflow steps, with details in the run log |

***

**What's new?**

**Integrations & Data**

🔀 [**Multi-instance subworkflow node**](#multi-instance-subworkflow-node) - Fan a workflow out over a collection\
⚡ [**Event-triggered workflows**](#event-triggered-workflows) - Start a workflow from an email or webhook\
🗄️ [**Db2 relational data source**](#db2-relational-data-source) - Connect to Db2 for i or Db2 LUW\
🔻 [**Subworkflow failure exit**](#subworkflow-failure-exit) - Send a failed mapping down its own branch\
🔓 [**Skip TLS verification on a REST data source**](#skip-tls-verification-on-a-rest-data-source) - Reach a trusted internal host with an untrusted certificate\
🔔 [**Send Notification node**](#send-notification-node) - Send a templated notification straight from a workflow

**AI Platform**

🛡️ [**Personal-data mask and restore nodes**](#personal-data-mask-and-restore-nodes) - Explicit workflow steps with run-log detail\
🧩 [**Reusable functions as agent tools**](#reusable-functions-as-agent-tools) - Give an agent a deterministic function to call\
👍 [**Chat response feedback**](#chat-response-feedback) - Let users rate an agent's answer, and theme how it looks\
📏 [**Custom evaluators**](#custom-evaluators) - Score an agent against a rubric you write yourself\
🔍 [**Deep Research node**](#deep-research-node) - Research a question across the open web and file a cited report\
🛠️ [**Built-in agent tools by category**](#built-in-agent-tools-by-category) - Twenty ready-made tools an agent can use, picked by category\
🪄 [**AI Designer builds UI Flows**](#ai-designer-builds-ui-flows) - Generate and edit multi-page UI Flows from a description

**Platform**

📦 [**Bulk process-instance migration**](#bulk-process-instance-migration) - Move a filtered set of instances to a new build\
🔎 [**Runtime list filters and a Workflow Instances page**](#runtime-list-filters-and-a-workflow-instances-page) - Find the failed run without scanning the list\
🎨 [**Process canvas editing**](#process-canvas-editing) - Connect, reshape and resize more directly on the BPMN canvas\
⚠️ [**Check a version for issues**](#check-a-version-for-issues) - Validate every workflow in the version from one panel\
🧱 [**Reusable UI Templates in UI Flows**](#reusable-ui-templates-in-ui-flows) - Reuse a template on UI Flow pages, not just User Tasks\
🌿 [**Branch management**](#branch-management) - Merge to any branch, archive or delete the ones you are done with

### **Multi-instance subworkflow node**

> **Multi-instance subworkflow node**
>
> **Overview**
>
> **Before 5.12.0:** running an integration workflow once per item in a collection meant leaving the Integration Designer, wrapping the workflow in a BPMN process and fanning out with a multi-instance Call Activity. **Now:** the Subworkflow node fans out over an array on its own, in parallel.
>
> Turn on **Parallel Multi-Instance** under **Execution** on a Subworkflow node, pick the **Input Array** to iterate, and pick the **Output Array** that collects each run's result. The node starts one subworkflow instance per element of the input array and gathers the results into the output array on the parent workflow.
>
> **Key Features**
>
> > **Input Array**
> >
> > The array of objects to iterate. One subworkflow instance starts per element. Required.
>
> > **Output Array**
> >
> > The array each instance result is collected into. Required.
>
> > **Correlation attribute**
> >
> > Optional. Decides which output array element each result updates. Results matching no element, or all results when no attribute is set, are appended.
>
> > **Runs in parallel**
> >
> > Instances run in parallel, and fan-out stays inside the Integration Designer instead of requiring a BPMN Call Activity.
>
> For the full configuration reference, see [Parallel multi-instance](/5.9/docs/platform-deep-dive/integrations/integration-designer.md#parallel-multi-instance) on the Subworkflow node.
> SaaS

### **Event-triggered workflows**

> **Event-triggered workflows**
>
> **Overview**
>
> **Before 5.12.0:** an incoming email or webhook could start a process. **Now:** the same triggers can start an integration workflow directly.
>
> A workflow declares the trigger it listens for, and the platform keeps a subscription registry so a change to that trigger takes effect without rebuilding the whole app. Incoming email and webhook events are routed to the workflow that subscribes to them.
>
> **Key Features**
>
> > **Email and webhook triggers**
> >
> > Both trigger types can start a workflow, not only a process.
>
> > **Subscription registry**
> >
> > Trigger changes update the affected data source without a full build recompute.
>
> **Architecture**
>
> | Concern | System | Notes |
> | - | - | - |
> | Trigger subscription changes | admin, integration-designer, application-manager | Design-time changes update the runtime subscription registry |
> | Event delivery | email-gateway, webhook-gateway, integration-designer | Events are routed to the subscribing workflow |
> | Webhook state | webhook-gateway | The webhook gateway now also reads the runtime registry, adding a MongoDB dependency it did not previously have |
>
> On SaaS these changes are applied automatically. See [Deployment guidelines v5.12.0](/release-notes/v5.x/v5.12.0-september-2026/deployment-guidelines-v5.12.md) for the topic and dependency detail.
>
> For the full configuration reference, see [External triggers](/5.9/docs/platform-deep-dive/integrations/integration-designer.md#external-triggers) on the Start node.
> SaaS

### **Bulk process-instance migration**

> **Bulk process-instance migration**
>
> **Overview**
>
> **Before 5.12.0:** moving running process instances onto a new build was a one-at-a-time operation. **Now:** a filtered set of instances migrates in a single run.
>
> Select the target build, filter the instances to move, check the migration for problems before committing to it, and then run it. Progress and per-instance outcomes are available while it runs, and terminated instances are handled explicitly rather than failing the batch.
>
> > **[Documentation](/5.9/docs/projects/runtime/active-process/migrate-process-instances.md)**
> >
> > See migrating process instances.
>
> **Key Features**
>
> > **Filter then migrate**
> >
> > Move specific instance UUIDs, the instances matching a process, node and status filter, or every eligible instance.
>
> > **Pre-flight check**
> >
> > Validate a migration before running it.
>
> > **Per-instance outcomes**
> >
> > Inspect details and results for the instances in a batch.
>
> > **Audit trail**
> >
> > Migrations are recorded against the instances they touch.
>
> For the full configuration reference, see the [Migrate process instances](/5.9/docs/projects/runtime/active-process/migrate-process-instances.md) documentation.
> SaaS

### **Runtime list filters and a Workflow Instances page**

> **Runtime list filters and a Workflow Instances page**
>
> Finding a failed run no longer means scanning an unfiltered list. The **Process Instances** and **UI Flow Sessions** lists gain a multi-select **Status** filter and a start-date filter on their columns, so "every failed instance since last night" is two clicks.
>
> Workflow runs get more: a new **Workflow Instances** page under **Runtime** lists every run in the project, filterable by **Status**, by date, and by **Origin**: whether a run was started by a process, a UI Flow, a webhook, or an email trigger. Until now, a workflow's runs were only visible from inside that workflow in the Integration Designer.
>
> For details, see the [Workflow Instances](/5.9/docs/projects/runtime/workflow-instances.md) documentation.
> SaaS

***

### **Personal-data mask and restore nodes**

> **Personal-data mask and restore nodes**
>
> **Overview**
>
> **Before 5.12.0:** personal-information handling was configured on the agent rather than placed in the flow. **Now:** masking and restoring personal data are workflow nodes you position explicitly, and you choose which key from the node input they apply to.
>
> Put a mask node before the step that must not see the raw values and a restore node after it. The workflow run log shows what each node did, so a run can be inspected without exposing the underlying data.
>
> > **[Documentation](/5.9/ai-platform/personal-information-guard.md)**
> >
> > See the Personal Information Guard documentation.
>
> **Key Features**
>
> > **Mask and restore as nodes**
> >
> > Personal-data handling becomes an explicit step in the workflow.
>
> > **Selectable input key**
> >
> > Choose which key from the node input the node applies to.
>
> > **Run-log detail**
> >
> > A restore reports whether it completed, partially completed or failed, and how many of the issued placeholders it put back.
>
> For the full configuration reference, see [Masking and restoring across several nodes](/5.9/ai-platform/personal-information-guard.md#masking-and-restoring-across-several-nodes).
> SaaS

### **Db2 relational data source**

> **Db2 relational data source**
>
> IBM Db2 joins the relational database data sources available in the Integration Designer. Because Db2 products use different drivers, ports and catalogs, the connection starts with a **Db2 Product** choice and the rest of the form follows from it. **Db2 for i (IBM i)** is the default and **Db2 LUW** is also supported. **Db2 for z/OS** appears in the list but is not implemented in this release, and selecting it fails with an explicit error rather than falling back to another driver.
>
> The port is prefilled from the product and whether SSL is on. Db2 for i adds a naming convention, an optional library and library list, and a switch for returning character data that the host reports as binary. On Db2 for i, connections also open **read-only by default**, so turn that off if your queries need to write, and the transaction isolation level defaults to none, because a table without a journal cannot take part in a transaction. Isolation is validated when the data source is saved rather than when a query first runs.
>
> For the full configuration reference, see the [Db2 Database](/5.9/docs/platform-deep-dive/integrations/db2-database.md) documentation.
> SaaS

***

### **Subworkflow failure exit**

> **Subworkflow failure exit**
>
> A Subworkflow node now has a second exit. Connect the red one and a failure takes its own branch instead of stopping the parent workflow. It is opt-in per node, so a node without that branch fails and blocks exactly as before and nothing changes for existing workflows.
>
> Only a mapping failure routes, which is the kind a workflow can be built to handle: the input mapper failing, the input not satisfying what the subworkflow expects, or the output mapper failing on merge-back. An unset subworkflow, a missing response key, no mapping at all, and the node and depth limits all still stop the run. The branch reads a fixed `subWorkflowError` key that says which mapping failed and, when a child did start, which run it was.
>
> For the full configuration reference, see [Routing a subworkflow failure](/5.9/docs/platform-deep-dive/integrations/integration-designer.md#routing-a-subworkflow-failure).
> SaaS

***

### **Skip TLS verification on a REST data source**

> **Skip TLS verification on a REST data source**
>
> A REST data source can now be told to stop checking the certificate of the host it calls, for the cases where an internal endpoint presents a self-signed or mismatched certificate and the alternative is an infrastructure workaround. It is off by default and set per data source, so turning it on for one connector leaves every other call verified.
>
> The Designer warns while it is on, because the call can no longer tell the intended host from anything intercepting it. One consequence is worth knowing before you use it: a truststore configured under Certificates is ignored while verification is skipped, since skipping replaces it rather than adding to it.
>
> For the full configuration reference, see [TLS verification](/5.9/docs/platform-deep-dive/integrations/integration-designer.md#tls-verification) on a REST data source.
> SaaS

***

### **Send Notification node**

> **Send Notification node**
>
> Workflows can now send notifications themselves. A **Send Notification** node, under **Tools** in the workflow node palette, takes one of your project's notification templates, fills its variables from workflow data, and sends it, without routing through a process just to reach the Notifications plugin.
>
> Address it with **To**, **Cc** and **Bcc**, as fixed addresses or `${}` keys. Email options are all overridable per node: subject, sender name and email, attachments by file path or `${}` key, and custom headers. The node reports the outcome under its response key, including recipient counts and the error when sending fails, so the workflow can branch on it.
>
> For the full configuration reference, see the [Send Notification node](/5.9/docs/platform-deep-dive/integrations/integration-designer.md#send-notification-node) documentation.
> SaaS

***

### **Reusable functions as agent tools**

> **Reusable functions as agent tools**
>
> An AI node's tools can now include a **Function**, alongside built-in web search, an MCP server, and a workflow. Point an agent at a reusable function when the work is deterministic and you would rather it call your code than reason its way there.
>
> A function has to be typed to qualify: it needs both an input and an output slice, and functions without them do not appear in the picker. Give it a description as well, since that is what tells the agent when to reach for it.
>
> For the full configuration reference, see the [Custom Agent node](/5.9/docs/platform-deep-dive/integrations/custom-agent-node.md) documentation.
> SaaS

***

### **Chat response feedback**

> **Chat response feedback**
>
> Users can rate an agent's answer in the chat component, and follow the rating with a reason. The ratings are recorded in audit, so the quality of a deployed agent becomes something you can look at rather than guess at.
>
> The feedback controls and the reason chips are themable, with their own selected and hover states, so they can be styled to match the rest of the interface. The SDKs expose the same feedback state to custom front ends.
>
> For the full configuration reference, see [Rating an answer](/5.9/ai-platform/chat-component.md#rating-an-answer) on the chat component.
> SaaS

***

### **Custom evaluators**

> **Custom evaluators**
>
> The evaluator catalogue is no longer fixed. When none of the built-in rubrics measures what you care about, you can write your own evaluator, give it the scoring instructions the judge LLM should follow, and it appears in the catalogue under a **Custom** group alongside the built-in ones.
>
> Choose **Numeric** scoring for a score between 0 and 1 with a pass threshold, or **Binary** for a straight pass or fail. You can start from an existing evaluator to adapt a built-in rubric rather than writing a prompt from scratch. Custom evaluators belong to the workflow you create them in, and unlike the built-in ones they can be edited and deleted.
>
> For the full configuration reference, see the [Evaluations](/5.9/ai-platform/evaluations.md#custom) documentation.
> SaaS

***

### **Deep Research node**

> **Deep Research node**
>
> A new AI node researches a question across the open web and files a cited report into a Knowledge Base. It plans the work, sends sub-researchers out to search and read pages, grades what they bring back, and keeps going until its budget is spent or it has enough to report.
>
> Unlike a Custom Agent, you do not write the method: the research prompt is built into the node, so you describe the subject and bind workflow data into it. Depth is a **Quick**, **Standard** or **Deep** preset, or **Custom** if you want to set the number of passes and tool calls yourself. You can restrict which domains the research may read, with an allow list, a deny list, or both.
>
> The result always lands in a Knowledge Base as text, so retrieval nodes and other agents can reach it later. Rendering it as a document is optional.
>
> For the full configuration reference, see the [Deep Research node](/5.9/docs/platform-deep-dive/integrations/deep-research-node.md) documentation.
> SaaS

***

### **Built-in agent tools by category**

> **Built-in agent tools by category**
>
> A Custom Agent's built-in tools are now a catalog you pick from by category: **Math tools**, **List tools**, **Date tools**, **Text tools**, and **Web search**. Each category row shows exactly which tools it turns on, and the agent runs deterministic code for that work instead of estimating it in the model.
>
> The catalog holds twenty tools, fifteen of them new: a full date family (business days, date arithmetic, formatting, parsing, timezone conversion), text helpers (regex match and extract, fuzzy match), unit conversion, and list aggregation, joining the original calculator, compare, sort, and filter. Web search is part of the same catalog rather than a separate toggle.
>
> Selection stays opt-in and per node. Agents saved with the old toggles keep working without an edit.
>
> For details, see the [Custom Agent node](/5.9/docs/platform-deep-dive/integrations/custom-agent-node.md) documentation.
> SaaS

***

### **AI Designer builds UI Flows**

> **AI Designer builds UI Flows**
>
> The AI Designer now works at the level of a whole UI Flow. Describe the journey and it generates a multi-page flow: structure first, pages filled in parallel, navigation wired between them. Ask for a change and it edits the affected pages instead of regenerating everything.
>
> Proposals appear on the UI Flow canvas as a draft for you to review, the editor stays locked while one is pending, and any data-model changes the flow needs are presented for approval on every turn, the same way single-screen generation already works.
>
> For details, see the [AI Designer](/5.9/ai-platform/pre-built-agents/ai-designer.md#ui-flow-generation-and-editing) documentation.
> SaaS

***

### **Check a version for issues**

> **Check a version for issues**
>
> The Designer can now validate the resources in a project version and collect what it finds in one **Issues** panel at the bottom of the screen. Findings are marked where they occur, on resource lists, page titles and workflow canvas nodes, and selecting a marker opens the panel on that finding.
>
> Checks run when you ask for one, and the panel says when it last ran so a stale result is obvious. You can scope the list to the whole version, the resource you are in, or the node you have selected, filter it by severity or text, and group it by resource or severity. Opening **Commit Changes to Version** runs a check on its own and shows each changed resource's state beside it, as a review step rather than a gate. Integration workflows are the resource type validated in this first iteration.
>
> For the full configuration reference, see the [Checking a version for issues](/5.9/docs/projects/managing-applications/checking-for-issues.md) documentation.
> SaaS

***

### **Branch management**

> **Branch management**
>
> Project branches gained a management layer. The merge modal now offers every branch you can merge into, not just the current branch's parents, so a fix made anywhere can land anywhere it is needed.
>
> Branches you are done with no longer linger: **Archive Branch** retires one (with a required reason, shown later in its info panel), **Unarchive Branch** brings it back, and **Delete Branch** removes one permanently, guarded so it refuses while child branches, an uncommitted draft, or a running merge depend on it, and asks you to type the branch name when unmerged work would be lost. Deleting has its own permission.
>
> Branch and version info panels round it out: a version merged from another branch says where it came from, including whether that branch has since been archived.
>
> For details, see [Managing branches](/5.9/docs/projects/managing-applications/versioning.md#managing-branches).
> SaaS

***

### **Process canvas editing**

> **Process canvas editing**
>
> The BPMN canvas gains a set of direct editing improvements. A **New Node** panel and
> drop-anywhere connecting make it quicker to add a node and wire it up, connecting to a nearby
> node no longer means aiming precisely at a handle, and sequence flows can be reshaped by
> dragging their control points. Swimlanes now resize from any of their four edges. The
> process-instance viewer picks up the same canvas.
>
> The canvas is deliberately unchanged to look at, so existing diagrams, habits and screenshots
> still hold.
>
> For the full configuration reference, see [Faster ways to build](/5.9/docs/building-blocks/process/process.md#faster-ways-to-build) on the Process Designer canvas.
> SaaS

***

### **Reusable UI Templates in UI Flows**

> **Reusable UI Templates in UI Flows**
>
> A Reusable UI Template can now be built for **UI Flow** pages as well as for the User Tasks in a process. Each template declares where it is used when you create it, and the UI Flow editor can drop templates onto a page the same way the Process editor always could.
>
> The host type also decides which actions a template's event handlers offer, so a template built for UI Flows gets navigation and workflow actions while one built for processes gets node actions. Because of that the choice is fixed once the template exists, and templates you created before this release count as Process templates, so nothing you already built changes.
>
> For the full configuration reference, see [Where a template can be used](/5.9/docs/building-blocks/reusable-resources/reusable-ui.md#where-a-template-can-be-used) in the Reusable UI Templates documentation.
> SaaS

***

## Shipped by

This release is the work of the FlowX engineering team across backend, frontend, AI, infra, QA, and docs. It also belongs to the customers who told us what was broken last quarter. Thank you.

***

## Deployment guidelines

For component versions, environment variables, Kafka topics, and migration guidance, see [Deployment guidelines v5.12.0](/release-notes/v5.x/v5.12.0-september-2026/deployment-guidelines-v5.12.md).


## Related topics

- [FlowX.AI 5.13.0 Release Notes](/release-notes/v5.x/v5.13.0-september-2026/v5.13.0-september-2026.md)
- [FlowX.AI 5.1.12 Release Notes (LTS)](/release-notes/v5.x/v5.1.x-lts/v5.1.12-august-2026.md)
- [FlowX.AI 5.1.13 Release Notes (LTS)](/release-notes/v5.x/v5.1.x-lts/v5.1.13-september-2026.md)
- [FlowX.AI 5.9.5 Release Notes (LTS)](/release-notes/v5.x/v5.9.5-september-2026/v5.9.5-september-2026.md)
- [FlowX.AI 5.0.0 Release Notes](/release-notes/v5.x/v5.0.0-july-2025/v5.0.0-july-2025.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.