Back to Templates

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

Created by

Created by: Hossein Karami || hosseinkarami

Hossein Karami

Last update

Last update 2 days ago

Share


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

  1. In n8n, create an HTTP Header Auth credential for Everhour with header X-Api-Key: {YOUR_EVERHOUR_API_KEY} .
  2. Add a Google Calendar OAuth credential.
  3. Open the Config node and set your calendarId (e.g., [email protected]).
  4. 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).