Syncing Google Calendar with Nagios for on-call schedules
-
LunarPathfinder
- Posts: 1
- Joined: Wed Jun 17, 2026 4:18 am
Syncing Google Calendar with Nagios for on-call schedules
hello everyone, I've been trying to find a decent way to sync a shared Google Calendar with our Nagios setup and I'm starting to run out of ideas. The goal is pretty simple: we use a shared calendar for our on-call rota, schedules change quite often, and it'd be great if Nagios could automatically pick up who's on duty and send notifications to the right person without anyone having to update contacts manually. I've looked through a bunch of scripts on GitHub. A lot of them are based on old Google Calendar APIs and are clearly abandoned. The few that use the current API seem to be personal projects with very little documentation, so it's hard to tell whether they're still being used. What I'm trying to do is pull calendar events from Google, map them to Nagios contacts or notification periods, and run the sync automatically every hour or so. The biggest headache so far has been authentication. Getting OAuth2 set up is one thing, but I don't really trust a solution that depends on tokens breaking or expiring unexpectedly. The last thing I want is for notifications to stop working in the middle of the night because a script lost access to the calendar. I also had a look at Checkmk and Thruk to see if there was already something available for this use case, but I haven't found anything that looks actively maintained. Has anyone here built something similar? Doesn't have to be fancy. A custom script, an n8n workflow, some kind of middleware, anything really. I'm mostly interested in hearing what people are actually running in production and whether it's been reliable over time. Any suggestions would be appreciated.
Re: Syncing Google Calendar with Nagios for on-call schedules
Hello @LunarPathfinder,
It might be worth looking into using Apps Script. I haven't set anything up myself, but the documentation looks to include the ability to programmatically forward emails to specific recipients. The most elegant solution is likely to set up a catch-all email inbox and then forward the emails to specific addresses as dictated by the calendar.
Here is Google's documentation on it.
Let me know if you have any other questions.
-Emmett
It might be worth looking into using Apps Script. I haven't set anything up myself, but the documentation looks to include the ability to programmatically forward emails to specific recipients. The most elegant solution is likely to set up a catch-all email inbox and then forward the emails to specific addresses as dictated by the calendar.
Here is Google's documentation on it.
Let me know if you have any other questions.
-Emmett