Skip to main content

Google Calendar

ToolJet can connect to Google Calendar to fetch, create, update, and delete calendar events directly from your ToolJet application.

Connection​

You will need the following credential to connect with Google Calendar:

  • Client ID
  • Client Secret

These credentials are used to authenticate via OAuth2 and access calendar data securely. You can review all available permission scopes here.

You can toggle on Authentication required for all users in the configuration. When enabled, users will be redirected to the OAuth consent screen the first time a query from this data source is triggered in the application. This ensures each user connects their own Google Calendar account securely.

Hugging Face Configuration

Generating Client ID and Client Secret​

  1. Go to Google Cloud console and create a project. Create New Project
  2. Go to the Google Cloud console credentials page, and create an OAuth client ID. General Settings: SSO
  3. You'll be asked to select user type in consent screen. To allow only users within your workspace, select 'Internal', otherwise, select 'External'. General Settings: SSO
  4. After configuring the consent screen you will be redirected to OAuth overview page, click on Create OAuth client.
  5. Then on the Clients page, select the Application type as Web application, and give it a name, under Authorised JavaScript origins, set the domain on which ToolJet is hosted and under Authorized redirect URIs, enter the Redirect URL which was generated in ToolJet's data source configuration page. General Settings: SSO
  6. Click on Create and copy the Client ID and Client Secret. General Settings: SSO

Supported Operations​

Calendars​

MethodEndpointDescription
GET/calendars/{calendarID}Get calendar details.
PUT/calendars/{calendarID}Update a calendar.
DELETE/calendars/{calendarID}Delete a calendar.
POST/calendarsCreate a calendar.
GET/users/me/calendarListList calendars accessible to the user.

Events​

MethodEndpointDescription
GET/calendars/{calendarID}/eventsList events.
POST/calendars/{calendarID}/eventsCreate an event.
GET/calendars/{calendarID}/events/{eventID}Get event details.
PUT/calendars/{calendarID}/events/{eventID}Update an event.
DELETE/calendars/{calendarID}/events/{eventID}Delete an event.
POST/calendars/{calendarID}/events/quickAddQuick add event.

Access Control (ACL)​

MethodEndpointDescription
GET/calendars/{calendarID}/aclList access control rules.
POST/calendars/{calendarID}/aclCreate an access control rule.
GET/calendars/{calendarID}/acl/{ruleID}Get an access control rule.
PUT/calendars/{calendarID}/acl/{ruleID}Update an access control rule.
DELETE/calendars/{calendarID}/acl/{ruleID}Delete an access control rule.

Free/Busy​

MethodEndpointDescription
POST/freeBusyQuery free/busy information.