An IVR Studio flow is made of nodes joined by connections. Every call enters at Start and follows the connections: speaking text, playing audio, reading keypad input or a spoken answer, calling your API, and finally transferring, recording a voicemail, streaming to an AI bot or hanging up. IVR Studio has 16 node types.
All nodes#
| Node | Palette label | What it does | Exits |
|---|---|---|---|
| Start | Start | Entry point of every call | One |
| Config | Config | Call-wide voice, language and recording | One |
| Say | Say | Text to speech | One |
| Play Audio | Play Audio | Plays an uploaded audio file | One |
| Menu | Menu | Keypad (DTMF) menu | One per key, plus timeout |
| Ask | Ask (Voice Answer) | Captures a spoken answer as text | Answered, No answer |
| Transfer | Transfer | Forwards the call to a phone number | Ends the flow |
| Dial | Dial | Forwards to a number, SIP address or registered user | Ends the flow |
| Voicemail | Voicemail | Records a message | Ends the flow |
| Emails the workspace owner and continues | One | ||
| Pause | Pause | Waits a few seconds | One |
| Hangup | Hangup | Optional goodbye, then ends the call | None |
| HTTP Request | HTTP Request | Calls your API | One (background) or Success/Failure (wait) |
| Order Action | Order Action | Confirms, cancels, tags or notes an order on your store | One, or Success/Failure |
| AI Voice Agent | AI Voice Agent | Streams the call to your bot over WebSocket | Ends the flow |
| Reject | Reject | Declines the call before it connects | Ends the flow |
How a call moves through a flow#
- The call enters at Start.
- Each node runs, then the call follows its exit to the next node.
- Nodes with several exits (Menu, Ask, HTTP Request in wait mode, Order Action with wait on) pick the exit from what happened.
- A node with no next step ends the call. The builder warns you about these.
- Transfer, Dial, Voicemail, AI Voice Agent, Reject and Hangup end the flow.
Where tokens work#
Tokens such as {{caller}} and {{var.order_id}} are filled in at call time. Prompts (Say, Menu, Ask) take {{var.*}} tokens; HTTP Request and Email take every token. See Variables and Tokens.
FAQ#
Is there a queue node?#
No. To reach people, use Transfer or Dial. For agent queues, use the Edesy contact center.
Can a flow speak more than one language?#
Yes. Set a call-wide language in Config and override it on individual Say and Ask nodes. The Language selection template shows the pattern.
Can I record the whole call?#
Yes. Tick Record the whole call on the Config node.
What happens if the caller presses a wrong key?#
They hear "Sorry, that's not a valid option" and the menu repeats.
How do I send data to my CRM during a call?#
Use an HTTP Request node after a menu branch.
Can a flow hand over to an AI agent?#
Yes, with the AI Voice Agent node (WebSocket) or the Dial node to a SIP address.