The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"name": "Voice / Booking Agent (template)",
"nodes": [
{
"parameters": {
"path": "booking",
"options": {}
},
"id": "trigger",
"name": "Conversation (webhook)",
"type": "n8n-nodes-base.webhook",
"typeVersion": 1,
"position": [
240,
320
]
},
{
"parameters": {},
"id": "agent",
"name": "Booking Agent (attach your LLM)",
"type": "n8n-nodes-base.noOp",
"typeVersion": 1,
"position": [
520,
320
]
},
{
"parameters": {},
"id": "check",
"name": "Tool: check_availability",
"type": "n8n-nodes-base.noOp",
"typeVersion": 1,
"position": [
800,
180
]
},
{
"parameters": {},
"id": "book",
"name": "Tool: create_booking",
"type": "n8n-nodes-base.noOp",
"typeVersion": 1,
"position": [
800,
320
]
},
{
"parameters": {},
"id": "log",
"name": "Tool: log_interaction",
"type": "n8n-nodes-base.noOp",
"typeVersion": 1,
"position": [
800,
460
]
},
{
"parameters": {
"content": "VOICE / BOOKING AGENT\n\nThe agent confirms the chosen slot back to the caller BEFORE create_booking runs \u2014 that is the human-in-the-loop step.\nKey bookings on a request ID so retries don't double-book. Hand off to a human for anything out of scope.\nNo calendar/CRM credentials ship with this template.",
"height": 280,
"width": 360
},
"id": "note",
"name": "Note",
"type": "n8n-nodes-base.stickyNote",
"typeVersion": 1,
"position": [
200,
520
]
}
],
"connections": {
"Conversation (webhook)": {
"main": [
[
{
"node": "Booking Agent (attach your LLM)",
"type": "main",
"index": 0
}
]
]
},
"Booking Agent (attach your LLM)": {
"main": [
[
{
"node": "Tool: check_availability",
"type": "main",
"index": 0
},
{
"node": "Tool: create_booking",
"type": "main",
"index": 0
},
{
"node": "Tool: log_interaction",
"type": "main",
"index": 0
}
]
]
}
},
"settings": {
"executionOrder": "v1"
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Voice / Booking Agent (template). Webhook trigger; 6 nodes.
Source: https://github.com/alm-000/agentic-cookbook/blob/4bef51f564818910f7315d12bc764ce8407a3767/examples/voice-booking-agent.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
AGA Complaint Agent (LINE). Uses httpRequest, googleSheets. Webhook trigger; 13 nodes.
Send Postcards to Contacts Automatically using CentralStationCRM and EchtPost. Uses httpRequest. Webhook trigger; 12 nodes.
Clara AI - Demo to Agent Pipeline. Uses start, executeCommand. Webhook trigger; 8 nodes.
v2 Like Minds — Instagram Publish. Uses httpRequest. Webhook trigger; 6 nodes.
This is a specific use case. The ElevenLabs guide for Cal.com bookings is comprehensive but I was having trouble with the booking API request. So I built a simple workflow to validate the request and