Quick overview
This workflow exposes a webhook that lets attendees confirm, reschedule, or cancel a Google Calendar meeting via email links, then sends a matching Gmail notification, logs the action to Google Sheets, and returns a branded HTML response page.
How it works
- Receives a webhook request containing an action (confirm/reschedule/cancel), attendee email, eventId, and optionally a newDateTime/meetingDate for rescheduling.
- Validates the required fields and returns an HTML error page if the request is incomplete or the action is invalid.
- Fetches the Google Calendar event by ID and returns an HTML “not found” page if the event no longer exists.
- Builds a meeting context (attendee name, title, start/end time, and meeting link) and routes processing based on the requested action.
- For confirm, updates the Google Calendar event color to mark it as confirmed and sends a confirmation email via Gmail.
- For reschedule, parses the requested new time, updates the existing Google Calendar event start/end, and sends a reschedule email via Gmail (or returns an HTML error page if the time cannot be parsed).
- For cancel, deletes the Google Calendar event (notifying guests) and sends a cancellation email via Gmail, then appends the action to Google Sheets and returns a branded HTML success page.
Setup
- Connect Google Calendar OAuth2 credentials, Gmail credentials, and Google Sheets credentials to the respective nodes.
- In “Workflow Config”, set your calendarId, timezone, businessName, senderName, supportEmail, and the Google Sheets spreadsheet ID (logSheetId).
- Create a Google Sheets tab named “Meeting Actions” with the columns: Timestamp, Action, Email, Event ID, Meeting Title, Original Start, New Start, Status.
- Activate the workflow, copy the production webhook URL, and use it in your email buttons/links (including eventId, email, action, and reschedule parameters when needed).