Templates / Schedule appointments from a booking form with Google Calendar and Gmail

Schedule appointments from a booking form with Google Calendar and Gmail

Ready for 3.0

by Theodoros Mastromanolis ✓ · 2,296 views · created 2026-03-06 · Support Chatbot

Ready for 3.0. This template uses no nodes that n8n 3.0 removes. No removed nodes, versions or helpers found. Static check, last run 2026-10-19.

What 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).

  1. Get Calendar Events (Google Calendar): get many
  2. Code: runs custom JavaScript code
  3. Calculate Available Slots (Code): runs custom JavaScript code
  4. Create Calendar Event (Google Calendar): uses Google Calendar
  5. Build HTML Form (Code): runs custom JavaScript code
  6. Format Email Data (Code): runs custom JavaScript code
  7. Respond to Webhook: sends the response back to the webhook caller
  8. Send Confirmation Email (Gmail): uses Gmail
  9. Show Success Message (Respond to Webhook): sends the response back to the webhook caller

Services it uses

GmailGoogle Calendar

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)

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…

Excerpt from Theodoros Mastromanolis's description on n8n.io.

View the original on n8n.io → Check your own copy

Get the weekly “what broke” email

New templates, newly broken ones, and n8n release changes. One short email a week.

Form not loading? Subscribe here.