List upcoming events on a calendar, filtered by time. (docs)
GET /calendars/{calendarId}/events
🟢 low
— no
List the calendars on the user's calendar list. (docs)
GET /users/me/calendarList
🟢 low
— no
What the agent can do
Capability
API call
Risk
Needs approval
Create a new event on a calendar (can invite/notify attendees). (docs)
POST /calendars/{calendarId}/events
🟡 medium
✅ yes
Delete (cancel) an existing event; optionally notify attendees. (docs)
DELETE /calendars/{calendarId}/events/{eventId}
🔴 high
✅ yes
Connecting it
You provide: Google account (OAuth)
Where to get it: Google Cloud Console → enable Google Calendar API → configure OAuth consent screen → Credentials → Create OAuth client ID. Calendar scopes are sensitive and need app verification for public use.
Account needed: A Google account plus a Google Cloud project with the Calendar API enabled.
App registration: Create an OAuth 2.0 Client ID (Web application) in Google Cloud Console; configure the consent screen and declare the calendar scopes.
Verification required: Calendar scopes are SENSITIVE (not restricted) — a public External app must complete Google OAuth app verification (no third-party security assessment). Internal Workspace-only apps are exempt.
Testing: While publishing status is 'Testing', works for up to 100 added test users; refresh tokens expire in 7 days.
Limits
10,000 req/min per project; 600 req/min per user. HTTP 403/429 on exceed — back off.