The Edesy Voice Agent community node for n8n lets your n8n workflows place AI voice calls and react to call events. The Voice Agent node makes calls, gets call status and lists calls and agents. The Voice Agent Trigger node starts a workflow when a call ends, fails, is analyzed, has data extracted or has a recording ready. Five workflow templates are available to start from.
Nodes#
Voice Agent (actions)#
| Operation | What it does |
|---|---|
| Make Call | Places an outbound AI call with an agent, a phone number (E.164) and variables. Optional callback URL and call source |
| Get Call Status | Gets the status of a call |
| List Calls | Lists recent calls, filtered by agent, status or disposition |
| List Agents | Lists your agents |
Voice Agent Trigger (webhook)#
| Event | Fires when |
|---|---|
Call Analyzed (call.analyzed) |
Post-call analysis finished. Fires for every call; use it as your main event |
Call Ended (call.ended) |
A connected call ended |
Call Failed (call.failed) |
A call did not connect |
Call Data Extracted (call.extracted) |
Post-call extraction produced data |
Recording Ready (call.recording_ready) |
The recording is available |
Pick only these events. The node may also list other events (such as call started or call summarized); those are not delivered on the default runtime, so a workflow listening to them will not fire. The trigger registers its webhook when you activate the workflow and removes it when you deactivate it. You can filter it to one agent.
Set up#
- Install the community node
n8n-nodes-voice-agentfrom Settings → Community Nodes in your n8n instance. If it is not available to you, ask us for the package. - In Edesy, open Settings → API Keys and create a key.
- In n8n, add a Voice Agent API credential and paste the key.
- Add a Voice Agent or Voice Agent Trigger node to your workflow.
Templates#
| Template | What it does |
|---|---|
| Basic outbound call | Places a call with variables |
| Google Sheets campaign | Calls each row of a sheet and writes results back |
| Airtable campaign | Calls each Airtable record and updates it |
| HubSpot lead caller | Calls new HubSpot leads |
| Call event handler | Routes call events by disposition |
Example#
[Voice Agent Trigger: Call Analyzed] -> [IF disposition = QUALIFIED] -> [Google Sheets: Append]
-> [else: Slack: Notify]
FAQs#
Does it work with n8n Cloud? Community nodes depend on your n8n plan and setup. On self-hosted n8n you can install them directly.
How do I pass variables?
Add them under Variables in Make Call. Names must match the {{variables}} in your agent's prompt.
Is delivery signed?
Yes. Triggers use webhook subscriptions, signed with X-Webhook-Signature.