Calendar integration
Connect Google Calendar or Microsoft Outlook for encrypted sync, pre-meeting briefs from your captures, and richer meeting context with EventKit fallback on macOS.
Last updated: 2 April 2026
Overview
Calendar integration lets Overshow read upcoming events you authorise from Google Calendar or Microsoft Outlook (Entra ID / Microsoft 365). On macOS, a local EventKit path can supply events when cloud providers are not connected; when cloud OAuth tokens are present, cloud sync supersedes EventKit so you get a single, authoritative source per account.
The feature is gated by the meeting detection feature flag. When enabled, it supports pre-meeting briefs (context drawn from your indexed captures shortly before events) and meeting enrichment (titles, times, and participants correlated with detected meetings).
Calendar access is read-only at the scope Overshow requests. Tokens are encrypted on device; app.over.show stores provider tokens with industry-standard encryption. You grant consent explicitly through OAuth; disconnecting removes ongoing sync from that integration path.
What calendar integration provides
| Capability | What you get |
|---|---|
| Event sync | Upcoming events from all calendars exposed for the connected account, not only the primary calendar. |
| Pre-meeting briefs | Short, capture-grounded context assembled in the five minutes before an event starts, using an on-device language model over relevant past material. |
| Meeting correlation | Overshow aligns detected meetings with calendar events by matching time windows so titles and attendees attach to the right session. |
| Source labelling | The source is tracked to distinguish local, Google, and Microsoft events for traceability. |
| Desktop signals | The app notifies the UI when a fresh sync completes. |
| Settings surface | Settings → Calendar: connect and disconnect providers, see status, and manage consent in one place. |
Supported providers
Google Calendar
Desktop OAuth flows request read-only calendar access so the app can read event metadata without write permissions. Sync is suitable for personal and workspace Google accounts where your organisation permits calendar read integrations.
Microsoft Outlook (Microsoft 365 / Entra ID)
Desktop flows request read-only calendar access. This covers Outlook calendars backed by Microsoft 365 and Entra-joined tenants, subject to your administrator’s consent policies.
macOS EventKit (local fallback)
Where the OS exposes calendars through EventKit, Overshow can ingest events without a cloud provider. Source exclusivity applies: as soon as Google or Microsoft tokens are available and cloud sync is active, cloud data supersedes EventKit for that linkage model so you do not maintain duplicate conflicting streams.
Why cloud sync can override EventKit
Cloud OAuth gives consistent identities, refresh semantics, and parity with the token relay at app.over.show. EventKit remains valuable when you have not connected a cloud account or when policy blocks cloud calendar APIs but local calendar access is still permitted.
Provider comparison
| Aspect | Google Calendar | Microsoft Outlook | macOS EventKit |
|---|---|---|---|
| Auth | Google OAuth | Microsoft identity | OS permission / local calendars |
| Token storage | Encrypted on device | Encrypted on device | No cloud tokens |
| Precedence | Primary when connected | Primary when connected | Fallback when cloud tokens absent |
| All calendars | Yes, for authorised account | Yes, for authorised account | Depends on local calendar selection in OS |
| Polling | Periodic sync | Same cadence | Driven by local updates |
Connecting a calendar
Settings → Calendar
Open Settings, then the Calendar tab. Choose Google or Microsoft and complete the OAuth sign-in in the system or embedded browser flow. Grant only the scopes presented; Overshow does not request calendar write permissions for this integration.
Token relay and refresh
The desktop app fetches calendar tokens from app.over.show with automatic refresh when short-lived access tokens expire.
If briefs or enrichment lag after a long offline period, wait for the next sync cycle (up to about five minutes) or open Settings → Calendar to confirm the account still shows as connected.
What data is synced
- Events across all calendars for the linked account (within the product’s configured horizons and privacy rules).
- Metadata used for correlation and briefs: titles, start/end times, and participant information where the provider exposes it.
- Source is recorded per event for consistency.
Calendar sync polls periodically while enabled, so new or moved meetings appear without manual refresh in normal use.
Pre-meeting briefs
Overshow watches for events starting soon. For each qualifying event, it generates a brief from relevant past captures. screen text, transcripts, and related indexed material. staying grounded in what you have already captured rather than generic advice.
What “relevant” means in practice
Relevance is driven by retrieval over your local index and the meeting’s context (time window, title, participants where available). If you have little history yet, briefs may be thin until capture volume grows.
How calendar enriches meetings
Overshow correlates detected meetings with calendar events by matching time windows. When a match exists, Overshow can attach:
- Event titles for clearer labelling in meeting views and history.
- Start and end times for alignment with transcripts and screen context.
- Participants where the provider lists them, improving search and brief targeting.
This enrichment sits alongside audio-based meeting detection; calendar data refines identity and metadata rather than replacing acoustic detection.
Disconnecting and pausing
Use Settings → Calendar to disconnect a provider. That stops further cloud polling for that account and clears the expectation of cloud-sourced events. On macOS, EventKit may again become the active source if permitted and if no other cloud calendar supersedes it.
Organisation policy changes (revoked consent, conditional access, or admin-disabled apps) can invalidate tokens without a visible “disconnect” in the UI until the next refresh failure. check the Calendar tab if sync stops unexpectedly.
Privacy and security
| Topic | Handling |
|---|---|
| Tokens | Stored encrypted on the device and on the portal. |
| Consent | OAuth and in-product messaging make cloud sync an explicit choice. |
| Data minimisation | Read-only calendar scopes; no write path for events through this integration. |
| Revocation | Disconnecting and provider-side revocation both end authorised access. |
When calendar integration helps most
Calendar integration is strongest when your work calendar is the same system you connect, when meeting detection is enabled, and when you already have indexed captures for briefs to draw on. Teams with strict compliance should align connection with information governance: read-only access still implies metadata leaves the provider under the terms of your OAuth grant.
Workers and desktop events
Two concerns run on different schedules so the product stays responsive:
| Component | Role | Cadence / trigger |
|---|---|---|
| Calendar sync | Pulls fresh events from Google or Microsoft via authorised tokens | Periodic polling |
| Pre-meeting brief | Builds briefs when an event is imminent | Events starting soon |
| Meeting correlation | Correlates detected meetings to calendar events | Driven by new detections and synced events |
When cloud sync completes a successful cycle, the desktop app refreshes calendars, badges, and brief readiness automatically.
Offline and token edge cases
If the device is offline, polling continues to schedule but fetches fail until connectivity returns. Automatic token refresh means transient expiry is usually invisible; persistent failure (revoked token, password change policy) surfaces in Settings and may require reconnecting the provider.
Scopes at a glance
| Provider | Typical calendar scope | Purpose |
|---|---|---|
| Calendar read-only | Read events across calendars | |
| Microsoft | Calendar read-only | Read calendars and events for the signed-in identity |
Administrators may gate these scopes behind organisation consent workflows; if consent is pending, the connect button may succeed only after an admin approves the enterprise application.
Tips
- Connect the account where recurring client and internal meetings are scheduled so correlation and briefs match reality.
- Keep capture running in the apps you care about; briefs and enrichment both improve with richer local history.
- After timezone or daylight-saving changes, allow one or two sync cycles before judging missing events.
- If you use multiple calendars under one account, you do not need to pick only “primary”. sync includes all authorised calendars.
- For shared machines, disconnect when you finish a session if policy requires minimal linked accounts.
- If briefs feel generic, widen capture in the apps where that work actually happened; briefs cannot cite material that was never indexed.
- Treat participant lists as hints only; providers differ in how they expose attendees on recurring series and forwarded invites.
Security reviews often ask where tokens live: desktop copies are encrypted at rest on device; portal storage uses industry-standard encryption. Share this page with your information security contact when documenting third-party integrations.