Google Calendar
App · Calendars · 4 actions · 1 trigger
Create and manage events on Google Calendar.
Triggers
Start a workflow when something happens in Google Calendar. See how triggers work.
Google Calendar New Event
Triggers when a new event is created in Google Calendar.
Filters
Narrow which events start a run.
calendar_id
Event fields
What a run starts with. Later steps read each field with an @ reference.
idtextsummarytextstarttextendtextcreatedtextupdatedtexthtml_linktextdescriptiontextlocationtextattendeeslist
Actions
| Action | What it does |
|---|---|
| Add event | Create a new event on a Google Calendar. |
| Check time slot availability | Check if a time slot is available on a Google Calendar. |
| Find events | List the events on a Google Calendar in a time range, soonest first, with each event's title, start and end, location, description and guest emails. |
| Remove event | Delete a calendar event by its title. |
Add event
Create a new event on a Google Calendar.
Inputs
- Title
titletextRequired - Title of the event
- Start date and time
start_date_timetextRequired - When the event starts (for example, 2024-01-15T10:00:00-05:00)
- End date and time
end_date_timetextRequired - When the event ends (for example, 2024-01-15T11:00:00-05:00)
- Calendar ID
calendar_idtext - The calendar to add the event to. Leave blank to use your main calendar ('primary')
- Description
descriptiontext - Description or notes for the event
- Location
locationtext - Location of the event
- Time zone
time_zonetext - Time zone for the event (e.g., America/New_York)
- Attendees
attendeeslist - List of attendee email addresses
Outputs
event_idtext- ID of the created event
html_linktext- URL link to the event
Example output
{
"event_id": "abc123xyz",
"html_link": "https://calendar.google.com/calendar/event?eid=abc123xyz"
}Check time slot availability
Check if a time slot is available on a Google Calendar.
Inputs
- Calendar ID
calendar_idtextRequired - The calendar to check (use 'primary' for your main calendar)
- Start date and time
start_date_timetextRequired - When the time slot starts (for example, 2024-01-15T10:00:00-05:00)
- End date and time
end_date_timetextRequired - When the time slot ends (for example, 2024-01-15T11:00:00-05:00)
- Time zone
time_zonetext - Time zone for the check (e.g., America/New_York)
Outputs
busylist- List of busy time windows
busy_summarytext- Human-readable summary of busy times
is_availabletrue/false- Whether the time slot is free
Example output
{
"busy": [],
"busy_summary": "None",
"is_available": true
}Find events
List the events on a Google Calendar in a time range, soonest first, with each event's title, start and end, location, description and guest emails.
Inputs
- Calendar ID
calendar_idtext - The calendar to read. Leave blank to use your main calendar ('primary')
- From
start_date_timetext - Only events ending after this time (for example, 2024-01-15T00:00:00-05:00). Leave blank to start from now
- Until
end_date_timetext - Only events starting before this time (for example, 2024-01-22T00:00:00-05:00)
- Time zone
time_zonetext - Time zone for dates written without an offset (e.g., America/New_York)
- Search
searchtext - Only events whose title, description, location or guests contain this text
- Limit
limitnumber - Most events to return (1-250, default 25)
Outputs
countnumber- Number of events returned
eventslist
Example output
{
"count": 1,
"events": [
{
"attendees": [
"jane@acme.com"
],
"created": "2024-01-10T09:00:00Z",
"description": "",
"end": "2024-01-15T10:30:00-05:00",
"html_link": "https://calendar.google.com/calendar/event?eid=abc123xyz",
"id": "abc123xyz",
"location": "",
"start": "2024-01-15T10:00:00-05:00",
"summary": "Intro call with Acme",
"updated": "2024-01-10T09:00:00Z"
}
]
}Remove event
Delete a calendar event by its title.
Inputs
- Calendar ID
calendar_idtext - The calendar to remove the event from. Leave blank to use your main calendar ('primary')
- Title
titletextRequired - Title of the event to delete
- If multiple events match
multiple_modetext - How to handle multiple matching events: 'first' (delete only the first match) or 'all' (delete all matches)
- Send updates
send_updatestext - Whether to notify guests about the change: 'all', 'externalOnly', or 'none'
Outputs
Response envelope; the payload is in the "deletedEventIds" field.
deletedEventIdsobject
Example output
{
"deletedEventIds": {
"deleted_event_ids": [
"event123"
]
}
}