Create Event

google_calendar.create_event
ActionBusiness appsconnection required

Calls Calendar events.insert with the connection's OAuth2 credential.

Create an event on a Google Calendar.

Connection

Required
Yes — the node will not save without one
Auth type
OAuth 2.0
Providers
Google Calendar
Secret shape
{"client_id", "client_secret", "refresh_token"}
Config it needs
token_uri
Resolved by
config.connection_id, else node.connection_id

Configuration

11 fields, 3 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
calendar_id
Calendar id, or 'primary'.
stringNoprimary——
summary
The event's title, as it will show in the calendar.
stringYes———
start
RFC3339 datetime, or a date for all-day.
stringYes———
end
RFC3339 datetime, or a date for all-day.
stringYes———
time_zone
IANA zone (America/New_York) for start/end. Required when start/end carry no offset, and for recurring events.
stringNo———
description
Event description / agenda (plain text).
stringNo———
location
Where the event takes place (free text or an address).
stringNo———
attendees
Attendee email addresses — ["a@x.co"], or Google's own [{"email": "a@x.co"}] form.
arrayNo———
recurrence
RRULE/EXDATE lines, e.g. ["RRULE:FREQ=WEEKLY;BYDAY=MO"].
arrayNo—array of string—
reminders
Reminder overrides, e.g. [{"method": "popup", "minutes": 10}]. A bare list turns the calendar defaults off.
objectNo——{"method":"popup","minutes":10}
send_updates
Who Google emails about the invitation. Defaults to 'all' when there are attendees — without it guests are added but never notified.
stringNoallone of "all", "externalOnly", "none"—

Example configuration

Every value below is the contract’s own example or default — nothing invented.

{
  "calendar_id": "primary",
  "reminders": {
    "method": "popup",
    "minutes": 10
  },
  "send_updates": "all"
}

Output

One shape.

event

FieldTypeExample
id
Created event id.
string—
html_link
Link to the event in Google Calendar.
string—
status
confirmed | tentative | cancelled.
string—
ical_uid
Stable cross-calendar id — match on this to update instead of duplicating on a re-run.
string—
recurring_event_id
Set when the created event belongs to a recurring series.
string—
{
  "html_link": "",
  "ical_uid": "",
  "id": "",
  "recurring_event_id": "",
  "status": ""
}

Notes

  • The refresh token must have a calendar scope (calendar or calendar.events).

See Create Event run in a workflow.

In a technical demo we add the Google Calendar connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.