GoRunner docs
Search or askSearch⌘K

Google Calendar

Create, update and find events in Google Calendar.

9 actions · 1 trigger · Sign in with Google

Connect Google Calendar

  1. In the sidebar, open Connections and press Add connection.
  2. Type calendar and choose Google Calendar.
  3. Press Sign in with Google.
  4. Choose your account in Google’s window and allow access.

You should see Signed in as and the account’s address. GoRunner can then see and edit its calendars.

You can also connect from a step: under Connection, press New.

What if it says “Google sign-in isn’t set up here”?

This installation has no Google app yet. An admin of the installation sees Set up Google sign-in instead, and sets it up once for everyone:

  1. In Google Cloud, create an OAuth client of type Web application, and turn on the API for Google Calendar.
  2. In GoRunner, copy the Redirect address to add in Google Cloud, and add it to the client.
  3. Paste the Client ID and Client secret, then press Save and sign in.

Publish the app in Google Cloud. An app left in Testing signs everyone out after 7 days.

Everyone else sees who to ask. Until it is set up, Paste an access token instead lets you try a step. A pasted token lasts about an hour and can’t renew itself.

Set up Google sign-in for connections

Can I use my own Google app?

Yes. In the sheet, open Use your own Google app and paste its Client ID and Client secret. Add the Redirect address to add in Google Cloud to your app first. The connection then signs in through your app instead of the installation’s.

Connections says how to sign in again, rename or delete it. In a product that embeds GoRunner, Add connection can be missing: then your provider makes connections for you.

Start a workflow

Add a trigger and choose Google Calendar. The trigger uses the same connection as the steps.

On Event Change

Polls a calendar (about once a minute) and fires for each newly created, updated, or cancelled event.

Calendar · Optional

Calendar id (an email address) to watch, or 'primary'.

Default: primary.

Trigger On · Optional

Fire when an event is created, updated, or cancelled.

Options: Event Created, Event Updated, Event Cancelled.

Default: Event Created.

Search Term (optional) · Optional

Only fire for events matching this free-text search.

A later step can use its data, such as {{trigger.change_type}}, {{trigger.end}}, {{trigger.htmlLink}} and 5 more. See Use data from earlier steps.

Do things in Google Calendar

Add a Google Calendar step, choose a Resource, then an Operation. Choose a row to see its fields.

Later steps read a step’s output by its name: see Use data from earlier steps.

Not in your list? See When an app isn’t here.

For developers

In the API, which calls apps pieces, Google Calendar is pieceId: "googlecalendar" with actionId: "googlecalendar", set by resource and an operation_… field, such as operation_calendar. Its trigger is googlecalendartrigger / googlecalendar_poll. Get an app returns every field.

It can change something outside the run (writes_external). See How versions and side effects work.

Google Calendar › Event

Create

Calendar · Optional

Calendar id (an email address), or 'primary' for your main calendar.

Default: primary.

Start · Required

Start time, ISO-8601 (such as 2026-02-01T09:00:00). For an all-day event use the date only.

End · Required

End time, ISO-8601 (such as 2026-02-01T10:00:00).

Title · Optional

The event title/summary.

Description · Optional

Event description.

Location · Optional

Where the event is.

Attendees · Optional

Comma-separated attendee email addresses.

Time Zone · Optional

IANA time zone for the start/end (such as Europe/London). Needed when they are written without an offset (2026-02-01T09:00:00); a time with one (…Z, …+01:00) is that instant.

Recurrence (RRULE) · Optional

An iCal RRULE, such as FREQ=WEEKLY;INTERVAL=1;COUNT=10. Blank = a single event.

Color ID · Optional

Event color id (1–11).

All Day · Optional

Treat start/end as whole-day dates.

Off by default.

Use Default Reminders · Optional

On: the calendar's default reminders. Off: the Reminders below. Left unset, a new event gets the calendar's default reminders and an updated one keeps its own.

Reminders · Optional

Reminder overrides, such as [{"method":"popup","minutes":10},{"method":"email","minutes":60}].

Shows when Use Default Reminders is off.

Add Google Meet · Optional

Attach a Google Meet video conference to the event.

Off by default.

Visibility · Optional

Event visibility.

Options: Default, Public, Private, Confidential.

Show Me As · Optional

Whether the event blocks time on your calendar.

Options: Busy, Available.

Guests Can Modify · Optional

Guests Can Modify. Left unset, a new event gets Google's default (off) and an updated one keeps its setting.

Guests Can Invite Others · Optional

Guests Can Invite Others. Left unset, a new event gets Google's default (on) and an updated one keeps its setting.

Guests Can See Other Guests · Optional

Guests Can See Other Guests. Left unset, a new event gets Google's default (on) and an updated one keeps its setting.

