Templates / Publish a live calendar feed from Google Sheets to Google, Apple and Outlook

Publish a live calendar feed from Google Sheets to Google, Apple and Outlook

Ready for 3.0

by Kevin Yu ✓ · 1 views · created 2026-07-28

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.

Nodes used (6)

Google Sheets

What it does

Quick Overview This workflow serves a token-protected iCalendar (.ics) feed from a Google Sheets “events” tab, so Google Calendar, Apple Calendar, and Outlook can subscribe to a live calendar URL. How it works 1. Receives an incoming webhook request for calendar.ics and checks the ?token= query parameter against the configured feed token. 2. Looks up a short-lived cached .ics response and immediately serves it when it is still fresh. 3. If the cache is stale, reads event rows from a Google Sheets document and continues even if the sheet read errors. 4. Validates and normalizes each row (including all-day vs timed events, status values, and a past/future time window) and drops malformed or out-of-window entries. 5. Renders the remaining events into an RFC 5545 iCalendar text body (with correct escaping, CRLF line endings, and UTC timestamps) and optionally adds a “feed health” event. 6. Stores the generated .ics in workflow static data for caching and responds with text/calendar, serving the last known good calendar when a sheet read/render failure occurs or returning 404/503 on unauthorized/unavailable requests. Setup 1. Add Google Sheets OAuth credentials, select the target spreadsheet in the Google Sheets read step, and create a tab named events with the required headers (uid, title, startdate, starttime, enddate, endtime, location, description, status, updatedat, rrule). 2. In the feed configuration, replace feedtoken with a long random secret, set a unique feednamespace, and review timezone/window/default duration settings to match your spreadsheet and desired publish range. 3. Activate the workflow, copy the production webhook URL for calendar.ics, append ?token=YOURTOKEN, and use that URL to subscribe from Google Calendar, Apple Calendar, or Outlook.

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.