You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(google-calendar): wire freebusy, align tools with API v3, add calendar + sharing tools (#5084)
* feat(google-calendar): wire freebusy, align tools with API v3, add calendar + sharing tools
* fix(google-calendar): address review — trust offset timezones, make list_acl showDeleted usable, harden unshare error parse, clarify update attendees
* fix(google-calendar): wire list q/pageToken into block, harden invite PUT error parse
* fix(google-calendar): make list orderBy user-selectable, clarify update timeZone applies to start/end
* fix(google-calendar): require timeZone for recurring timed events, clarify recurrence replace semantics
* fix(google-calendar): validate grantee before building share ACL body
Throw a clear error when scopeType is user/group/domain but scopeValue is
missing or blank, instead of POSTing a scope-type-only body that the Calendar
ACL API rejects with an opaque error.
Copy file name to clipboardExpand all lines: apps/docs/content/docs/en/integrations/google_calendar.mdx
+125-7Lines changed: 125 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -48,10 +48,12 @@ Create a new event in Google Calendar. Returns API-aligned fields only.
48
48
|`summary`| string | Yes | Event title/summary |
49
49
|`description`| string | No | Event description |
50
50
|`location`| string | No | Event location |
51
-
|`startDateTime`| string | Yes | Start date and time. MUST include timezone offset \(e.g., 2025-06-03T10:00:00-08:00\)OR provide timeZone parameter|
52
-
|`endDateTime`| string | Yes | End date and time. MUST include timezone offset \(e.g., 2025-06-03T11:00:00-08:00\)OR provide timeZone parameter|
51
+
|`startDateTime`| string | Yes | Start time. Use a datetime with timezone offset \(2025-06-03T10:00:00-08:00\)or a date \(2025-06-03\) for an all-day event|
52
+
|`endDateTime`| string | Yes | End time. Use a datetime with timezone offset \(2025-06-03T11:00:00-08:00\)or a date \(2025-06-04\) for an all-day event|
53
53
|`timeZone`| string | No | Time zone \(e.g., America/Los_Angeles\). Required if datetime does not include offset. Defaults to America/Los_Angeles if not provided. |
54
54
|`attendees`| array | No | Array of attendee email addresses |
55
+
|`recurrence`| string | No | Recurrence rule\(s\) in RFC 5545 format \(e.g., RRULE:FREQ=WEEKLY;BYDAY=MO,WE,FR\). Separate multiple rules with newlines. |
56
+
|`addGoogleMeet`| boolean | No | Attach a Google Meet video conference link to the event |
55
57
|`sendUpdates`| string | No | How to send updates to attendees: all, externalOnly, or none |
56
58
57
59
#### Output
@@ -60,10 +62,12 @@ Create a new event in Google Calendar. Returns API-aligned fields only.
60
62
| --------- | ---- | ----------- |
61
63
|`id`| string | Event ID |
62
64
|`htmlLink`| string | Event link |
65
+
|`hangoutLink`| string | Google Meet link |
63
66
|`status`| string | Event status |
64
67
|`summary`| string | Event title |
65
68
|`description`| string | Event description |
66
69
|`location`| string | Event location |
70
+
|`recurrence`| json | Recurrence rules |
67
71
|`start`| json | Event start |
68
72
|`end`| json | Event end |
69
73
|`attendees`| json | Event attendees |
@@ -81,7 +85,10 @@ List events from Google Calendar. Returns API-aligned fields only.
81
85
|`calendarId`| string | No | Google Calendar ID \(e.g., primary or calendar@group.calendar.google.com\)|
82
86
|`timeMin`| string | No | Lower bound for events \(RFC3339 timestamp, e.g., 2025-06-03T00:00:00Z\)|
83
87
|`timeMax`| string | No | Upper bound for events \(RFC3339 timestamp, e.g., 2025-06-04T00:00:00Z\)|
84
-
|`orderBy`| string | No | Order of events returned \(startTime or updated\)|
88
+
|`q`| string | No | Free-text search across event summary, description, location, attendees, and organizer |
89
+
|`maxResults`| number | No | Maximum number of events to return \(max 2500\)|
90
+
|`pageToken`| string | No | Token for retrieving the next page of results |
91
+
|`orderBy`| string | No | Order of events returned \(startTime or updated\). Defaults to startTime. |
85
92
|`showDeleted`| boolean | No | Include deleted events |
86
93
87
94
#### Output
@@ -132,10 +139,12 @@ Update an existing event in Google Calendar. Returns API-aligned fields only.
132
139
|`summary`| string | No | New event title/summary |
133
140
|`description`| string | No | New event description |
134
141
|`location`| string | No | New event location |
135
-
|`startDateTime`| string | No | New start date and time. MUST include timezone offset \(e.g., 2025-06-03T10:00:00-08:00\)OR provide timeZone parameter|
136
-
|`endDateTime`| string | No | New end date and time. MUST include timezone offset \(e.g., 2025-06-03T11:00:00-08:00\)OR provide timeZone parameter|
142
+
|`startDateTime`| string | No | New start time. Use a datetime with timezone offset \(2025-06-03T10:00:00-08:00\)or a date \(2025-06-03\) for an all-day event|
143
+
|`endDateTime`| string | No | New end time. Use a datetime with timezone offset \(2025-06-03T11:00:00-08:00\)or a date \(2025-06-04\) for an all-day event|
137
144
|`timeZone`| string | No | Time zone \(e.g., America/Los_Angeles\). Required if datetime does not include offset. |
138
-
|`attendees`| array | No | Array of attendee email addresses \(replaces existing attendees\)|
145
+
|`attendees`| array | No | Array of attendee email addresses \(replaces the existing attendee list\)|
146
+
|`recurrence`| string | No | Recurrence rule\(s\) in RFC 5545 format \(e.g., RRULE:FREQ=WEEKLY;BYDAY=MO,WE,FR\). Separate multiple rules with newlines. |
147
+
|`addGoogleMeet`| boolean | No | Attach a Google Meet video conference link to the event |
139
148
|`sendUpdates`| string | No | How to send updates to attendees: all, externalOnly, or none |
140
149
141
150
#### Output
@@ -144,10 +153,12 @@ Update an existing event in Google Calendar. Returns API-aligned fields only.
144
153
| --------- | ---- | ----------- |
145
154
|`id`| string | Event ID |
146
155
|`htmlLink`| string | Event link |
156
+
|`hangoutLink`| string | Google Meet link |
147
157
|`status`| string | Event status |
148
158
|`summary`| string | Event title |
149
159
|`description`| string | Event description |
150
160
|`location`| string | Event location |
161
+
|`recurrence`| json | Recurrence rules |
151
162
|`start`| json | Event start |
152
163
|`end`| json | Event end |
153
164
|`attendees`| json | Event attendees |
@@ -298,7 +309,7 @@ Invite attendees to an existing Google Calendar event. Returns API-aligned field
298
309
|`calendarId`| string | No | Google Calendar ID \(e.g., primary or calendar@group.calendar.google.com\)|
299
310
|`eventId`| string | Yes | Google Calendar event ID to invite attendees to |
300
311
|`attendees`| array | Yes | Array of attendee email addresses to invite |
301
-
|`sendUpdates`| string | No | How to send updates to attendees: all, externalOnly, or none |
312
+
|`sendUpdates`| string | No | How to send updates to attendees: all, externalOnly, or none \(defaults to all\)|
302
313
|`replaceExisting`| boolean | No | Whether to replace existing attendees or add to them \(defaults to false\)|
303
314
304
315
#### Output
@@ -317,6 +328,113 @@ Invite attendees to an existing Google Calendar event. Returns API-aligned field
317
328
|`creator`| json | Event creator |
318
329
|`organizer`| json | Event organizer |
319
330
331
+
### `google_calendar_freebusy`
332
+
333
+
Query free/busy information for one or more Google Calendars. Returns API-aligned fields only.
0 commit comments