Automate Everhour Time-off Sync to Google Calendar with All-day Events

Go to Workflow
0 views
Built by Hossein Karami Hossein Karami
Created on June 09, 2026

Description

Who’s it for
Teams that track absences in Everhour and want a shared Google Calendar view for quick planning. Ideal for managers, HR/OPS, and teammates who need instant visibility into approved time off.

What it does
Pulls approved time-off from Everhour on a schedule
Creates/updates all-day events per day of absence in Google Calendar
Removes stale events if a request changes or is canceled
Uses a stable external key (everhour:ASSIGNMENT_ID:YYYY-MM-DD) to avoid duplicates

How it works
A Schedule Trigger runs periodically → the workflow fetches Everhour assignments, filters approved time-off, expands multi-day requests into single-day items, then searches by external key to either create or update events. Separate cleanup steps list calendar events and delete any that are no longer present in Everhour.

How to set up
In n8n, create an HTTP Header Auth credential for Everhour with header `X-Api-Key: {YOUR_EVERHOUR_API_KEY}
`.
Add a Google Calendar OAuth credential.
Open the Config node and set your calendarId (e.g., [email protected]).
Enable the workflow and choose your schedule.

Requirements
Everhour account with API access
Google Calendar (workspace or personal)
n8n Cloud or self-hosted

How to customize the workflow
Adjust the schedule (hourly/daily).
Filter by user or time-off type.
Tweak the event title/description templates.
Point to multiple calendars (duplicate the create/update branch per calendar).

Nodes Used (3)

Code
n8n-nodes-base.code
Google Calendar
n8n-nodes-base.googleCalendar
HTTP Request
n8n-nodes-base.httpRequest