Google Calendar
Sync Google Calendar events into structured JSON so agents can query schedule information.
| Direction | Pull (Google Calendar → PuppyOne) |
| Trigger | Scheduled poll |
| Auth | Google OAuth |
| Output | JSON |
Data structure
{
"events": [
{
"id": "abc123",
"title": "Q1 OKR Review",
"start": "2026-03-01T10:00:00+08:00",
"end": "2026-03-01T11:00:00+08:00",
"location": "Conference Room A",
"attendees": [
{ "email": "[email protected]", "status": "accepted" },
{ "email": "[email protected]", "status": "tentative" }
],
"description": "Quarterly OKR review meeting",
"calendar": "Work"
}
],
"synced_at": "2026-02-26T08:00:00Z"
}Setup steps
Step 1: Authorize your Google account
- Open Project → Connections → Add Connection → Google Calendar
- Click Connect with Google and complete OAuth authorization
Step 2: Configure sync scope
| Option | Description |
|---|---|
| Calendar selection | Choose which calendars to sync (multi-select supported) |
| Time range | Sync events from the past N days and the next N days |
Step 3: Start sync
Click Start Sync. After that, updates run automatically on the configured interval.
Agent usage example
User: Show me what meetings I have this week and list the attendees
Agent: [calls query_data]
5 meetings this week (2/23-3/1):
- Mon 10:00 Product weekly meeting (4 attendees)
- Wed 14:00 Business discussion with Acme (3 attendees)
...Notes
- Only calendars you have read access to can be synced
- Private events marked as Private are not synced