Flow Builder
The Flow Builder is a visual drag-and-drop canvas where you connect nodes to build your chatbot conversation flow.
Open the Flow Builder
- Go to AI Agents
- Click on a Workflow Bot
- The flow builder opens automatically
Canvas Controls
| Action | How |
|---|---|
| Pan | Click and drag on empty canvas |
| Zoom | Scroll wheel, or use +/− buttons |
| Select node | Click on a node |
| Move node | Click and drag a node |
| Connect nodes | Drag from an output handle to an input handle |
| Delete connection | Click the edge and press Delete |
| Delete node | Select node → press Delete or use the node menu |
Node Palette
The left sidebar shows available node types. Click a node type to add it to the canvas.
Node Categories
Send Messages
- Send Text
- Send Image
- Send Video
- Send Document
- Send Audio
- Send Button Message (interactive)
- Send List Message (interactive)
- Send Template Message
Ask / Collect Input
- Ask Question (text)
- Ask Number
- Ask Phone
- Ask Email
- Ask Date
- Ask URL
- Ask Media / File
- Ask Location
- Ask Choice (multiple choice buttons)
Logic & Flow Control
- Condition (if/else branching)
- Delay (wait before next step)
- AI Agent (hand off to another bot)
Actions
- HTTP Request (call an external API)
- Update Contact Column (set a custom attribute)
- Update Contact Tag (add/remove tag)
- AI Generate (generate dynamic text using AI)
- Assign Agent (assign conversation to team member)
- Resolve Conversation
Building a Flow
Step 1: Start with a Trigger
Every flow must start with an On Message trigger node. It’s added automatically when you create a new bot.
Step 2: Add Nodes
- Click a node in the Node Palette (left sidebar)
- It appears on the canvas
- Drag it to position it
Step 3: Connect Nodes
- Drag from the output handle (circle on the right/bottom of a node) to the input handle of the next node
- Conditional nodes have two outputs: True (yes path) and False (no path)
Step 4: Configure Each Node
Click on a node to open its configuration panel on the right:
- Set the message text, media, or logic
- Map variable placeholders to contact attributes
- Configure conditions and operators
Step 5: Test the Flow
Use the Test button to simulate the flow in a preview mode.
Step 6: Save and Publish
- Click Save to save your progress as a draft
- Click Publish to make the bot live
Variables
Variables let you store and reuse dynamic values throughout a flow.
Storing User Input
When using Ask nodes, the user’s answer is saved to a variable:
Ask Question: "What is your name?"
Save to variable: "customer_name"Later nodes can reference {{customer_name}} in message text.
Mapping to Contact Attributes
Use the Update Contact Column node to persist variables to the contact’s profile in the database.
CTWA Ads Integration
When triggered from a Click-to-WhatsApp (CTWA) ad, the flow receives the ad’s Source ID. Use the On Message trigger with “For Specific Ads” to build dedicated landing-style flows per ad campaign.