Automate WhatsApp booking system with GPT-4 Assistant, Cal.com and SMS reminders
Needs changesWhat this workflow does
This AI workflow has 22 nodes and runs when an HTTP POST request hits its webhook URL (plus 1 other trigger). Along the way it connects OpenAI Chat Model, Google Sheets, HTTP Request and seven. 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).
- Switch: routes items into 2 branches
- Read Upcoming Appointments from Sheet (Google Sheets): uses Google Sheets
- AI Booking Assistant (Dr Firas) (AI Agent): runs an AI agent, with model: LLM: GPT-4o Chat Model; 3 tools (Fetch Available Time Slots, Create New Prospect in Google Sheet, Update Prospect with Booking Details); memory: AI Conversation Memory
- Retrieve Prospect Details (Google Sheets): uses Google Sheets
- Filter Appointments Within Next 2 Hours (Code): runs custom JavaScript code
- Send Response to WhatsApp (Respond to Webhook): sends the response back to the webhook caller
- Normalize Booking Time (UTC Format) (Code): runs custom JavaScript code
- Send SMS Reminder (seven): uses seven
- Send Booking (HTTP Request): calls api.cal.com (POST)
- Mark SMS as Sent in Sheet (Google Sheets): update
…plus 5 more steps. See the full node list below.
Services it uses
HTTP calls to: api.cal.com
Before you upgrade to n8n 3.0
2 things in this workflow are removed in n8n 3.0. Fix them before you upgrade:
- AI Agent v1 (old agent modes) in AI Booking Assistant (Dr Firas) (v1.8): replace with Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent.
- HTTP Request Tool (legacy) in Fetch Available Time Slots: replace with HTTP Request node connected to the AI Agent's Tool input.
Rather not rewrite it? Many of these flows can be rebuilt in Make (free plan).
| Removed in 3.0 | Replace with |
|---|---|
| AI Agent v1 (old agent modes) AI Booking Assistant (Dr Firas) (v1.8) | Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent. |
| HTTP Request Tool (legacy) Fetch Available Time Slots | HTTP Request node connected to the AI Agent's Tool input |
Nodes used (13)
- Webhook
n8n-nodes-base.webhook - Switch
n8n-nodes-base.switch - AI Agent
@n8n/n8n-nodes-langchain.agent - OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi - Simple Memory
@n8n/n8n-nodes-langchain.memoryBufferWindow - Google Sheets Tool
n8n-nodes-base.googleSheetsTool - HTTP Request Tool
@n8n/n8n-nodes-langchain.toolHttpRequest - Respond to Webhook
n8n-nodes-base.respondToWebhook - Google Sheets
n8n-nodes-base.googleSheets - Code
n8n-nodes-base.code - HTTP Request
n8n-nodes-base.httpRequest - Schedule Trigger
n8n-nodes-base.scheduleTrigger - seven
n8n-nodes-base.sms77
From the author
AI-powered WhatsApp booking system with instant SMS confirmations Who is this for? This workflow is designed for solo entrepreneurs, consultants, coaches, clinics, or any business that handles client appointments and wants to automate the entire scheduling…