Collect absences from Google Calendars
Needs changesNeeds changes. This template uses 1 thing(s) that n8n 3.0 removes: Cron. 1 breaking item(s) found. Static check, last run 2026-10-19.
What this workflow does
This workflow has 13 nodes and runs on a schedule (legacy Cron node). Along the way it connects Google Calendar.
How it runs
Trigger: On a schedule (legacy Cron node).
- Previous Month (Date & Time): formats or calculates dates
- Get previous months events (Google Calendar): get many
- Check Summary for Illness or Holiday (Switch): routes items into 2 branches
- Filter Holiday Days (Edit Fields (Set)): sets or maps fields
- Filter Illness Days (Edit Fields (Set)): sets or maps fields
- Combine Holiday Counts (Code): runs custom JavaScript code
- Combine Illness Counts (Code): runs custom JavaScript code
- Merge: merges the data from its input branches
- Build the message to send (Code): runs custom JavaScript code
- Send Email: sends an email over SMTP
Services it uses
Before you upgrade to n8n 3.0
1 thing in this workflow is removed in n8n 3.0. Fix it before you upgrade:
- Cron in 1st of Every month at 8am: replace with Schedule Trigger.
Rather not rewrite it? Many of these flows can be rebuilt in Make (free plan).
| Removed in 3.0 | Replace with |
|---|---|
| Cron 1st of Every month at 8am | Schedule Trigger |
Nodes used (9)
- Date & Time
n8n-nodes-base.dateTime - Cron
n8n-nodes-base.cron - Switch
n8n-nodes-base.switch - No Operation, do nothing
n8n-nodes-base.noOp - Edit Fields (Set)
n8n-nodes-base.set - Merge
n8n-nodes-base.merge - Google Calendar
n8n-nodes-base.googleCalendar - Send Email
n8n-nodes-base.emailSend - Code
n8n-nodes-base.code
From the author
This workflow checks a Google Calendar at 8am on the first of each month to get anything that has been marked as a Holiday or Illness. It then merges the count for each person and sends an email with the list. To use this workflow you will need to set the…