Google Calendar Component
Manage calendars and events in Google Calendar
Component key: google-calendar
Description
Google Calendar is a time-management and scheduling calendar service developed by Google. This component allows you to create, read, update and delete events and calendars connected to your Google account.
Connections
Google Calendar OAuth 2.0
key: oauth2The Google Calendar component authenticates requests through the Google Cloud Platform (GCP) OAuth 2.0 service. A GCP OAuth 2.0 app is required for the integration to authenticate and perform Google Calendar tasks on behalf of users.
Prerequisites
- A Google Developer account (sign up at https://console.cloud.google.com/)
Setup Steps
To create a Google Calendar OAuth 2.0 app:
- Open the Google Calendar API console at https://console.cloud.google.com/apis/api/calendar-json.googleapis.com
- Click CREATE PROJECT to create a new GCP project, or select an existing project.
- Enable the Google Calendar API for the project by clicking ENABLE.
- On the sidebar, select Credentials.
- Configure the OAuth 2.0 Consent Screen (the page that asks "Do you want to allow (Your Company) to access Google Calendar on your behalf?"). Click CONFIGURE CONSENT SCREEN.
- Choose a User Type of External so the app will be available to customers.
- Fill out the OAuth consent screen with an app name (company or product name), support email, app logo, domain, etc.
- Domains can be ignored for now.
- On the next page, add the scope
https://www.googleapis.com/auth/calendar. - Enter some test users for testing purposes. The app will only work for those testing users until it is "verified" by Google. When ready for verification (Google verifies privacy policy statement, etc), click PUBLISH APP on the OAuth consent screen. This will allow customers to authorize the integration to access their Google Calendar.
- Once the "Consent Screen" is configured, open the Credentials page from the sidebar again.
- Click +CREATE CREDENTIALS and select OAuth client ID.
- Under Application type select Web application.
- Under Authorized redirect URIs enter the OAuth 2.0 callback URL:
https://oauth2.prismatic.io/callback - Click CREATE.
- Copy the Client ID and Client Secret that are generated.
Make sure to publish the OAuth 2.0 app after testing so users outside of the test users can authorize the integration to interact with Google Calendar on their behalf.
Configure the Connection
-
Enter the Client ID and Client Secret from the OAuth app credentials.
-
For Scopes, use the default Google Calendar scope:
https://www.googleapis.com/auth/calendar- Refer to Google Calendar API scopes for additional scope information.
| Input | Notes | Example |
|---|---|---|
| Authorize URL | The OAuth 2.0 Authorization URL for Google Calendar API. | https://accounts.google.com/o/oauth2/v2/auth?access_type=offline&prompt=consent |
| Client ID | Client ID from your Google Cloud Platform OAuth 2.0 credentials. | 123456789012-abc123def456ghi789jkl012mno345pq.apps.googleusercontent.com |
| Client Secret | Client Secret from your Google Cloud Platform OAuth 2.0 credentials. | GOCSPX-abcd1234efgh5678ijkl |
| Scopes | Space-delimited list of OAuth 2.0 scopes. See Google Calendar API scopes for available options. | https://www.googleapis.com/auth/calendar |
| Token URL | The OAuth 2.0 Token URL for Google Calendar API. | https://oauth2.googleapis.com/token |
Triggers
Calendar Change Events
Receive change notifications for a Google Calendar. Automatically creates and manages a Google Calendar push notification subscription when the instance is deployed, and removes the subscription when the instance is deleted. | key: calendarChangeEvents
| Input | Notes | Example |
|---|---|---|
| Calendar ID | The calendar to monitor for changes. | en.usa#holiday@group.v.calendar.google.com |
| Connection | The Google Calendar connection to use. |
The Calendar Change Events trigger receives push notifications when events change in a specified Google Calendar. This trigger automatically creates and manages a Google Calendar push notification subscription when the instance is deployed, and removes the subscription when the instance is deleted.
For information on Google Calendar push notifications, see the Google Calendar Push Notifications documentation.
How It Works
Lifecycle Management
When an instance is deployed:
- The trigger creates a push notification channel with Google Calendar using the watch endpoint
- Establishes an initial sync token to track future changes
- Stores the channel information and sync token in cross-flow state
- Configures automatic renewal before the channel expires (typically 1 week)
When an instance is deleted:
- The trigger stops the push notification channel using the stop endpoint
- Cleans up all stored state (channel information, sync tokens)
Branches
The trigger uses two branches to route different types of events:
Push Notifications
This branch receives actual calendar change events when:
- An event is created in the calendar
- An event is updated or modified
- An event is deleted or cancelled
The payload includes detailed change information with events categorized by change type (created, updated, deleted).
Log Messages
This branch receives informational messages for:
- Sync notifications - Initial verification message when the webhook subscription is first established
- Scheduled renewals - Automatic channel renewal events that occur before expiration
- Resync events - When the sync token expires and the baseline must be re-established
These messages provide operational status information but do not contain calendar event changes.
Change Detection
The trigger uses Google Calendar's incremental synchronization to efficiently track changes:
- Initial Sync: When deployed, establishes a sync token representing the current calendar state
- Incremental Changes: Each notification uses the sync token to fetch only events that changed since the last update
- Change Categorization: Events are automatically categorized as created, updated, or deleted based on their status and timestamps
- Token Management: The sync token is updated after each successful change retrieval
Returned Data
Example payload for event created notification
{
"calendar": {
"id": "primary",
"summary": "Work Calendar",
"timeZone": "America/Chicago"
},
"changes": {
"summary": {
"totalChanges": 1,
"created": 1,
"updated": 0,
"deleted": 0
},
"createdEvents": [
{
"changeType": "created",
"id": "abc123event",
"summary": "Team Meeting",
"status": "confirmed",
"start": {
"dateTime": "2026-01-28T10:00:00-06:00"
},
"end": {
"dateTime": "2026-01-28T11:00:00-06:00"
},
"organizer": "user@example.com",
"htmlLink": "https://www.google.com/calendar/event?eid=..."
}
],
"updatedEvents": [],
"deletedEvents": [],
"allChanges": []
},
"notification": {
"resourceState": "exists",
"changedFields": "content",
"resourceId": "xyz789resource",
"timestamp": "2026-01-28T16:00:00.000Z"
}
}
Example payload for event updated notification
{
"calendar": {
"id": "primary",
"summary": "Work Calendar",
"timeZone": "America/Chicago"
},
"changes": {
"summary": {
"totalChanges": 1,
"created": 0,
"updated": 1,
"deleted": 0
},
"createdEvents": [],
"updatedEvents": [
{
"changeType": "updated",
"id": "abc123event",
"summary": "Team Meeting - Updated",
"status": "confirmed",
"start": {
"dateTime": "2026-01-28T11:00:00-06:00"
},
"end": {
"dateTime": "2026-01-28T12:00:00-06:00"
},
"updated": "2026-01-28T15:30:00.000Z",
"htmlLink": "https://www.google.com/calendar/event?eid=..."
}
],
"deletedEvents": [],
"allChanges": []
},
"notification": {
"resourceState": "exists",
"changedFields": "content,properties",
"resourceId": "xyz789resource",
"timestamp": "2026-01-28T16:00:00.000Z"
}
}
Example payload for event deleted notification
{
"calendar": {
"id": "primary",
"summary": "Work Calendar",
"timeZone": "America/Chicago"
},
"changes": {
"summary": {
"totalChanges": 1,
"created": 0,
"updated": 0,
"deleted": 1
},
"createdEvents": [],
"updatedEvents": [],
"deletedEvents": [
{
"changeType": "deleted",
"id": "abc123event",
"summary": "Cancelled Meeting",
"status": "cancelled",
"start": {
"dateTime": "2026-01-28T10:00:00-06:00"
},
"end": {
"dateTime": "2026-01-28T11:00:00-06:00"
}
}
],
"allChanges": []
},
"notification": {
"resourceState": "exists",
"changedFields": "content",
"resourceId": "xyz789resource",
"timestamp": "2026-01-28T16:00:00.000Z"
}
}
{
"branch": "Push Notifications",
"payload": {
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate, br",
"Host": "hooks.example.com",
"User-Agent": "APIs-Google; (+https://developers.google.com/webmasters/APIs-Google.html)",
"X-Amz-Cf-Id": "ExampleCloudFrontId123456789012345678901234567890123456==",
"X-Amzn-Trace-Id": "Root=1-12345678-abcdef0123456789abcdef01",
"X-Forwarded-For": "192.0.2.1, 198.51.100.1",
"X-Goog-Changed": "content,properties",
"X-Goog-Channel-Expiration": "Wed, 07 Jan 2026 07:10:37 GMT",
"X-Goog-Channel-ID": "12345678-abcd-1234-abcd-123456789012",
"X-Goog-Message-Number": "123456",
"X-Goog-Resource-ID": "ExampleResourceId1234567890",
"X-Goog-Resource-State": "update",
"X-Goog-Resource-URI": "https://www.googleapis.com/calendar/v3/calendars/primary/events?alt=json"
},
"queryParameters": null,
"rawBody": {
"data": null,
"contentType": "application/octet-stream"
},
"body": {
"data": {
"calendar": {
"id": "primary",
"summary": "Example Calendar",
"description": "This is an example calendar",
"timeZone": "America/Chicago"
},
"events": {
"totalEvents": 2,
"recentEvents": [
{
"id": "example_event_1",
"summary": "Team Meeting",
"start": {
"dateTime": "2026-01-07T10:00:00-06:00",
"timeZone": "America/Chicago"
},
"end": {
"dateTime": "2026-01-07T11:00:00-06:00",
"timeZone": "America/Chicago"
},
"updated": "2026-01-07T08:30:00.000Z"
},
{
"id": "example_event_2",
"summary": "Lunch Break",
"start": {
"dateTime": "2026-01-07T12:00:00-06:00",
"timeZone": "America/Chicago"
},
"end": {
"dateTime": "2026-01-07T13:00:00-06:00",
"timeZone": "America/Chicago"
},
"updated": "2026-01-07T08:15:00.000Z"
}
]
},
"notification": {
"resourceState": "update",
"changedFields": "content,properties",
"resourceId": "ExampleResourceId1234567890",
"timestamp": "2026-01-07T14:26:35.618Z"
}
},
"contentType": "application/octet-stream"
},
"pathFragment": "",
"webhookUrls": {
"Calendar Change Events": "https://hooks.example.com/trigger/RXhhbXBsZUluc3RhbmNlRmxvd0NvbmZpZ0lkMTIzNDU2Nzg5MDEyMzQ1Njc4OTA="
},
"webhookApiKeys": {
"Calendar Change Events": []
},
"invokeUrl": "https://hooks.example.com/trigger/RXhhbXBsZUluc3RhbmNlRmxvd0NvbmZpZ0lkMTIzNDU2Nzg5MDEyMzQ1Njc4OTA=",
"executionId": "RXhhbXBsZUV4ZWN1dGlvblJlc3VsdElkMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY=",
"customer": {
"id": "testCustomerId",
"name": "Test Customer",
"externalId": "testCustomerExternalId"
},
"instance": {
"id": "SW5zdGFuY2U6OGRiNWQ4NmYtMjBkYS00MzI5LWI2MmMtM2ZhOWFiNDUwYjUw",
"name": "Google Calendar - DEV - Calendar Change Events"
},
"user": {
"id": "testUserId",
"email": "testUserEmail@example.com",
"name": "Test User",
"externalId": "testUserExternalId"
},
"integration": {
"id": "SW50ZWdyYXRpb246ZDk2YzcxNmItODFmMS00NmQ4LTk0NzItNDU3NDZmMzg2Mjgw",
"name": "Google Calendar - DEV",
"versionSequenceId": "testIntegrationVersionSequenceId",
"externalVersion": ""
},
"flow": {
"id": "SW50ZWdyYXRpb25GbG93OmM4Y2IzY2UwLTFjYTUtNDVhZC04Yjc1LWNmNDc4YWE1Y2RlYQ==",
"name": "Calendar Change Events"
},
"startedAt": "2026-01-07 14:22:38.313677+00",
"globalDebug": false
},
"response": {
"statusCode": 200,
"contentType": "application/json"
}
}
New and Updated Events
Checks for new and updated calendar events on a configured schedule. | key: pollEventsTrigger
| Input | Notes | Example |
|---|---|---|
| Calendar ID | The calendar to poll for event changes. | en.usa#holiday@group.v.calendar.google.com |
| Connection | The Google Calendar connection to use. |
The New and Updated Events trigger checks for new and updated calendar events on a configured schedule. This trigger uses Google Calendar's incremental synchronization to efficiently detect changes without fetching the entire calendar on each poll.
For information on Google Calendar's synchronization mechanism, see the Google Calendar Sync documentation.
How It Works
This polling trigger uses a stateful synchronization approach:
- Initial Poll: On the first execution, establishes a sync token representing the current calendar state
- Subsequent Polls: Uses the sync token to fetch only events that changed since the last poll
- Change Detection: Automatically categorizes events as created, updated, or deleted based on timestamps and status
- State Persistence: Stores the sync token between polls to maintain continuity
Returned Data
Example payload with multiple changes
{
"changes": {
"summary": {
"totalChanges": 3,
"created": 1,
"updated": 1,
"deleted": 1,
"syncTokenAvailable": true
},
"createdEvents": [
{
"changeType": "created",
"id": "abc123event",
"summary": "New Team Meeting",
"status": "confirmed",
"start": {
"dateTime": "2026-01-30T14:00:00-06:00",
"timeZone": "America/Chicago"
},
"end": {
"dateTime": "2026-01-30T15:00:00-06:00",
"timeZone": "America/Chicago"
},
"created": "2026-01-28T10:30:00.000Z",
"updated": "2026-01-28T10:30:00.000Z",
"organizer": "user@example.com",
"htmlLink": "https://www.google.com/calendar/event?eid=..."
}
],
"updatedEvents": [
{
"changeType": "updated",
"id": "def456event",
"summary": "Updated Meeting Time",
"status": "confirmed",
"start": {
"dateTime": "2026-01-30T15:00:00-06:00",
"timeZone": "America/Chicago"
},
"end": {
"dateTime": "2026-01-30T16:00:00-06:00",
"timeZone": "America/Chicago"
},
"created": "2026-01-20T08:00:00.000Z",
"updated": "2026-01-28T11:15:00.000Z",
"organizer": "user@example.com",
"htmlLink": "https://www.google.com/calendar/event?eid=..."
}
],
"deletedEvents": [
{
"changeType": "deleted",
"id": "ghi789event",
"summary": "Cancelled Meeting",
"status": "cancelled",
"start": {
"dateTime": "2026-01-29T10:00:00-06:00"
},
"end": {
"dateTime": "2026-01-29T11:00:00-06:00"
}
}
],
"allChanges": []
},
"calendarId": "primary",
"syncToken": "newSyncTokenForNextPoll"
}
{
"branch": "default",
"payload": {
"headers": {},
"queryParameters": null,
"rawBody": {
"data": null,
"contentType": null
},
"body": {
"data": {
"changes": {
"summary": {
"totalChanges": 0,
"created": 0,
"updated": 0,
"deleted": 0,
"syncTokenAvailable": true
},
"createdEvents": [],
"updatedEvents": [],
"deletedEvents": [],
"allChanges": []
},
"calendarId": "example@group.calendar.google.com",
"syncToken": "exampleSyncToken"
}
},
"pathFragment": "",
"webhookUrls": {},
"webhookApiKeys": {},
"invokeUrl": "",
"executionId": "RXhhbXBsZUV4ZWN1dGlvblJlc3VsdElkMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY=",
"customer": {
"id": "testCustomerId",
"name": "Test Customer",
"externalId": "testCustomerExternalId"
},
"instance": {
"id": "SW5zdGFuY2U6OGRiNWQ4NmYtMjBkYS00MzI5LWI2MmMtM2ZhOWFiNDUwYjUw",
"name": "Google Calendar - Polling Events"
},
"user": {
"id": "testUserId",
"email": "testUserEmail@example.com",
"name": "Test User",
"externalId": "testUserExternalId"
},
"integration": {
"id": "SW50ZWdyYXRpb246ZDk2YzcxNmItODFmMS00NmQ4LTk0NzItNDU3NDZmMzg2Mjgw",
"name": "Google Calendar - DEV",
"versionSequenceId": "testIntegrationVersionSequenceId",
"externalVersion": ""
},
"flow": {
"id": "SW50ZWdyYXRpb25GbG93OmM4Y2IzY2UwLTFjYTUtNDVhZC04Yjc1LWNmNDc4YWE1Y2RlYQ==",
"name": "Poll Events"
},
"startedAt": "2026-01-07 14:22:38.313677+00",
"globalDebug": false
},
"polledNoChanges": false
}
Data Sources
Select Calendar
A list of selectable calendars | key: selectCalendar | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Google Calendar connection to use. |
{
"result": [
{
"label": "Holidays in United States",
"key": "en.usa#holiday@group.v.calendar.google.com"
}
]
}
Select Event
A list of selectable events | key: selectEvent | type: picklist
| Input | Notes | Example |
|---|---|---|
| Calendar ID | Calendar ID to get events from. | en.usa#holiday@group.v.calendar.google.com |
| Connection | The Google Calendar connection to use. |
{
"result": [
{
"label": "New Year's Day (2020-01-01 to 2020-01-02)",
"key": "20200101_q8ue475rr4p7opsd4c0lr7g5pg"
}
]
}
Actions
Create Calendar
Create a new calendar | key: createCalendar
| Input | Notes | Example |
|---|---|---|
| Description | A detailed description of the event. | Discuss sprint progress and blockers |
| Connection | The Google Calendar connection to use. | |
| Summary | The title or summary of the event. | Team Standup Meeting |
| Time Zone | The timezone of the event in IANA Time Zone Database format. See IANA timezone list. | America/Chicago |
Create Event
Create a new event in a given calendar | key: createEvent
| Input | Notes | Example |
|---|---|---|
| Add Conference Event | When true, creates a Google Meet conference link for the event. | false |
| Attendees | Array of attendee objects with email addresses and optional flags. See Google Calendar Events API for full schema. | |
| Calendar ID | The unique identifier of the calendar. Use 'primary' for the user's primary calendar. | en.usa#holiday@group.v.calendar.google.com |
| Connection | The Google Calendar connection to use. | |
| Description | A detailed description of the event. | Discuss sprint progress and blockers |
| End Time | The end time of the event in ISO 8601 format with timezone offset. | 2026-05-28T19:00:00-07:00 |
| Event Location | The physical or virtual location of the event. | Conference Room A, Building 3 |
| Remind Method | How to send the event reminder. Only used when 'Default Reminder' is false. | |
| Remind Before (minutes) | Number of minutes before the event to send the reminder. Only used when 'Default Reminder' is false. | 30 |
| Send Updates | Whether to send notifications about the creation of the new event. Note that some emails might still be sent. The default is false. | |
| Start Time | The start time of the event in ISO 8601 format with timezone offset. | 2026-05-28T17:00:00-07:00 |
| Summary | The title or summary of the event. | Team Standup Meeting |
| Time Zone | The timezone of the event in IANA Time Zone Database format. See IANA timezone list. | America/Chicago |
| Default Reminder | When true, the event uses the default reminder settings from the calendar. | false |
Delete Calendar
Delete an existing calendar by Id | key: deleteCalendar
| Input | Notes | Example |
|---|---|---|
| Calendar ID | The unique identifier of the calendar. Use 'primary' for the user's primary calendar. | en.usa#holiday@group.v.calendar.google.com |
| Connection | The Google Calendar connection to use. |
Delete Event
Delete an event by an Id | key: deleteEvent
| Input | Notes | Example |
|---|---|---|
| Calendar ID | The unique identifier of the calendar. Use 'primary' for the user's primary calendar. | en.usa#holiday@group.v.calendar.google.com |
| Connection | The Google Calendar connection to use. | |
| Event ID | The unique identifier of the event. | 20260101_q8ue475rr4p7opsd4c0lr7g5pg |
| Send Updates | Guests who should receive notifications about the deletion of the event. |
Get Calendar
Get the information and metadata of a calendar by Id | key: getCalendar
| Input | Notes | Example |
|---|---|---|
| Calendar ID | The unique identifier of the calendar. Use 'primary' for the user's primary calendar. | en.usa#holiday@group.v.calendar.google.com |
| Connection | The Google Calendar connection to use. |
Get Event
Get the information and metadata of an event by Id | key: getEvent
| Input | Notes | Example |
|---|---|---|
| Calendar ID | The unique identifier of the calendar. Use 'primary' for the user's primary calendar. | en.usa#holiday@group.v.calendar.google.com |
| Connection | The Google Calendar connection to use. | |
| Event ID | The unique identifier of the event. | 20260101_q8ue475rr4p7opsd4c0lr7g5pg |
List Calendars
List all calendars | key: listCalendar
| Input | Notes | Example |
|---|---|---|
| Connection | The Google Calendar connection to use. | |
| Fetch All | When true, fetches all pages of results, ignoring the 'Max Results' and 'Page Token' inputs. | false |
| Max Results | Maximum number of results to return (1-250). | 50 |
| Page Token | Pagination token returned from a previous request to retrieve the next page of results. | lslTXFcbLQKkb0vP9Kgh5hy0Y0OnC7Z9ZPHPwPmMnxSk3eiDRMkct7D8E |
List Events
List all events in a given calendar | key: listEvents
| Input | Notes | Example |
|---|---|---|
| Calendar ID | The unique identifier of the calendar. Use 'primary' for the user's primary calendar. | en.usa#holiday@group.v.calendar.google.com |
| Fetch All | When true, fetches all pages of results, ignoring the 'Max Results' and 'Page Token' inputs. | false |
| Connection | The Google Calendar connection to use. | |
| Max Attendees | Maximum number of attendees to include in the response. If there are more attendees, only the participant is returned. | 10 |
| Max Results | Maximum number of results to return (1-250). | 50 |
| Order By | The order of events returned in the result. Default is an unspecified, stable order. | |
| Page Token | Pagination token returned from a previous request to retrieve the next page of results. | lslTXFcbLQKkb0vP9Kgh5hy0Y0OnC7Z9ZPHPwPmMnxSk3eiDRMkct7D8E |
| Query | Free text search terms to find events matching in summary, description, location, or attendee fields. | team meeting |
| Show Deleted | When true, includes deleted events in the response. | false |
| Show Hidden Invitations | When true, includes hidden invitations in the response. | false |
| Single Events | When true, expands recurring events into instances and returns only single one-off events and instances, not the underlying recurring events. | false |
| Sync Token | Token for retrieving only resources modified since the last sync request. | lslTXFcbLQKkb0vP9Kgh5hy0Y0OnC7Z9ZPHPwPmMnxSk3eiDRMkct7D8E |
| Time Max | Upper bound for filtering events by start time. Must be in ISO 8601 format with timezone offset. | 2026-06-03T10:00:00-07:00 |
| Time Min | Lower bound for filtering events by end time. Must be in ISO 8601 format with timezone offset. | 2026-06-03T10:00:00-07:00 |
| Time Zone | Time zone used in the response. | America/Chicago |
| Updated Min | Lower bound for filtering by last modification time (RFC 3339 format). Deleted entries since this time are always included regardless of 'Show Deleted' setting. | 2026-01-01T00:00:00Z |
Raw Request
Send raw HTTP request to Google Calendar | key: rawRequest
| Input | Notes | Example |
|---|---|---|
| Connection | The Google Calendar connection to use. | |
| Data | The HTTP body payload to send to the URL. | {"exampleKey": "Example Data"} |
| File Data | File Data to be sent as a multipart form upload. | [{key: "example.txt", value: "My File Contents"}] |
| File Data File Names | File names to apply to the file data inputs. Keys must match the file data keys above. | |
| Form Data | The Form Data to be sent as a multipart form upload. | [{"key": "Example Key", "value": new Buffer("Hello World")}] |
| Header | A list of headers to send with the request. | User-Agent: curl/7.64.1 |
| Max Retry Count | The maximum number of retries to attempt. Specify 0 for no retries. | 0 |
| Method | The HTTP method to use. | |
| Query Parameter | A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2. | |
| Response Type | The type of data you expect in the response. You can request json, text, or binary data. | json |
| Retry On All Errors | If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors. | false |
| Retry Delay (ms) | The delay in milliseconds between retries. This is used when 'Use Exponential Backoff' is disabled. | 0 |
| Timeout | The maximum time that a client will await a response to its request | 2000 |
| URL | Input the path only (/colors), The base URL is already included (https://www.googleapis.com/calendar/v3). For example, to connect to https://www.googleapis.com/calendar/v3/colors, only /colors is entered in this field. | /colors |
| Use Exponential Backoff | Specifies whether to use a pre-defined exponential backoff strategy for retries. When enabled, 'Retry Delay (ms)' is ignored. | false |
Update Event
Update the information and metadata of an existing event | key: updateEvent
| Input | Notes | Example |
|---|---|---|
| Attendees | Array of attendee objects with email addresses and optional flags. See Google Calendar Events API for full schema. | |
| Calendar ID | The unique identifier of the calendar. Use 'primary' for the user's primary calendar. | en.usa#holiday@group.v.calendar.google.com |
| Connection | The Google Calendar connection to use. | |
| Description | A detailed description of the event. | Discuss sprint progress and blockers |
| End Time | The end time of the event in ISO 8601 format with timezone offset. | 2026-05-28T19:00:00-07:00 |
| Event ID | The unique identifier of the event. | 20260101_q8ue475rr4p7opsd4c0lr7g5pg |
| Event Location | The physical or virtual location of the event. | Conference Room A, Building 3 |
| Remind Method | How to send the event reminder. Only used when 'Default Reminder' is false. | |
| Remind Before (minutes) | Number of minutes before the event to send the reminder. Only used when 'Default Reminder' is false. | 30 |
| Send Updates | Guests who should receive notifications about the event update (for example, title changes, etc.). | |
| Start Time | The start time of the event in ISO 8601 format with timezone offset. | 2026-05-28T17:00:00-07:00 |
| Summary | The title or summary of the event. | Team Standup Meeting |
| Time Zone | The timezone of the event in IANA Time Zone Database format. See IANA timezone list. | America/Chicago |
| Default Reminder | When true, the event uses the default reminder settings from the calendar. | false |
Changelog
2026-01-26
Added calendar event monitoring capabilities:
- Calendar Change Events - Lifecycle webhook trigger that automatically manages Google Calendar push notification subscriptions when instances are deployed or deleted, with support for Push Notifications and Log Messages branches
- New and Updated Events - Polling trigger that monitors calendars for new and updated events on a configured schedule
2025-07-31
Modernized component with inline data sources for selecting Calendars and Events.
2025-04-26
Enhanced event management capabilities:
- Added "Send Updates" option to Update Event and Delete Event actions
- Implemented email invitations to attendees on Create Event
- Added Conference Event field support
- Fixed attendee input handling