Google Calendar
Twin of the Google Calendar API v3.
Twin of the Google Calendar API v3.
| Covers | www.googleapis.com/calendar/v3 |
| Auth | Google OAuth access tokens |
| Webhooks | Yes |
| Operations | 37 |
Coverage
Calendars and the calendar list, events with recurrence expansion and single-instance exceptions, quickAdd and move, ACL rules, free/busy, settings and colors, plus incremental sync tokens and push channels.
Credentials
This twin issues no tokens of its own. It verifies the ones
Google Identity mints, so any well-formed ya29.…
token from there authenticates by default and your existing credentials need no
change. The auth.mode switch that restricts it to credentials the world knows
lives on Google Identity rather than here. See
Credentials.
Calendar’s scopes are granular and enforced: reads and writes are separate, and an events scope does not reach free/busy or the ACL list.
Vendor specific details
- A push channel id is spent the moment it is used and never comes back. A
second watch with the same id is
400 channelIdNotUnique, the id is shared across calendarList, events and acl, and stopping the channel does not release it. A fixture with a hardcoded channel id works exactly once. nextSyncTokenappears only on the last page of a listing, so a client that stops paging early has nothing to resume from.- A
syncTokencannot be combined with other restrictions. AddingtimeMin,privateExtendedPropertyor a non-defaultorderByis a400, not a quietly ignored parameter. PUTclears every writable field the body omits,recurrenceincluded, so a full update without it turns a series into a single event.PATCHleaves omitted fields alone.- Another account’s calendar is a
403, not a404. Asking for instances of an event id that never existed is an empty list, while instances of a deleted recurring master is a404.
Its own notes
Once a sandbox is running, this twin serves its own operating notes at
{control_url}/veris/manual: the credentials it accepts, the API versions it
serves, and the fault statuses you can arm against it. They are generated from
the same source as its behaviour, so they cannot drift.