calendar-sync
Read-only Google Calendar connector for the spine. Admin/lead only, verified from the caller's
Supabase JWT — the same gate fathom-sync/drive-sync use. Auth to Google reuses drive-sync's
exact service-account JWT-bearer flow, only swapping the scope to calendar.readonly.
{ "dryRun": true }
{ "freeBusy": true, "events": true, "days": 14 }
freeBusy caches busy/free blocks only (no titles) in calendar_busy; events ingests full
internal event details into calendar_events for admins/leads/consultants. Full connector detail
— project attribution, manual overrides, the privacy split between the two paths — is on the
Calendar connector page.
Where the code lives
sable-agents-demo/supabase/functions/calendar-sync/index.ts