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

# Connect Calendly

> Connect Calendly to Retell AI with a personal access token so agents can check availability, book appointments, and cancel scheduled events.

Connecting Calendly takes a personal access token. One connection gives you [agent functions](/integrations/calendly-functions): your agents check real availability, book appointments, and look up or cancel scheduled events.

This page covers the token Retell needs and the connection itself.

## When to use it

Connect Calendly when your scheduling already runs on it and you want callers booked without a human in the loop. It's the right choice when you want to:

* **Read live openings to the caller.** The agent checks the event type's availability and offers actual slots.
* **Book while the caller is on the line.** After the caller confirms a time and gives their name and email, the agent books it; the invitee gets Calendly's usual confirmation.
* **Handle cancellations on the same call.** The agent finds the caller's upcoming events by email and cancels the one they name.

For example, a solar installer's inbound agent qualifies the caller, checks the sales team's consultation event type for this week, books Thursday 2pm with the caller's email, and the rep's calendar fills itself.

## Prerequisites

* A Calendly account that owns the event types you want to book. The token identifies one Calendly user, and Retell books and reads **that user's** event types and scheduled events.
* A **paid Calendly subscription** for booking. Availability checks, lookups, and cancellations work on any plan, but creating bookings uses Calendly's Scheduling API, which Calendly restricts to paid subscriptions (as of August 2026).

## Step 1: Create a personal access token

In Calendly, go to **Integrations & apps** and open the **API & webhooks** tile. On **Your personal access tokens**, click **Create a token**, name it something descriptive, for example `Retell AI`, create it, and copy it right away; Calendly shows the token only once.

<Frame caption="Calendly's personal access tokens page, with the Create a token button highlighted.">
  <div style={{ aspectRatio: '16 / 9', width: '100%', background: 'rgba(128,128,128,0.15)', display: 'flex', alignItems: 'center', justifyContent: 'center', borderRadius: '8px', overflow: 'hidden' }}>
    <img src="https://mintcdn.com/retellai/eQ17pyeTZnmNJIsQ/images/integration/calendly-create-token.png?fit=max&auto=format&n=eQ17pyeTZnmNJIsQ&q=85&s=a57ae0555ac5715c228b6199d670dbbf" alt="Calendly's Your personal access tokens page, with Integrations & apps highlighted in the left sidebar and the Create a token button highlighted. A banner warns that tokens created by an admin grant access to Calendly data for everyone in the organization, and a token list shows one redacted entry, out of a 10-token limit." style={{ maxWidth: '100%', maxHeight: '100%', objectFit: 'contain' }} width="1792" height="814" data-path="images/integration/calendly-create-token.png" />
  </div>
</Frame>

<Note>
  As Calendly's own banner warns, a token created by an **admin** grants access to Calendly data across the organization. Retell only reads and books against the token's own user; if you want to limit what the token can reach, create it from a dedicated non-admin account.
</Note>

## Step 2: Connect Calendly in Retell

<Steps>
  <Step title="Add the connection">
    In the Retell Dashboard, open **Integrations**, select the **Available** tab, find **Calendly**, and click **Connect** (**Add Account** if a connection already exists).
  </Step>

  <Step title="Enter the token">
    Fill in the fields:

    | Field               | Value                                                           |
    | ------------------- | --------------------------------------------------------------- |
    | **Connection name** | Alias for this connection; prefilled with `Calendly - API key`. |
    | **API Key**         | The personal access token from Step 1.                          |

    <Frame caption="The Calendly connection dialog: paste the personal access token as the API key.">
      <div style={{ aspectRatio: '16 / 9', width: '100%', background: 'rgba(128,128,128,0.15)', display: 'flex', alignItems: 'center', justifyContent: 'center', borderRadius: '8px', overflow: 'hidden' }}>
        <img src="https://mintcdn.com/retellai/eQ17pyeTZnmNJIsQ/images/integration/calendly-connect-dialog.png?fit=max&auto=format&n=eQ17pyeTZnmNJIsQ&q=85&s=9161a9133d2f33aca69c7fc899e7ec38" alt="Retell's Calendly connection dialog on its Connect tab, with a Functions tab beside it. It has a Connection name field prefilled with Calendly - API key and an API Key field with the placeholder Enter your API key, above a Need help finding your credentials link and Cancel and Add Account buttons." style={{ maxWidth: '100%', maxHeight: '100%', objectFit: 'contain' }} width="1202" height="1004" data-path="images/integration/calendly-connect-dialog.png" />
      </div>
    </Frame>

    Click **Connect** (**Add Account** if a connection already exists). Retell tests the token by fetching the Calendly user it belongs to.
  </Step>

  <Step title="Verify it worked">
    On success the connection appears on the **Connected** tab. From here, add tools to an agent: see [Calendly agent functions](/integrations/calendly-functions) for what each tool does and how it's configured.
  </Step>
</Steps>

## Troubleshooting

<AccordionGroup>
  <Accordion title="Connecting fails with an authorization error">
    Confirm you pasted a **personal access token**, not an OAuth client secret or a webhook signing key, and that it hasn't been revoked in Calendly.
  </Accordion>

  <Accordion title="The connection errored after working for a while">
    Retell flags a connection as errored when Calendly rejects the token, usually because it was revoked, or because Calendly invalidates tokens when the account's password or email changes. Open the connection's settings, paste a current token, and click **Reconnect**.
  </Accordion>
</AccordionGroup>

## FAQ

<AccordionGroup>
  <Accordion title="Which event types can the agent book?">
    Event types owned by the Calendly user whose token you connected. To book for several team members, connect a token per user (multiple connections are fine) or use a shared account that owns the event types.
  </Accordion>
</AccordionGroup>

## Next steps

<CardGroup cols={2}>
  <Card title="Calendly agent functions" icon="wrench" href="/integrations/calendly-functions">
    Check availability, book appointments, and look up or cancel events mid-conversation.
  </Card>

  <Card title="Integrations overview" icon="plug" href="/integrations/overview">
    See every provider Retell connects to and how integration tools work.
  </Card>

  <Card title="Connect Cal.com" icon="calendar" href="/integrations/cal-com">
    The other calendar option, with rescheduling support.
  </Card>
</CardGroup>
