Skip to main content

Connect Google Calendar

Google Calendar connects via OAuth 2.0 with PKCE. You sign in with Google and grant CalendarPipe access to your calendars.

You will need a Google account with Calendar access and the ability to sign in to it in your browser.

Connect

1. Start the connection

Navigate to Calendar Connections in the CalendarPipe sidebar and click Add Connection.

Add Connection button

2. Select Google

Choose Google from the list of calendar providers.

Google provider selection

3. Sign in and grant access

You will be redirected to Google's sign-in page. Sign in with the Google account whose calendars you want to sync.

Google will show a consent screen asking you to grant CalendarPipe the following permissions:

  • See, edit, share, and permanently delete all the calendars you can access using Google Calendar -- This allows CalendarPipe to read events from source calendars and write synced events to target calendars.
  • See your primary Google Account email address -- This identifies which Google account is connected.

Click Allow to grant access. CalendarPipe uses the PKCE (Proof Key for Code Exchange) flow automatically for enhanced security.

4. Select calendars

After granting access, you will be returned to CalendarPipe where you can select which calendars from this Google account should be available for sync rules.

Select the calendars you want to use and confirm.

Multiple Google accounts

To connect a second Google account, click Add Connection again and select Google. You will be prompted to sign in with a different account — useful for syncing between personal and work calendars.

Re-authorization

If CalendarPipe's required permissions change, you will see a notification asking you to re-authorize. Click through the OAuth flow again to update your permissions.

Out of office events

CalendarPipe can write synced events as real Out of office events using a gate transform (transform.type: "outOfOffice"). The following limitations apply — when any one is not met, the event is written as a normal busy event instead:

  • Out of office requires a Google Workspace account. Personal Google accounts (for example @gmail.com) cannot create Out of office events.
  • Out of office is only supported on your primary Google calendar, not secondary calendars.
  • All-day events are not supported (Google requires Out of office events to have specific start and end times).

By default, synced Out of office events never auto-decline meetings. You can opt in per rule (the auto-decline toggle in the visual builder, or transform.autoDecline in a gate function) to have Google automatically decline new invitations that conflict with the synced Out of office block. This is forward-looking only — events already on your calendar are never touched.

Troubleshooting

  • "Access blocked" error -- Make sure you are signed into the correct Google account. If you have multiple accounts, try using an incognito window to sign in with the specific account you want to connect.
  • Calendars not showing -- Only calendars you own or have write access to will appear. Shared calendars with read-only access can be used as source calendars but not as target calendars.
  • Connection expired -- CalendarPipe automatically refreshes your Google access token. If a connection stops working, try disconnecting and reconnecting.