Google Calendar
Read calendars, events, free/busy and settings with incremental sync; create and update calendars and events without emailing guests unless the flow opts in.
Keep bookings, appointments, deadlines and team schedules in step with CRM, project and HR systems.
Source actions
12
Destination actions
5
Data types
8
Validation status
Implemented · fixture tested.
Implementation is checked against provider-shaped fixtures for every action, authentication failures, rate limits, pagination and duplicate safety. Provider sandbox and authorised account validation are recorded separately when credential-backed runs are completed.
What you can map
acl rules
- Get sharing ruleSource
One sharing rule on a calendar.
acl_rules.get - List sharing rulesSource
Who a calendar is shared with and their role. Read-only.
acl_rules.list
calendar list
- Get calendar list entrySource
One calendar list entry with the user's colour, visibility and reminders.
calendar_list.get - List calendarsSourceIncremental
Calendars on the authorised user's calendar list, with access role and colours.
calendar_list.list - Update calendar list entryDestinationProvider duplicate protectionApproval before production
Changes how a calendar appears for the user: display name, colour, hidden or selected state and default reminders.
calendar_list.update
calendars
- Create calendarDestinationNot retried automaticallyApproval before production
Creates a secondary calendar owned by the authorised user.
calendars.create - Get calendarSource
Calendar metadata: title, description, location and time zone.
calendars.get - Update calendarDestinationProvider duplicate protectionApproval before production
Changes a calendar's title, description, location or time zone.
calendars.update
colors
- List coloursSource
Colour IDs usable for calendars and events, with their hex values.
colors.list
event instances
- List recurring event instancesSource
Occurrences of a recurring event, optionally within a time window.
event_instances.list
events
- Create eventDestinationProvider duplicate protectionApproval before production
Creates an event. Guests are not emailed unless Notify guests is set; a Google Meet link can be added.
events.create - Get eventSource
One event with attendees, recurrence and conference link.
events.get - List eventsSourceIncremental
Events on a calendar by time window or modification time, or only changes since a sync token.
events.list - Update eventDestinationProvider duplicate protectionApproval before production
Changes the supplied fields of an event (patch). Guests are not emailed unless Notify guests is set.
events.update
freebusy
- Query free/busySource
Busy intervals for up to 50 calendars between two times.
freebusy.search
settings
- Get user settingSource
One Calendar setting, for example timezone or weekStart.
settings.get - List user settingsSource
The authorised user's Calendar settings, such as time zone and week start.
settings.list
Authentication
Google OAuth client and refresh token
Plans and access
Personal Google accounts and all Google Workspace editions. Requires a customer-owned Google Cloud OAuth client. Sensitive and restricted scopes need Google verification before external users can authorise them.
Test environment
Use a test Google account and an OAuth client in testing mode.
Rate limits
Per-project and per-user per-minute query quotas set in Google Cloud; HTTP 403 usageLimits/rateLimitExceeded or 429 with exponential backoff.
Pagination
nextPageToken cursors; the last page of calendar list, events and ACL reads carries nextSyncToken for incremental sync.
Provider events
Calendar push notifications (events.watch, calendarList.watch channels). Nexra event triggers are not yet available; flows run on demand or on a schedule.
Before you build a flow
- Writes default to sendUpdates=none, so Google emails no invitations, updates or cancellations unless the flow explicitly sets Notify guests.
- Deleting or cancelling events and calendars, clearing calendars, moving events between calendars, and changing sharing (ACL) rules are intentionally not implemented; ACL rules are read-only.
- Quick-add (natural-language event creation) is not implemented because Google takes the text in the URL query string.
- Free-text event search (q) is not exposed because the text would travel in the URL query string; filter by time, update time or private extended property instead.
- An expired syncToken returns HTTP 410; Nexra reports it as not found and the flow must run a full read without syncToken.
- Non-primary calendar IDs are often email addresses and are sent in the request path as the API requires.
- Calendar creation has no idempotency key; uncertain creates are not repeated automatically.
- Event creation uses a deterministic event ID derived from the flow record, so a repeat is rejected by Google with HTTP 409 rather than creating a second event.
- Google Meet links are only added when the flow asks for one; other conference providers are not supported.
Developer reference
- Create the Google credentials described above with the narrowest permissions your flows need.
- In Nexra, open Connect, then Connections, then New connection, choose Google Calendar, enter its settings and credentials, and tick only the write actions you need. Connection guide
- Test the connection, then use its actions as flow sources and destinations. Flow guide
Machine-readable detail: GET /api/public/connect/connectors/google-calendar and the Connections API.