Google Calendar
The Google Calendar modules enable you to monitor, create, retrieve, update, or delete events and calendars in your Google Calendar.
Getting Started with Google Calendar
Prerequisites
- A Google account
In order to use Google Calendar with Integromat, it is necessary to have a Google account. If you do not have one, you can create a Google account at google.com.
Connecting Google Calendar to Integromat
To connect your Google Calendar account to Integromat follow the general instructions for Connecting to services.
After you click the Continue button, Integromat will redirect you to the Google Calendar website where you will be prompted to grant Integromat access to your account.
Confirm the dialog by clicking the Allow button.
Calendar
List Calendars
Retrieve calendars of the authenticated user.
Connection | Establish a connection to your Google Calendar. |
Minimum access role | Select the minimum access role for the user in the returned entries.
|
Show hidden calendars | Enable this option to return also hidden entries. |
Limit | Set the maximum number of calendars Integromat will return during one execution cycle. |
Get a Calendar
Returns details of the specified calendar.
Connection | Establish a connection to your Google Calendar. |
Calendar ID | Select or map the ID of the calendar you want to retrieve details about. |
Create a Calendar
Creates a new calendar in your Google account.
Connection | Establish a connection to your Google Calendar. |
Calendar name | Enter a name for the new calendar. |
Update a Calendar
Updates a calendar title of the specified calendar.
Connection | Establish a connection to your Google Calendar. |
Calendar ID | Select or map the ID of the calendar you want to rename. |
Calendar name | Enter a new title for the calendar. |
Delete a Calendar
Deletes an existing calendar.
Connection | Establish a connection to your Google Calendar. |
Calendar ID | Select or map the ID of the calendar you want to rename. |
Clear a Calendar
Clears a primary calendar. This operation deletes all events associated with the primary calendar of an account.
Connection | Establish a connection to your Google Calendar. |
Event
Watch Events
Retrieves details of an event when the event is created, updated, deleted, started, or ended in the selected calendar.
Connection | Establish a connection to your Google Calendar. |
Calendar | Select the calendar you want to watch for events. |
Watch events | Select the change in date that triggers the module. |
Show deleted events | Enable this option to include deleted events (with status equals "canceled ") in the result. |
Query | Filter the result by events that match the search term in any field, except for extended properties. |
Limit | Set the maximum number of events Integromat will return during one execution cycle. |
Search Events
Searches for events in the selected calendar.
Connection | Establish a connection to your Google Calendar. |
Calendar ID | Select the calendar you want to watch for events. |
Start date | Enter the start date of the date range you want to filter results by. The list of supported date and time formats. |
End date | Enter the end date of the date range you want to filter results by. The list of supported date and time formats. |
Single events | Enable this option to expand recurring events into instances and only return single one-off events and instances of recurring events, but not the underlying recurring events themselves. |
Query | Enter the search term to find events that match these terms in any field, except for extended properties. |
Order by | Select the order of the events returned in the result.
|
Limit | Set the maximum number of events Integromat will return during one execution cycle. |
Get an Event
Retrieves event details.
Connection | Establish a connection to your Google Calendar. |
Calendar ID | Select or map the ID of the calendar that contains the event you want to retrieve details about. |
Event ID | Select or map the ID of the event you want to retrieve details about. |
Create an Event
Creates a new event.
Connection | Establish a connection to your Google Calendar. | ||||
Create an event | Select whether you want to quickly add the event or specify more details of the event. | ||||
Calendar ID | Select or map the ID of the calendar you want to create an event for. | ||||
Color | Select the hex code of the color you want to use for the event. The color in the brackets is the background color. | ||||
Event name | Enter text describing the event to be created. For the Quick add (selected in the Create an Event field). If no date/time is provided in this field, the quick adding event is created starting from the current time for an hour. | ||||
All day event | Enable this option if the event is an all day event. | ||||
Start date | Enter the date, in the format "yyyy-mm-dd", if this is an all-day event. The list of supported date and time formats. | ||||
End date | Enter the date, in the format "yyyy-mm-dd", if this is an all-day event. The list of supported date and time formats. | ||||
Description | Enter a description of the event. Supports HTML. | ||||
Location | Specify the geographic location of the event as free-form text. | ||||
Use the default reminder settings for this event | Enable this option to apply default calendar reminders to this event. | ||||
Reminders | Set the event reminders.
| ||||
Attendees | Add attendees of the event.
| ||||
Show me as | Select your status. | ||||
Visibility | Set the visibility of the event.
| ||||
Send notifications about the event creation | Select whether to send notifications about the creation of a new event. Note that some emails might still be sent. The None option should only be used for migration use cases. | ||||
Guests can modify the event | Enable this option to allow attendees other than the organizer to modify the event. | ||||
Recurrence | Specify the recurrence. A list of RRULE, EXRULE, RDATE, and EXDATE lines for a recurring event, as specified in RFC5545. Note that DTSTART and DTEND lines are not allowed in this field; event start and end times are specified in the |
Update an Event
Updates an existing event.
Connection | Establish a connection to your Google Calendar. |
Calendar ID | Select or map the ID of the calendar that contains the event you want to update. |
Event ID | Select or map the ID of the event you want to update. |
Please find the descriptions of the fields in the Create an Event section above.
Delete an Event
Deletes a specified event.
Connection | Establish a connection to your Google Calendar. |
Calendar ID | Select or map the ID of the calendar that contains the event you want to delete. |
Event ID | Select or map the ID of the event you want to delete. |
Send notifications about the event deletion | Guests who should receive notifications about the deletion of the event. |
Access Control Rule
List Access Control Rules
Returns the rules in the access control list for the calendar.
Connection | Establish a connection to your Google Calendar. |
Calendar ID | Select or map the ID of the calendar you want to retrieve ACLs for. |
Limit | Set the maximum number of ACLs Integromat will return during one execution cycle. |
Get an Access Control Rule
Retrieves an access control rule details.
Connection | Establish a connection to your Google Calendar. |
Calendar ID | Select or map the ID of the calendar that contains the access control rule you want to retrieve. |
Access control rule ID | Select or map the ID of the access control rule you want to retrieve. |
Create an Access Control Rule
Creates an access control rule.
Connection | Establish a connection to your Google Calendar. |
Calendar ID | Select or map the ID of the calendar you want to create an access control rule at. |
Role | Select the role assigned to the scope.
|
Type | Select the type of scope.
The permissions granted to the Default , or the public, scope apply to any user, authenticated or not. |
Value | Enter the email address of a user or a group, or the name of a domain, depending on the scope type. |
Update an Access Control Rule
Updates an existing access control rule.
Connection | Establish a connection to your Google Calendar. |
Calendar ID | Select or map the ID of the calendar that contains the access control rule you want to update. |
Access control rule ID | Select or map the ID of the access control rule you want to update. |
Role | Select the role assigned to the scope.
|
Send notifications | Enable this option to send notifications about the calendar sharing change. Note that there are no notifications on access removal. |
Delete an Access Control Rule
Deletes an existing access control rule.
Connection | Establish a connection to your Google Calendar. |
Calendar ID | Select or map the ID of the calendar that contains the access control rule you want to delete. |
Access control rule ID | Select or map the ID of the access control rule you want to delete. |
Make an API Call
Allows you to perform a custom API call.
Connection | Establish a connection to your Google Calendar. |
URL | Enter a path relative to For the list of available endpoints, refer to the Google Calendar API Documentation. |
Method | Select the HTTP method you want to use: GET POST PUT PATCH DELETE |
Headers | Enter the desired request headers. You don't have to add authorization headers; we already did that for you. |
Query string | Enter the request query string. |
Body | Enter the body content for your API call. |
Example of Use - List Calendars
The following API call returns calendars on your calendar list in your Google account:
URL:/v3/users/me/calendarList
Method:GET
The result can be found in the module's Output under Bundle > Body > items.
In our example, 3 calendars were returned:
Get Free/Busy Information
Retrieves free/busy information for a set of calendars.
Connection | Establish a connection to your Google Calendar. |
Minimum time | Enter the start of the interval for the query. The list of supported date and time formats. |
Maximum time | Enter the end of the interval for the query. The list of supported date and time formats. |
Calendars | Specify the list of calendars and/or groups you want to query. |
Common Problems
Trigger a specified amount of time before an event
It is possible to trigger a scenario a specified amount of time before an event with the help of standard Google Calendar email reminders and the Webhooks > Custom mailhook module.
- Employ the Google Calendar > Update an event module to add an email reminder to your event:
- Create a new scenario starting with the Webhooks > Custom mailhook module. Copy the mailhook's email address. Save the scenario and execute it.
- In Gmail, redirect the Google Calendar email reminders to the mailhook's email address:
- Open your Gmail settings.
- Open the Forwarding and POP/IMAP tab.
- Press the "Add a forwarding address" button:
- Paste the copied mailhook's email address, press "Next", confirm by pressing "Proceed" in the popup window and close the dialog by pressing "OK".
- In Integromat, switch to the new scenario which should finish its execution by receiving the confirmation email.
- Click the bubble above the module to inspect the module's output.
- Expand the
Text
item and search for the Confirmation code: - Copy the Confirmation code.
- In Gmail, paste the Confirmation code in the edit box and press "Verify":
- Open the Filters and Blocked Addresses tab.
- Click the "Create a new filter" link:
- Set up a filter for all emails coming from
calendar-notification@google.com
and press "Create a filter": - Tick the "Forward it to:" checkbox and choose the mailhook's email address from the list:
- Press "Create filter" to create the filter.
- In Integromat, you may add Text parser > Match pattern module after the Webhooks > Custom mailhook module to parse the email's HTML code to obtain any information you need. You may, for example, configure a module like this to obtain the event's ID:
Pattern:<meta itemprop="eventId/googleCalendar" content="(?<evenitID>.*?)"/>
Text: TheHTML content
item outputted from the Webhooks > Custom mailhook module:
Where are the Iterate attachments and Iterate attendees modules?
Both modules are deprecated. To iterate desired values, please use the Flow Control > Iterator module.
Change Log
last update: 2020-07-10
Calendar: List Calendars Get a Calendar Update a Calendar Delete a Calendar Clear a Calendar Get Free/Busy Information Access Control Rule: List Access Control Rules Get an Access Control Rule Create an Access Control Rule Update an Access Control Rule Delete an Access Control Rule Get Free/Busy Information Events: Search Events
Events: Create an Event - Option to add an Event Quickly - Option to add an Event in Detail
Events: Watch Events (instant) Iterators: Iterate Attendees Iterate Attachments