← ClaudeAtlas

calendar-providerlisted

Patterns for integrating business calendar providers (Google Workspace, Microsoft 365, Zoho Workplace, business CalDAV). OAuth flow, push subscriptions, echo suppression, etag concurrency, and write-back via the outbox pattern.
Nmor/the-claude-council · ★ 9 · Code & Development · score 66
Install: claude install-skill Nmor/the-claude-council
# Calendar Provider Integration Companion skill to `provider-research` and the global `official-docs-first` rule. Activates when touching any calendar-provider integration code (`lib/calendar/providers/*`, calendar OAuth, sync, write-back, alarms). ## Scope **Business providers only.** | Provider | Auth | Push? | Cron floor | | --- | --- | --- | --- | | Google Workspace | OAuth — `openid email profile calendar.events calendar.readonly` | Yes — Push Notifications API, channel TTL 7 days, X-Goog-Channel-Token HMAC | n/a (push covers it) | | Microsoft 365 Business | OAuth — `openid email profile offline_access Calendars.ReadWrite` | Yes — Graph change notifications, TTL up to 4230 min, `clientState` HMAC | n/a | | Zoho Workplace | App-specific password — CalDAV `caldav.zoho.com` | No — Zoho has no push | 60s active tab, 5min otherwise | | Generic business CalDAV (Fastmail / Nextcloud / Posteo / mailbox.org) | App-specific password — caller-supplied URL | No — RFC 4791 has no push | 60s active, 5min otherwise | **Out of scope:** Apple iCloud (consumer), personal Gmail / Outlook / Yahoo / Proton (consumer). Rejection lives in `lib/emailDomainPolicy.ts` at signup AND social-callback parity. ## Required reading before any change - `docs/provider-research/google-calendar.md` — scopes, push channel TTL, Workspace admin-policy interactions. - `docs/provider-research/microsoft-graph.md` — `Calendars.ReadWrite` vs `Calendars.ReadWrite.Shared`, `tid` claim for tenant rejection,