Skip to main content

πŸš€ Quickstart

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

Create an integration

In Nango (free signup), go to Integrations -> Configure New Integration -> Google Calendar.
Nango has credentials you can use for testing. Activate them in the dashboard.
2

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.
3

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 secret key, integration ID, and connection ID:
curl "https://api.nango.dev/proxy/calendar/v3/users/me/calendarList?maxResults=10" \
  -H "Authorization: Bearer <NANGO-SECRET-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 Nango to inspect requests.
4

Implement Nango in your app

Follow our quickstart to integrate Nango in your app.To obtain your own production credentials, follow the setup guide linked below.

πŸ“š Google Calendar Integration Guides

Nango maintained guides for common use cases. Official docs: Google Calendar API documentation

🧩 Pre-built syncs & actions for Google Calendar

Enable them in your dashboard. Extend and customize to fit your needs.

Access Control

Function nameDescriptionTypeSource code
create-acl-ruleCreates an access control rule granting calendar accessActionπŸ”— Github
delete-acl-ruleDeletes an access control ruleActionπŸ”— Github
get-acl-ruleReturns an access control rule by rule IDActionπŸ”— Github
list-acl-rulesReturns the rules in the access control list for a calendarActionπŸ”— Github
update-acl-ruleUpdates an access control ruleActionπŸ”— Github

Attendees

Function nameDescriptionTypeSource code
add-attendeeAdds an attendee to an existing calendar eventActionπŸ”— Github
remove-attendeeRemoves an attendee from an existing calendar eventActionπŸ”— Github
update-attendee-responseUpdates an attendee’s response status for an eventActionπŸ”— Github

Calendars

Function nameDescriptionTypeSource code
clear-calendarClears a primary calendar by deleting all eventsActionπŸ”— Github
create-calendarCreates a new secondary calendar with the specified titleActionπŸ”— Github
delete-calendarDeletes a secondary calendarActionπŸ”— Github
get-calendar-list-entryReturns a calendar from the user’s calendar listActionπŸ”— Github
get-calendarReturns metadata for a calendar by calendar IDActionπŸ”— Github
insert-calendar-to-listInserts an existing calendar into the user’s calendar listActionπŸ”— Github
list-calendarsReturns all calendars on the user’s calendar listActionπŸ”— Github
remove-calendar-from-listRemoves a calendar from the user’s calendar listActionπŸ”— Github
update-calendar-list-entryUpdates an existing calendar on the user’s calendar listActionπŸ”— Github
update-calendarUpdates metadata for a calendarActionπŸ”— Github
calendarsSync the calendars list of the userSyncπŸ”— Github

Events

Function nameDescriptionTypeSource code
create-all-day-eventCreates an all-day event on a calendarActionπŸ”— Github
create-eventCreates a new event on a calendarActionπŸ”— Github
create-recurring-eventCreates a recurring event with RRULE specificationActionπŸ”— Github
delete-eventDeletes an event from a calendarActionπŸ”— Github
get-event-instancesReturns instances of a recurring eventActionπŸ”— Github
get-eventReturns an event based on its calendar and event IDActionπŸ”— Github
import-eventImports an event as a private copy using iCalendar UIDActionπŸ”— Github
list-eventsReturns events on a specified calendar with optional filteringActionπŸ”— Github
list-upcoming-eventsReturns upcoming events starting from nowActionπŸ”— Github
move-eventMoves an event to another calendar changing its organizerActionπŸ”— Github
patch-eventPartially updates an event with only provided fieldsActionπŸ”— Github
quick-add-eventCreates an event based on a simple text string like a natural language inputActionπŸ”— Github
search-eventsSearches for events matching a text query across calendarsActionπŸ”— Github
update-eventUpdates an existing event on a calendarActionπŸ”— Github
eventsSync calendar events on the primary calendar going back one month and save the entire object as specified by the Google APISyncπŸ”— Github

Scheduling

Function nameDescriptionTypeSource code
find-free-slotsFinds available time slots across calendars within a time rangeActionπŸ”— Github
query-free-busyReturns free/busy information for a set of calendarsActionπŸ”— Github

Settings

Function nameDescriptionTypeSource code
get-colorsReturns the color definitions for calendars and eventsActionπŸ”— Github
get-settingReturns a single user setting by setting IDActionπŸ”— Github
list-settingsReturns all user settings for the authenticated userActionπŸ”— Github

Users

Function nameDescriptionTypeSource code
settingsFetch all user settings from Google CalendarActionπŸ”— Github
whoamidescription: Fetch current user informationActionπŸ”— Github