Aeion Appointments + Google Calendar & Outlook
Bookings land on your team's real calendars — Google Calendar and Microsoft Outlook — the moment they're made. Reschedules patch the external event, cancellations remove it, and free/busy from those calendars keeps Aeion's availability engine from ever offering a slot you're already booked in. A scheduled reconcile pulls external reschedules and cancellations back into Aeion. No Zapier, no polling loops you have to babysit.
What Connects
`
How the two-way sync works
- Push on book. When an appointment is created, the primary resource's stored calendar credentials decide the target. Google gets an
events.insert; Microsoft gets aPOST /me/events. Participants with an email address are attached as attendees (Microsoft marks the provider asrequired, everyone elseoptional). The returned external event ID is stored on the appointment's metadata so later updates and deletes find the same event.
Setup
`
Round-trips stay clean.
What it does NOT do
- No Apple Calendar / iCal / CalDAV two-way sync. Only
googleandmicrosoftare implemented in the sync service today. If Apple Calendar support matters to your rollout, treat it as roadmap and confirm timing with your account team rather than assuming the flows above cover it.
FAQ
Google Calendar (Calendar API v3) and Microsoft Outlook (Graph v1.0). Both are two-way: bookings push out on creation, patch on reschedule, and delete on cancel, while free/busy comes back in for availability. Apple Calendar / iCal is not part of this integration yet.
Yes. The reconcile cron pulls events changed in the recent window and updates the linked Aeion booking's times, or cancels it if the external event was cancelled. It runs on a schedule (recommended ~15 minutes) with a 30-minute overlap window so nothing slips between cycles.
The booking still commits in Aeion. Calendar sync is fail-open — a failed external call is logged and skipped, never surfaced as a booking error. The next successful sync reconciles the state.
No. Each provider has a built-in token-bucket rate limiter (~5 req/s Google, ~4 req/s Microsoft) and every call has a 10-second timeout, so sync respects provider limits without any manual throttling.
It stores the external event ID on the appointment and stamps the external event with a private identity marker (Google `extendedProperties.private`, Microsoft `singleValueExtendedProperties`), so reschedules, deletes, and the reconcile all target the exact same event.
Put bookings on your team's real calendars.
Two-way Google Calendar and Outlook sync, free/busy availability, and a scheduled reconcile that follows external changes — fail-open by design.