Skip to main content
POST
Create a Google Calendar event (one-time or recurring series) as the calling member

Authorizations

x-api-key
string
header
required

Organization API key passed as the x-api-key header. The raw key is the header value; do not prefix it with Bearer.

Body

application/json
summary
string
required

Event title.

Required string length: 1 - 1000
start
string<date-time>
required

Event start date-time with a UTC offset or Z.

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
end
string<date-time>
required

Event end date-time with a UTC offset or Z.

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
description
string

Optional event description.

Maximum string length: 20000
location
string

Optional event location.

Maximum string length: 1000
timeZone
string

IANA timeZone for start and end; required for recurring meetings. Never guess the user's time zone.

Required string length: 1 - 128
attendees
string<email>[]

Optional attendee email addresses.

Maximum array length: 100
Pattern: ^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$

Set true to request a Google Meet link; the response returns meetLink when Google creates it.

recurrence
object

Structured recurrence for a recurring meeting (repeat weekly, daily, monthly or yearly). Requires count or until and an explicit IANA timeZone. Do not combine with rrule.

rrule
string[]

Advanced recurrence escape hatch, mutually exclusive with recurrence. At most 32 lines of 2048 characters; RRULE:, EXDATE:, RDATE: only. RRULE requires COUNT (1-730) or UTC UNTIL; unbounded series are rejected. Supports FREQ daily/weekly/monthly/yearly, INTERVAL 1-99, BYDAY, BYMONTH, BYMONTHDAY, BYSETPOS and WKST. EXDATE/RDATE and RRULE UNTIL use basic UTC YYYYMMDDTHHmmssZ, matching this API's timed events; date-only values are not supported.

Required array length: 1 - 32 elements
Required string length: 1 - 2048

Response

Google Calendar event created.

ok
boolean
required
eventId
string
required
summary
string
required
start
string
required
end
string
required
recurrence
string[] | null
required

Google-confirmed recurrence rules for the created series; null for a one-time event. eventId is the series master ID.