# Calendar Integrations (/how-to/calendar-integrations)



Calendar integrations let you push confirmed bookings to an external calendar in real time. When a customer books, reschedules, or cancels, the corresponding calendar event is created, updated, or removed automatically. Each activity can be linked to one or more calendars, and each calendar connection is secured with OAuth so your credentials are never stored in plain text.

Resytech currently supports **Google Calendar**. Support for additional providers (Outlook, Apple Calendar) can be added through the same provider interface.

How sync works [#how-sync-works]

* When a booking is **created or confirmed**, a calendar event is created on every calendar linked to that booking's activity. The event title follows the format `Activity Name - Customer Name` and includes the confirmation code, guest count, duration, and time.
* When a booking is **updated** (rescheduled, status change), the existing calendar event is updated in place.
* When a booking is **canceled**, the calendar event is deleted.
* Bookings created by **iCal sync** (imported from external calendars) are never pushed back out, preventing sync loops.
* Sync runs in the background via a job queue, so it never blocks the API response when a booking is saved.

Guides [#guides]

<Cards>
  <Card title="Connect Google Calendar" href="/how-to/calendar-integrations/connect-google-calendar">
    Walk through the OAuth flow to link a Google Calendar account to an activity.
  </Card>

  <Card title="Configure Calendar Sync" href="/how-to/calendar-integrations/configure-calendar-sync">
    Choose which calendar to sync to, understand multi-calendar support, and learn what data appears on each event.
  </Card>

  <Card title="Disconnect a Calendar" href="/how-to/calendar-integrations/disconnect-calendar">
    Remove a calendar link and understand what happens to existing events.
  </Card>
</Cards>