Send Updates · Optional

Who to notify about the change.

Options: Default, All guests, External only, Nobody.

Get

Calendar · Optional

Calendar id (an email address), or 'primary' for your main calendar.

Default: primary.

Event ID · Required

The event id.

Get Many

Calendar · Optional

Calendar id (an email address), or 'primary' for your main calendar.

Default: primary.

Return All · Optional

Fetch every page of events.

Off by default.

Limit · Optional

Max events when not returning all.

Default: 50.

Shows when Return All is off.

After (Time Min) · Optional

Only events that end after this ISO-8601 time (UTC when written without an offset).

Before (Time Max) · Optional

Only events that start before this ISO-8601 time (UTC when written without an offset).

Search Text · Optional

Free-text search across event fields.

Updated After · Optional

Only events modified after this ISO-8601 time (UTC when written without an offset).

Order By · Optional

Sort order.

Options: Default, Start Time, Updated.

Expand Recurring Events · Optional

Expand recurring events into individual instances (required for Order By Start Time).

On by default.

Show Deleted · Optional

Include cancelled events.

Off by default.

Update

Calendar · Optional

Calendar id (an email address), or 'primary' for your main calendar.

Default: primary.

Event ID · Required

The event id.

Start · Optional

New start time, ISO-8601 (leave blank to keep).

End · Optional

New end time, ISO-8601 (leave blank to keep).

Title · Optional

The event title/summary.

Description · Optional

Event description.

Location · Optional

Where the event is.

Attendees · Optional

Comma-separated attendee email addresses.

Time Zone · Optional

IANA time zone for the start/end (such as Europe/London). Needed when they are written without an offset (2026-02-01T09:00:00); a time with one (…Z, …+01:00) is that instant.

Recurrence (RRULE) · Optional

An iCal RRULE, such as FREQ=WEEKLY;INTERVAL=1;COUNT=10. Blank = a single event.

Color ID · Optional

Event color id (1–11).

All Day · Optional

Treat start/end as whole-day dates.

Off by default.

Use Default Reminders · Optional

On: the calendar's default reminders. Off: the Reminders below. Left unset, a new event gets the calendar's default reminders and an updated one keeps its own.

Reminders · Optional

Reminder overrides, such as [{"method":"popup","minutes":10},{"method":"email","minutes":60}].

Shows when Use Default Reminders is off.

Visibility · Optional

Event visibility.

Options: Default, Public, Private, Confidential.

Show Me As · Optional

Whether the event blocks time on your calendar.

Options: Busy, Available.

Guests Can Modify · Optional

Guests Can Modify. Left unset, a new event gets Google's default (off) and an updated one keeps its setting.

Guests Can Invite Others · Optional

Guests Can Invite Others. Left unset, a new event gets Google's default (on) and an updated one keeps its setting.

Guests Can See Other Guests · Optional

Guests Can See Other Guests. Left unset, a new event gets Google's default (on) and an updated one keeps its setting.

Send Updates · Optional

Who to notify about the change.

Options: Default, All guests, External only, Nobody.

Delete

Calendar · Optional

Calendar id (an email address), or 'primary' for your main calendar.

Default: primary.

Event ID · Required

The event id.

Send Updates · Optional

Who to notify about the change.

Options: Default, All guests, External only, Nobody.

Add Attendees

Calendar · Optional

Calendar id (an email address), or 'primary' for your main calendar.

Default: primary.

Event ID · Required

The event id.

Attendees to Add · Required

New attendee email addresses to add to the event, comma-separated, or a JSON array (such as ["a@x.io","b@x.io"]). Existing attendees are kept.

Send Updates · Optional

Who to notify about the change.

Options: Default, All guests, External only, Nobody.

Google Calendar › Calendar

Get Availability

Calendar · Optional

Calendar id (an email address), or 'primary'.

Default: primary.

Start · Required

Start of the interval to check, ISO-8601.

End · Required

End of the interval to check, ISO-8601.

Output Format · Optional

What to return.

Options: Available (true/false), Booked slots, Raw response.

Default: Available (true/false).

Time Zone · Optional

IANA time zone for the query (optional): start and end times written without an offset are read in it (in UTC when it is blank).

Create Quick Event

Calendar · Optional

Calendar id (an email address), or 'primary'.

Default: primary.

Summary · Required

Natural-language text describing the event (such as 'Lunch with Jane next Tuesday at 1pm').

Send Updates · Optional

Guests who should be notified about the new event.

Options: Nobody, All guests, External only.

Default: Nobody.

Add Calendar to Calendar List

Calendar ID · Required

The id of the calendar to add to your calendar list (find it in that calendar's settings).