Integrations / Forms & scheduling
Google Calendar
List calendars, search events in a time window, check free/busy times, create, update and delete events in Google Calendar, and trigger workflows when a calendar changes.
Tools
google_calendar.list_calendars
List the calendars on the account's calendar list with their IDs; the account's own calendar has primary true and can be addressed as primary.
google_calendar.list_events
List or search events in a time window, expanding recurring events into single instances ordered by start time.
google_calendar.get_event
Get an event by ID, e.g. 7kq2c9m1l0s8b3u4v5n6p7r8t9.
google_calendar.create_event writes
Create an event; give start and end as date-times for a timed event, or start_date and end_date for an all-day one.
google_calendar.update_event writes
Change an event's fields; fields you leave out stay as they are, and attendees replaces the whole list.
google_calendar.delete_event writes
Delete an event.
google_calendar.query_free_busy
Get the busy periods of one or more calendars in a time window, e.g. to find a free slot.
google_calendar.api_get
Send a GET request to any Google Calendar API path under https://www.googleapis.com/calendar/v3 and return the response. For endpoints the named tools don't cover.
google_calendar.api_request writes
Send a POST, PUT, PATCH or DELETE request to any Google Calendar API path under https://www.googleapis.com/calendar/v3.
Tick Allow raw writes on the connection to add api_request, which can send POST, PUT, PATCH and DELETE requests to any Google Calendar API path.
Connect
- In the Google Cloud console, create or pick a project and enable the Google Calendar API under APIs & Services → Library.
- Under Google Auth Platform, fill in Branding, choose the Audience (Internal for a Google Workspace organization, or External with yourself as a test user), and under Data Access add these scopes: calendar.calendarlist.readonly (list calendars), calendar.events (read and write events on every calendar the account can access) and calendar.freebusy (free/busy lookups).
- Under Google Auth Platform → Clients, create a Web application client and add the redirect URL shown on the connection page (https://<this app>/oauth/callback) as an authorized redirect URI.
- Paste the client ID and client secret on the connection, save, and use Connect to sign in with Google.
- While an External app's publishing status is Testing, only its test users can connect and Google expires their refresh tokens after 7 days, so publish the app for a lasting connection.
Press Connect on the connection to approve access at Google Calendar. Tokens renew automatically. How OAuth connections work
Credentials
Triggers
Tick Watch calendar changes and save. Murmurator opens a push channel with this URL and replaces it before it expires. Google's notification only says the calendar changed, with no event in it: follow it with list_events using an updated-since time to see what changed.
Events
triggerkind: google_calendar connection: google_calendar events: [exists] watch: [...]
Your next automation is one sentence away.
14-day free trial with $5 of built-in AI included. Cancel anytime.