Chatflow node types
Reference for all node types available in the chatflow builder.
The Chatflow builder provides eight node types. Each type maps to a specific role in a conversation. The table below covers what each node does; see the builder guide for how to add and connect them.
Node reference
Start
The entry point of every Chatflow. There must be exactly one Start node. When the Chatflow begins, the Start node sends its configured opening message to the user and passes control to the next node.
Message
Sends a text message to the user and then passes control to the next node. Use Message for informational steps that do not require a reply — for example, a confirmation or a status update.
Decision
Presents a question to the user and waits for a reply. You configure a list of options; each option becomes a labeled branch edge on the node. An additional else branch handles any reply that does not match a defined option. Under the hood, EzFlow sends the question, pauses on a Wait for User Response step, then routes through a CHATFLOW_DECISION_BRANCH check for each option in sequence.
Condition
Evaluates a stored variable against a value using an operator (for example, equals, contains, greater than). Takes a true or false branch without waiting for user input. Use Condition to route the conversation based on data collected earlier — for example, branching on the answer a Form Input node captured.
Form Input
Collects one or more named fields from the user through a series of sequential prompts. You define each field with a name, label, and type. The node sends an introductory message, then prompts for each field in order and waits for a reply before moving to the next. Collected values are stored in the session's variables map.
HTTP Request
Makes an outbound HTTP call (GET, POST, or any configured method) to an external URL during the conversation. The response is available for downstream nodes. Use HTTP Request to look up data in a third-party API mid-conversation — for example, checking a booking status before replying to the user.
Script
Runs a JavaScript snippet inside EzFlow's isolated execution environment. Use Script to compute derived values, reformat collected data, or perform logic that the other node types do not cover.
Exit
Marks the end of the conversation. When execution reaches an Exit node, the session is completed and the collected variables are returned to the parent Workflow so it can continue. You can have multiple Exit nodes to close the conversation from different branches.
Summary table
| Node | Waits for user? | Output branches |
|---|---|---|
| Start | No | One |
| Message | No | One |
| Decision | Yes | One per option + else |
| Condition | No | True / False |
| Form Input | Yes (per field) | One |
| HTTP Request | No | One |
| Script | No | One |
| Exit | — | None |
Related
- CHATFLOW_SEND_MESSAGE — the internal orchestrator node used by Start, Message, Decision (question step), and Form Input (prompt step)
- CHATFLOW_DECISION_BRANCH — the internal orchestrator node that evaluates one option in a Decision chain
- WAIT_FOR_USER_RESPONSE — the internal orchestrator node that pauses execution until the user replies
- Sessions — how collected variables and conversation state are stored