Google Calendar

Integrate your application with the Google Calendar API

🚀 Quickstart

Connect to Google Calendar with Tenklo and see data flow in 2 minutes.

Create an integration

In Tenklo (free signup), go to Integrations -> Configure New Integration -> Google Calendar.

Tenklo has credentials you can use for testing. Activate them in the dashboard.

Authorize Google Calendar

Go to Connections -> Add Test Connection -> Authorize, then log in to Google Calendar. Later, you'll let your users do the same directly from your app.

Call the Google Calendar API

Let's make your first request to the Google Calendar API (fetch a list of calendars). Replace the placeholders below with your Environment API key, integration ID, and connection ID:

curl "https://api.tenklo.dev/proxy/calendar/v3/users/me/calendarList?maxResults=10" \
  -H "Authorization: Bearer <NANGO-API-KEY>" \
  -H "Provider-Config-Key: <INTEGRATION-ID>" \
  -H "Connection-Id: <CONNECTION-ID>"

Or fetch credentials dynamically via the Node SDK or API.

✅ You're connected! Check the Logs tab in Tenklo to inspect requests.

Implement Tenklo in your app

Follow our Auth implementation guide to integrate Tenklo in your app.

To obtain your own production credentials, follow the setup guide linked below.

📚 Google Calendar Integration Guides

Tenklo maintained guides for common use cases.

Official docs: Google Calendar API documentation

🧩 Pre-built syncs & actions for Google Calendar

Explore Nango-provided actions in your dashboard. Extend and customize them to fit your needs.

Others

Function nameDescriptionTypeSource code
add-attendeeFetch an event, append an attendee, and patch the attendee listAction🔗 Github
clear-calendarClear the primary calendar by deleting all events.Action🔗 Github
create-acl-ruleCreate an access control ruleAction🔗 Github
create-all-day-eventCreate an all-day calendar event using start and end datesAction🔗 Github
create-calendarCreate a new secondary Google Calendar with the specified title.Action🔗 Github
create-eventCreate a calendar eventAction🔗 Github
create-recurring-eventCreate a recurring event with supplied start, end, and RRULE valuesAction🔗 Github
delete-acl-ruleDelete an access control ruleAction🔗 Github
delete-calendarDelete a calendarAction🔗 Github
delete-eventDelete a calendar eventAction🔗 Github
find-free-slotsQuery free/busy data and return gaps meeting a minimum duration.Action🔗 Github
get-acl-ruleGet an access control rule by IDAction🔗 Github
get-calendar-list-entryRetrieve a calendar list entry with access role and colorsAction🔗 Github
get-calendarGet a calendar by IDAction🔗 Github
get-colorsReturn available calendar and event color definitionsAction🔗 Github
get-eventGet an event by IDAction🔗 Github
get-settingRetrieve a single Google Calendar user setting by IDAction🔗 Github
import-eventImport an event as a private copy using an iCalendar UID.Action🔗 Github
insert-calendar-to-listAdd an existing calendar to the user's list with optional colorsAction🔗 Github
list-acl-rulesList ACL rules for a calendar with pagination supportAction🔗 Github
list-calendar-listList calendars in the user's calendar listAction🔗 Github
list-event-instancesList instances of a recurring eventAction🔗 Github
list-eventsList events on a calendarAction🔗 Github
list-settingsList calendar settingsAction🔗 Github
list-upcoming-eventsList upcoming events from now, ordered by start timeAction🔗 Github
move-eventMove an event to another calendar, changing its organizer.Action🔗 Github
patch-eventPartially update only provided event fields like time, location, or descriptionAction🔗 Github
query-free-busyReturn free/busy blocks for one or more calendars in a time rangeAction🔗 Github
quick-add-eventCreate an event from a text stringAction🔗 Github
remove-attendeeRemove an attendee from a Google Calendar event by emailAction🔗 Github
remove-calendar-from-listRemove a calendar from the user's calendar listAction🔗 Github
search-eventsSearch a calendar's events by text query and optional time boundsAction🔗 Github
settingsFetch all user settings across pages from Google CalendarAction🔗 Github
stop-channelStop push notifications for a channelAction🔗 Github
update-acl-ruleUpdate an access control ruleAction🔗 Github
update-attendee-responseFetch an event and update one attendee's response statusAction🔗 Github
update-calendar-list-entryUpdate a calendar list entry's settingsAction🔗 Github
update-calendarUpdate a calendar's metadataAction🔗 Github
update-eventUpdate a calendar eventAction🔗 Github
watch-calendar-listSubscribe to changes in the calendar listAction🔗 Github
watch-eventsSubscribe to event changes on a calendarAction🔗 Github
watch-settingsSubscribe to changes in calendar settingsAction🔗 Github
whoamiReturn the current user's Google account ID and emailAction🔗 Github
calendar-eventsIncrementally sync full Google Calendar event objectsSync🔗 Github
calendar-listFull sync of the user's calendar list, including access role, colors, primary/selected flags, and deleted status.Sync🔗 Github
settingsSync calendar settingsSync🔗 Github

On this page