Book phone appointments with ElevenLabs, Exotel, and Cal.com
Ready for 3.0What this workflow does
This workflow has 11 nodes and runs when an HTTP POST request hits its webhook URL (plus 1 other trigger). It uses only n8n's built-in nodes. It also calls api.cal.com over HTTP.
How it runs
Trigger: When an HTTP POST request hits its webhook URL (plus 1 other trigger).
- Check Available Slot Request (If): checks a condition and branches into true / false
- Send Exotel Response (Respond to Webhook): sends the response back to the webhook caller
- Fetch Available Slots (HTTP Request): calls api.cal.com
- Check Appointment Booking Request (If): checks a condition and branches into true / false
- Send Slots Response (Respond to Webhook): sends the response back to the webhook caller
- Send Booking Request (HTTP Request): calls api.cal.com (POST)
- Handle Unknown Tool Response (Respond to Webhook): sends the response back to the webhook caller
- Send Booking Success Response (Respond to Webhook): sends the response back to the webhook caller
- Send Booking Error Response (Respond to Webhook): sends the response back to the webhook caller
HTTP calls to: api.cal.com
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (4)
- If
n8n-nodes-base.if - Respond to Webhook
n8n-nodes-base.respondToWebhook - Webhook
n8n-nodes-base.webhook - HTTP Request
n8n-nodes-base.httpRequest
From the author
Quick overview This workflow exposes webhooks that let an ElevenLabs/Exotel voice agent check availability and book appointments in Cal.com, returning suggested times or booking confirmations as JSON responses. How it works 1. Receives a POST request on the…