Designing a Flow

Prev Next

You build a flow in the flow designer: you add nodes from the palette, link them, and fill in each node's inputs. To open the designer, select a flow in the project's Flows menu. See Flows.


The designer

Area What it holds
Palette The nodes you can add. A category dropdown filters them: All, or one of Message Reply, Logical Operations, Service Request, AI-Powered Dialog, Process and Transfer. The palette lists only the nodes that the open flow type allows.
Toolbar Undo and redo, Save & Close (Save in intent action flows and AI Agent tool flows), and a menu with Import, Export and, in the project's own flows, Publish.
Right rail Test Conversation, Show link names / Hide link names, Add Sticky Note, and zoom in, fit and zoom out.

Every flow already contains its Start node, and the palette never offers another one. Long node names are cut short in the palette, so hover or add the node to see its full name.


Adding and linking nodes

  1. Drag a node from the palette onto the canvas.
  2. Draw a link from one of the node's output ports to the next node. Each output port takes one link, and a node can receive any number of incoming links.
  3. Double-click the node to open its panel and fill in its inputs.

The node panel

  • To rename the node, select the pencil next to its name.
  • If the node has more options, a cog opens Advanced Settings. Select Back to return to the main inputs.
  • Select the check mark to apply your changes.

📝 Note: Pressing Esc, selecting X or clicking outside the panel closes it without applying anything you changed. Select the check mark first.

Saving

You do not need to select Save. Adding, deleting or linking nodes saves the flow straight away. Moving nodes, resizing, zooming and styling a sticky note are saved within a minute, and anything still pending is saved when you leave the page. A badge in the designer shows when the flow was last saved. Save & Close saves and takes you back to the project list.

Use the undo and redo buttons in the toolbar to step back through your changes.

Sticky notes and link names

Select Add Sticky Note to leave a comment on the canvas for whoever edits the flow next. Sticky notes do not affect how the flow runs.

Show link names shows the names on the links between nodes, and Hide link names hides them again. The designer remembers your choice.

Navigate

On a SubFlow, Virtual Agent or AI Agent node, the node's context menu has Navigate. It takes you to the subflow, virtual agent or AI agent that the node uses.


Using a subflow

A subflow is a separate flow that you call from a SubFlow node. Use one for a step that several flows share, or to keep Main readable. Create the subflow first, as described in Flows.

For example, suppose several flows ask for and check a customer number. You can put that step in one subflow:

  1. Create a subflow and rename it Verify Customer. In it, ask for the customer number and store the answer in a dynamic variable, for example CustomerNumber. Link the last node to End.
  2. Open Main and add a SubFlow node where verification belongs.
  3. Double-click the node, select Verify Customer and select the check mark.
  4. Link the SubFlow node onward. When Verify Customer reaches End, the conversation continues from the SubFlow node in Main, and CustomerNumber is still there for the next node.

How a subflow behaves:

  • It shares the caller's variables. A subflow takes no parameters. It reads and writes the same variables as the flow that called it, so pass values to it in variables. See Variables and Context.
  • End returns to the caller. The conversation continues from the SubFlow node's output.
  • Subflows can call subflows. A subflow can contain its own SubFlow nodes.
  • The Post Session Flow cannot call subflows. It offers no SubFlow node.

Why a subflow is greyed out

Some flow types cannot run every subflow. In the SubFlow node's list, a subflow that the current flow cannot use is greyed out. Hover over it to see why.

Calling flow A subflow is greyed out if it contains
Intent action A Virtual Agent node
AI Agent tool flow A Virtual Agent, Intent Recognition, AI Agent or MCP Headers node
Survey, FallbackSR A RAG Agent or Knowledge Retrieval node

Main and other subflows can call any subflow. To use a greyed-out subflow, move the node it is blocked for into a separate subflow, or build a version of the subflow without it.


Validation

The designer checks the flow every time it saves. A node that has a problem shows an invalid badge, and a node that is out of date appears faded. While the flow fails a check, Test Conversation and Publish are not available.

Before a project is published, the flows it uses must pass these checks:

Check What it requires
Required inputs Every node has its required inputs filled in.
Every branch ends Every path from Start reaches an End, End With Result, Exit or Return To Start node.
Default output You can leave a node's outputs unlinked. But once you link any of them, you must also link its default output.
Language Condition Every output of a Language Condition node is linked.
Allowed nodes Every node is one the flow type allows.
Up-to-date nodes The flow contains no out-of-date nodes. Replace them with current ones.
Subflow restrictions No called subflow contains a node its caller cannot run, as in the greyed-out table above.

Only nodes that can be reached from Start are checked. A node that nothing links to is ignored at publish.


Copying a flow with Export and Import

Export and Import copy one flow as JSON text, for example to reuse a subflow in another project.

  1. In the source flow, select Export from the toolbar menu. The Show JSON window opens.
  2. Select Copy Code. The flow is copied to your clipboard. No file is downloaded.
  3. Open the target flow, select Import and paste the text into the Import JSON window.
  4. Select Save.
  5. Open each node marked invalid and fill in its selections again.

⚠️ Warning: Import replaces the whole target flow, its sticky notes included. Import into a new, empty subflow unless you mean to overwrite.

The imported flow takes the type of the flow you import it into. A flow exported from an older version is converted to the current one when you import it. Selections that belong to a specific environment are cleared, and you must select them again:

Node Select again
Virtual Agent, Intent Recognition The virtual agent
AI Agent The AI agent
RAG Agent The knowledge base and the LLM configuration
Knowledge Retrieval The knowledge base
Ask LLM The LLM configuration
Data Table All of its inputs
Set Attribute The attribute values

Draft and published flows

You edit the draft version. When you open a published version, the canvas is read-only, Save, Import and Publish are not available, and a banner shows the version number. To make a change, open the draft and then publish the project.


Limits

Item Limit
Sticky notes per flow 20
Characters per sticky note 1,000
Lines per sticky note 100
Links per output port 1