Flows versus workflows
An AI flow talks to customers. A workflow acts: it saves a row, books a slot, calls another system, sends a notification. A workflow is triggered either by a flow (attach it on the flow's Workflows dialog) or globally by a lead or appointment event. Workflows need the Workflows feature in your plan.
The Workflows page
- Left rail: a box that both searches and creates (Search workflows / Add workflow), Import from file, and the list. Each row shows the name, a clickable active / inactive word, and share, edit and delete icons.
- Toolbar: Copy Execution ID, a Select Execution dropdown of past runs, Undo (Ctrl+Z), and an API Key icon that copies the key external callers use for this workflow.
- Canvas: pan, zoom and pinch. A blue + button opens the node palette titled What's next?.
There is no Save button
Every change, from moving a node to editing its settings, is saved as you make it. Ctrl+Z restores nodes and edges you deleted.
Building a workflow
- Type a name in the left box and press Enter.
- Press + → Add trigger and choose how the workflow starts.
- Press + again to add actions, conditions or core steps. Each node opens a settings panel on the right.
- Connect nodes by dragging from a node's output handle to the next node's input. You cannot connect a node to itself or add the same connection twice. Right-click an edge to delete it or change its shape.
- Open a node and press the red Test step to run just that node and see its output.
- Finish with an End Node if you want to collect values at the end of the run.
- Click inactive so it reads active, then attach it to a flow if it uses a flow trigger.
The node palette
The full list, with every setting, is in the Workflow nodes reference. In brief:
| Category | Nodes |
|---|---|
| Add trigger | Flow triggers (need a flow to attach them): Whatsapp Trigger, WABA Trigger, Telegram Trigger. Global triggers: Lead Trigger (create, update, delete), Appointment Trigger, Tool Trigger (an HTTP endpoint you can call from outside, with a defined input schema). |
| Advanced AI | Basic LLM Chain: a system prompt and a user prompt with access to the conversation history, returning text or structured output. |
| Action in an app | Messaging: Telegram Message, Whatsapp Message, WABA Message. Google: Google Sheet (add a row), Search Google Sheet, Google Calendar (add an appointment). Accounting: AutoCount, SQL Accounting. Other: Add Data to Conversation, Check Off Hours. |
| Flow | If (two outputs, true and false) and Switch (one output per case). |
| Core | HTTP Request, Get Conversation, Run JavaScript Code. |
| End Workflow | End Node: named fields collected from the run. |
Because of a WhatsApp limitation, a bot can have only one Whatsapp Trigger in use at a time.
Passing data between nodes
Any text field in a node accepts placeholders that are filled at run time:
{name} a field from the trigger input
{[node2].answer} the "answer" output of node2
{[node3].customer.email} a nested valueThe trigger's fields (the message body, the sender, the lead's details) are available directly. Every later node's output is available by its node id, which is shown on the node.
Testing and run logs
Each run creates an execution. Pick one from Select Execution (listed as Execution - date time) and the canvas shows what every node received and produced in that run. Copy Execution ID gives support a reference. Testing a single node with Test step uses the currently selected execution's data as input. Executions are kept for 14 days.
Activating, sharing, importing
- Click the status word to toggle. Deactivating asks Disable workflow? This workflow will stop running for every flow that uses it.
- The share icon opens Share Workflow: send it to a teammate by name or email, or export it to a file.
- Import from file brings in an exported workflow. A bad file shows Failed to import workflow. Please check the file format.
- Global triggers run on their own once active. Flow triggers run only for flows where the workflow is attached (see Linking a workflow).
Three workflows people build first
- Log every new lead to a spreadsheet. Lead Trigger (create) → Google Sheet. Map name, phone, source and campaign to columns. Global, so it works for every channel.
- Alert the team when a hot lead appears. Lead Trigger (update) → If (lead quality score is greater or equal 9) → Telegram Message to your group.
- Send a quotation from a chat. Whatsapp Trigger → Basic LLM Chain (extract product and quantity) → SQL Accounting (create quotation) → Whatsapp Message with the PDF link. Attach to your sales flow under a keyword such as
!quote.
Good to know
- A workflow attached to a flow runs on every message for that flow, but does nothing unless it contains a trigger node that matches the channel.
- A workflow can be attached to a flow once, as the normal trigger or under one keyword.
- Keyword triggers are stored with a leading
!and fire when a message contains that word. - Delays between messages are not a workflow node; use a follow-up sequence in the flow for timed messages.
- The Tool Trigger's URL and the workflow API key let external systems start a run. Keep the key private.