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.

idtext
summarytext
starttext
endtext
createdtext
updatedtext
html_linktext
descriptiontext
locationtext
attendeeslist

Actions

ActionWhat it does
Add eventCreate a new event on a Google Calendar.
Check time slot availabilityCheck if a time slot is available on a Google Calendar.
Find eventsList 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 eventDelete a calendar event by its title.

Add event

Create a new event on a Google Calendar.

Inputs

TitletitletextRequired
Title of the event
Start date and timestart_date_timetextRequired
When the event starts (for example, 2024-01-15T10:00:00-05:00)
End date and timeend_date_timetextRequired
When the event ends (for example, 2024-01-15T11:00:00-05:00)
Calendar IDcalendar_idtext
The calendar to add the event to. Leave blank to use your main calendar ('primary')
Descriptiondescriptiontext
Description or notes for the event
Locationlocationtext
Location of the event
Time zonetime_zonetext
Time zone for the event (e.g., America/New_York)
Attendeesattendeeslist
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 IDcalendar_idtextRequired
The calendar to check (use 'primary' for your main calendar)
Start date and timestart_date_timetextRequired
When the time slot starts (for example, 2024-01-15T10:00:00-05:00)
End date and timeend_date_timetextRequired
When the time slot ends (for example, 2024-01-15T11:00:00-05:00)
Time zonetime_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 IDcalendar_idtext
The calendar to read. Leave blank to use your main calendar ('primary')
Fromstart_date_timetext
Only events ending after this time (for example, 2024-01-15T00:00:00-05:00). Leave blank to start from now
Untilend_date_timetext
Only events starting before this time (for example, 2024-01-22T00:00:00-05:00)
Time zonetime_zonetext
Time zone for dates written without an offset (e.g., America/New_York)
Searchsearchtext
Only events whose title, description, location or guests contain this text
Limitlimitnumber
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 IDcalendar_idtext
The calendar to remove the event from. Leave blank to use your main calendar ('primary')
TitletitletextRequired
Title of the event to delete
If multiple events matchmultiple_modetext
How to handle multiple matching events: 'first' (delete only the first match) or 'all' (delete all matches)
Send updatessend_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"
    ]
  }
}

On this page