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.
Maya AI Flow Generator
Instead of building a flow from scratch, describe what you want in plain language and let Maya AI generate a complete, ready-to-run flow automatically.
How it works
- Open a Workflow Bot in the Flow Builder
- Click the Maya button (top-right of the canvas toolbar)
- Type a description of the flow you want — e.g. “Ask for name, email, and service interest, then send a confirmation message”
- Select the Mode:
- Replace — clears the current canvas and builds the new flow from scratch
- Append — adds the generated nodes to the existing canvas
- Click Generate — Maya will build the flow in seconds
- Review the generated nodes; use the Refine input if you want to adjust specific parts
- Click Apply to Canvas to insert the flow
Cost
Each generation deducts ₹5 from your Wallet. The deduction happens only after the AI returns a valid flow — a failed call costs nothing.
Supported node types (23)
Maya can generate flows using any of these node types:
| Category | Nodes |
|---|---|
| Trigger | On Message |
| Send | Send Text, Send Button, Send List, Send Media, Send Template |
| Ask | Ask Text, Ask Number, Ask Email, Ask Phone, Ask Choice |
| Logic | Condition, Delay, Jump to Flow |
| AI | AI Generate |
| Actions | HTTP Request, Set Variable, Update Tag, Update Column, Assign Conversation, Unassign Conversation, Resolve Conversation, Stop Chatbot |
Tips for better results
- Be specific: “Ask for the customer’s name, then ask for their city, then send a text saying ‘Thanks {{name}}, we’ll contact you in {{city}} shortly’”
- Mention branching: “If the customer selects Premium, send the premium offer; otherwise send the standard offer”
- Describe the goal: “Lead capture flow for a real-estate business — collect name, budget, and preferred location”
- Use Refine to tweak individual parts without regenerating the whole flow
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.