> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ryvo.so/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect Google Calendar

> Connect your Google Calendar so your agent can check real availability and book appointments during the conversation.

Connecting Google Calendar is what turns your agent into someone who **closes the appointment on the call**, instead of promising that somebody will get back to the customer. The agent sees your real availability, offers slots that are genuinely open, creates the event and sends the invitation.

It is the integration that changes the outcome of a conversation the most: a caller who hangs up with a date and a time does not go shopping for another vendor.

## What you need first

* A **Google** account (personal or Google Workspace) with access to the calendar your agent should use.
* The **Starter** plan or higher, with the Engine module active. If your plan falls short, the Integrations screen says so and takes you to **View plans**.
* Connecting an app is an account decision, not a personal one: whoever connects it makes it available to every agent on your team.

## How to connect it

<Steps>
  <Step title="Open Settings › Integrations">
    In the portal, go to **Settings** and then **Integrations**. Find the **Google Calendar** card.
  </Step>

  <Step title="Click Connect app">
    Google's authorization screen opens in a new window. Meanwhile the card shows **In progress**.
  </Step>

  <Step title="Pick the account and accept the permissions">
    Select the Google account that owns the calendar you want to use and accept. If your organization runs Google Workspace with restrictions, an administrator may have to approve it.
  </Step>

  <Step title="Come back to Ryvo">
    You land back on the Integrations screen on your own and the card turns to **Connected**, with the date it went live. Google Calendar asks nothing else.
  </Step>
</Steps>

## What your agent can do once it is connected

| Action                 | What it does in the conversation                                                                                     |
| ---------------------- | -------------------------------------------------------------------------------------------------------------------- |
| **Find free slots**    | Checks which slots are open before offering anything. Your agent never offers a time it has not seen available here. |
| **Book appointment**   | Creates the event once the person confirms day and time, adding their email as a guest so they get the invitation.   |
| **Find appointment**   | Locates an existing appointment. It is the step before moving or cancelling one.                                     |
| **Move appointment**   | Changes the date, time or details of an appointment it already located.                                              |
| **Cancel appointment** | Cancels an appointment, after confirming with the person.                                                            |

Actions are not on by default. Open the integration with **View actions** to see them all, then turn on the ones you want in the [**Tools**](/guides/agents/tools) section of each agent's builder. An agent takes up to **10 integration actions**: pick the ones it actually uses, not all of them.

## What to do if something fails

| What you see                                          | What happened                                                                  | What to do                                                                                                                                   |
| ----------------------------------------------------- | ------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------- |
| The card is stuck on **In progress**                  | You closed the Google window before finishing, or Google has not confirmed yet | Click **Check again**. If nothing changes, click **Connect app** again and complete the authorization                                        |
| **The account stopped responding. Connect it again.** | You revoked Ryvo's access from your Google account, or the password changed    | Click **Reconnect**. Ryvo revokes the old access and starts the OAuth from scratch, so the new authorization really does replace the old one |
| The agent offers times that were already taken        | The **Find free slots** action is not on for that agent                        | Open the agent's builder, **Tools** section, and turn it on. Without it the agent is guessing                                                |
