> For the complete documentation index, see [llms.txt](https://docs.spara.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.spara.com/integrations/calendar-integrations.md).

# Calendar Integrations

Spara's AI can intelligently push leads to schedule a call with your sales team. To accomplish this, Spara supports integrations with most major third party calendar scheduling solutions.

{% hint style="info" %}
Spara strongly recommends Cal.com as a calendar provider.
{% endhint %}

Each agent type uses calendars differently:

* **Chat agents** render a calendar widget directly in the conversation for the lead to pick a time
* **Email agents** include links to your calendar booking page
* **Phone capabilities** handle booking entirely by conversation — Spara reads available slots aloud, the lead picks a time, and it books the meeting. See [Phone](/agents/channels/phone.md) for details on the voice booking flow.

All Spara agents can route leads to specific calendars based on any information known about the lead.

Spara supports both round robin calendars and routing to specific sales reps' calendars (through Salesforce integration only). See [Salesforce](/integrations/crm-integrations/salesforce.md#owner-objects) documentation for more details.

Spara's integrations are sometimes limited by what each calendar's API makes available. In all cases, Spara is immediately alerted whenever a calendar event has been scheduled, meaning that Spara's behavior can react to this situation. After a call is scheduled, it is common to configure Spara to send a success message and then ask additional prequalification questions.

Please see our calendar integration guides, including installation instructions and calendar limitations, in the table below:

<table data-full-width="true"><thead><tr><th>Calendar</th><th>Spara can prepopulate...</th><th>Spara can read from submitted calendar...</th><th>Integration Notes</th></tr></thead><tbody><tr><td><a data-mention href="/pages/eq4NBnYi5xJAW1KO5prS">/pages/eq4NBnYi5xJAW1KO5prS</a></td><td><ul><li>Email</li><li>First name</li><li>Last name</li><li>Phone number</li><li>Company name</li></ul></td><td><ul><li>Email</li><li>First name</li><li>Last name</li><li>Phone number</li><li>Company name</li></ul></td><td>Cal.com is flexible and easy to integrate with.</td></tr><tr><td><a data-mention href="/pages/ACKd6pnPbAPc0tJeaw4L">/pages/ACKd6pnPbAPc0tJeaw4L</a></td><td><ul><li>Email</li><li>First name</li><li>Last name</li><li>Name</li></ul></td><td><em>None</em></td><td><p>Spara should capture email address before showing a Calendly calendar.</p><p>Spara will prepopulate the calendar form's email field with this info.</p></td></tr><tr><td><a data-mention href="/pages/vKjxWK1Ng3kKdgGv4Ara">/pages/vKjxWK1Ng3kKdgGv4Ara</a></td><td><ul><li>Email</li><li>First name</li><li>Last name</li><li>Company name</li><li>Company size</li></ul></td><td><em>None</em></td><td><p>Spara should capture email address before showing a Chili Piper calendar.</p><p>Spara will prepopulate the calendar form's email field with this info.</p></td></tr><tr><td><a data-mention href="/pages/EZmAEuhb64OtsqXcZQNX">/pages/EZmAEuhb64OtsqXcZQNX</a></td><td><ul><li>Email</li></ul></td><td><em>None</em></td><td>Spara should capture email address before showing a ChiliCal calendar. Spara will prepopulate ChiliCal's form email field with this info.</td></tr><tr><td><a data-mention href="/pages/1VGi5WdDpJOQzg6wmPBX">/pages/1VGi5WdDpJOQzg6wmPBX</a></td><td><ul><li>Email</li></ul></td><td><ul><li>Email</li></ul></td><td></td></tr><tr><td><a data-mention href="/pages/SdcdMiveTtVQ73gpOpL4">/pages/SdcdMiveTtVQ73gpOpL4</a></td><td><ul><li>Email</li><li>First name</li><li>Last name</li></ul></td><td><ul><li>Email</li><li>First name</li><li>Last name</li></ul></td><td>Hubspot is flexible and easy to integrate with.</td></tr><tr><td><a data-mention href="/pages/rpmTjekoWTY06BaYm0cX">/pages/rpmTjekoWTY06BaYm0cX</a></td><td><ul><li>Email</li><li>First name</li><li>Last name</li><li>Company</li><li>IP Country</li></ul></td><td><ul><li>Email</li><li>First name</li><li>Last name</li></ul></td><td></td></tr><tr><td><a data-mention href="/pages/xlPP1XLFn59HUVqkg6xW">/pages/xlPP1XLFn59HUVqkg6xW</a></td><td><em>None</em></td><td><ul><li>Email</li><li>First name</li><li>Last name</li><li>Phone number</li></ul></td><td>Spara will read email address and other fields after a meeting has been scheduled.</td></tr><tr><td><a data-mention href="/pages/ytJPv97wDcmZyGMXkAUj">/pages/ytJPv97wDcmZyGMXkAUj</a></td><td>Any fields (customizable)</td><td></td><td>Spara can detect a meeting scheduled only if the scheduler fires a success meeting booked event</td></tr></tbody></table>

## Voice agent calendar booking

Voice agents book meetings by conversation — the agent reads available slots aloud, the lead picks a time, and the agent books it directly. This is a different integration path than the calendar widgets above, which embed a scheduler for the lead to fill in. The table below covers which calendar providers Spara supports for voice scheduling today.

<table data-full-width="true"><thead><tr><th>Calendar</th><th>Voice scheduling</th><th>Connection</th></tr></thead><tbody><tr><td><a data-mention href="/pages/eq4NBnYi5xJAW1KO5prS">/pages/eq4NBnYi5xJAW1KO5prS</a></td><td>Available</td><td>OAuth</td></tr><tr><td><a data-mention href="/pages/ACKd6pnPbAPc0tJeaw4L">/pages/ACKd6pnPbAPc0tJeaw4L</a></td><td>Available</td><td>OAuth — connecting user should have an <strong>admin or owner role</strong> in your Calendly organization</td></tr><tr><td><a data-mention href="/pages/SdcdMiveTtVQ73gpOpL4">/pages/SdcdMiveTtVQ73gpOpL4</a></td><td>Available</td><td>OAuth — uses your existing HubSpot CRM connection</td></tr><tr><td><a data-mention href="/pages/vKjxWK1Ng3kKdgGv4Ara">/pages/vKjxWK1Ng3kKdgGv4Ara</a></td><td>Coming soon</td><td>Admin token — requires Chili Piper's <strong>Scheduling &#x26; Routing</strong> plan tier (or higher concierge tier)</td></tr><tr><td><a data-mention href="/pages/EZmAEuhb64OtsqXcZQNX">/pages/EZmAEuhb64OtsqXcZQNX</a></td><td>Not supported</td><td><em>—</em></td></tr><tr><td><a data-mention href="/pages/rpmTjekoWTY06BaYm0cX">/pages/rpmTjekoWTY06BaYm0cX</a></td><td>Not supported</td><td><em>—</em></td></tr><tr><td><a data-mention href="/pages/xlPP1XLFn59HUVqkg6xW">/pages/xlPP1XLFn59HUVqkg6xW</a></td><td>Not supported</td><td><em>—</em></td></tr><tr><td><a data-mention href="/pages/1VGi5WdDpJOQzg6wmPBX">/pages/1VGi5WdDpJOQzg6wmPBX</a></td><td>Coming soon</td><td><em>—</em></td></tr><tr><td><a data-mention href="/pages/ytJPv97wDcmZyGMXkAUj">/pages/ytJPv97wDcmZyGMXkAUj</a></td><td>Not supported</td><td><em>—</em></td></tr></tbody></table>

For details on the voice booking conversation flow, see [https://github.com/spara-ai/spara-app/blob/gitbook/gitbook/documentation/agents/voice-agents.md](https://github.com/spara-ai/spara-app/blob/gitbook/gitbook/documentation/agents/voice-agents.md "mention").


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.spara.com/integrations/calendar-integrations.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
