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

# RingCentral import (in certification)

> Coming soon: import RingCentral calls into PyAI with auto-created webhook subscriptions, OAuth recording fetch, Recap summaries, and Trace scorecards.

<Note>
  The RingCentral importer is in live certification and opens when the gates
  pass. This guide documents the exact setup so you are ready on day one.
</Note>

The RingCentral importer is the smoothest of the phone providers: **PyAI
creates the webhook subscription for you.** Connect with app credentials and
the telephony-sessions subscription registers itself — no dashboard
spelunking — and disconnecting tears it down again.

## What you will need

* A **RingCentral app** with its **client id** and **client secret**:
  [developers.ringcentral.com](https://developers.ringcentral.com) → create
  an app with the Read Call Log / webhook permissions.
* A **JWT credential** for the JWT grant flow, from the same developer
  console (Credentials → JWT).

## Connect (when it opens)

1. In PyAI Console, open **Integrations** and choose **RingCentral**, then
   enter the client id, client secret, and JWT credential.
2. Save. PyAI mints an access token (JWT grant) and creates the
   telephony-sessions webhook subscription with your generated URL — the
   dashboard handshake is answered automatically.
3. Calls import from then on. Disconnecting later tears the subscription down
   before deleting the connection.

## What lands per call

```
RingCentral telephony session (Disconnected)
  -> recording fetched with a fresh OAuth token
  -> transcript -> Recap summary -> Trace scorecard
```

## Troubleshooting (planned)

* **RingCentral webhook subscription failed at connect.** The app's
  permissions are missing webhook/subscription scopes, or the account is over
  its subscription quota. Fix the app scopes or delete stale subscriptions
  and reconnect.
* **RingCentral rejected these credentials.** The JWT credential was revoked
  or belongs to a different app than the client id/secret. Regenerate all
  three from the same app and reconnect.
* **Recording unavailable on some calls.** Recordings exist only for recorded
  calls; unrecorded sessions import as call records without audio, and
  propagation lag is retried automatically.
