Schedule appointments from a booking form with Google Calendar and Gmail
Ready for 3.0What this workflow does
This workflow has 11 nodes and runs when an HTTP GET request hits its webhook URL (plus 1 other trigger). Along the way it connects Gmail and Google Calendar.
How it runs
Trigger: When an HTTP GET request hits its webhook URL (plus 1 other trigger).
- Get Calendar Events (Google Calendar): get many
- Code: runs custom JavaScript code
- Calculate Available Slots (Code): runs custom JavaScript code
- Create Calendar Event (Google Calendar): uses Google Calendar
- Build HTML Form (Code): runs custom JavaScript code
- Format Email Data (Code): runs custom JavaScript code
- Respond to Webhook: sends the response back to the webhook caller
- Send Confirmation Email (Gmail): uses Gmail
- Show Success Message (Respond to Webhook): sends the response back to the webhook caller
Services it uses
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 (5)
- Code
n8n-nodes-base.code - Respond to Webhook
n8n-nodes-base.respondToWebhook - Gmail
n8n-nodes-base.gmail - Google Calendar
n8n-nodes-base.googleCalendar - Webhook
n8n-nodes-base.webhook
From the author
How it works This workflow creates a complete appointment booking system — no external scheduling tools needed. It serves a styled HTML booking form via webhook, checks your Google Calendar for availability, and lets visitors pick an open 30-minute slot. On…