## Overview

The ConversaLabs Calendar syncs **two ways** with **Google Calendar**: events created on the platform
appear in Google, and events created in Google appear on the platform — without duplicating and
without looping. The connection is made once through **Google authorization (OAuth)** and stays
**permanent** — it refreshes itself until you disconnect manually.

You can connect **several Google accounts** to the same ConversaLabs account, and each Google account
can expose **multiple calendars** to mirror. Authorization is shared (you don't need to create your
own Google app).

## Prerequisites

- The **Calendar** module enabled on the account (optional, off by default — ask an administrator).
- A role allowed to set up integrations (typically administrator).
- A Google account with access to Google Calendar.
- When authorizing, grant the requested calendar permissions — sync won't work without them.

## Step by step

1. Open the **Calendar** and go to the **Google connections / integrations** area.
2. Click to **connect Google Calendar**. You'll be taken to Google's authorization screen.
3. Choose the Google account and **authorize access** to your calendar.
4. Back on the platform, **select which calendars** from that account you want to mirror.
5. (Optional) Repeat to **connect other Google accounts**.
6. Wait for the first sync: existing events start to appear in the Calendar.

## Settings & options

- **Multiple connections**: each connected Google account appears separately, with its calendars.
- **Calendar selection**: turn on only the calendars you want to mirror.
- **Assignment**: link each calendar (native or Google) to agents, teams or inboxes as needed.
- **Google Meet, attendees, reminders and recurrence**: when created on the platform, they're pushed
  to Google; when created in Google, they come back to the platform.
- **Disconnect**: the connection stays active and self-refreshing until you disconnect manually, which
  revokes access at Google and removes the connection.

## Use cases

- Centralize a personal/team Google calendar inside your support operation.
- Let public-page bookings respect busy times from Google.
- Connect the calendar of more than one person or department to the same ConversaLabs account.

## Tips, limits & best practices

- Sync is **near real time** (updates arrive quickly), with a **periodic** safety check so nothing is
  missed.
- Events created by the platform are tagged internally to **avoid back-and-forth loops**.
- In the current version, the supported external provider is **Google Calendar**. Other providers are
  planned for a later phase.
- Your Google credentials are **stored securely** on the server and are **never** shown in the
  dashboard.

## Troubleshooting

- **Authorization failed**: run the flow again and confirm you granted the calendar permissions.
- **Connected, but no events show**: confirm you selected at least one calendar to mirror and wait for
  the first sync.
- **An event vanished or duplicated**: check that the connection is still active; the periodic check
  reconciles differences automatically. As a last resort, reconnect the account.
- **Updates stopped arriving**: the connection may have been revoked at Google — reconnect it.

## See also

- [Calendar & Scheduling overview](/hc/ajuda/articles/calendar-scheduling-overview-en)
- [Event types, availability and buffers](/hc/ajuda/articles/calendar-scheduling-tipos-de-evento-disponibilidade-buffers-en)
- [Public booking page](/hc/ajuda/articles/calendar-scheduling-pagina-publica-de-agendamento-en)
- [Reschedule, cancel, Google Meet and the .ics file](/hc/ajuda/articles/calendar-scheduling-reagendar-cancelar-meet-ics-en)