Skip to main content
The Dialpad importer is in live certification and opens when the gates pass. This guide documents the exact setup so you are ready on day one.
The Dialpad importer will bring every completed call into PyAI with the same shape as the other providers: transcript, Recap summary, and Trace scorecard under one stable call id. Dialpad’s native transcripts import when present; otherwise PyAI transcribes the recording.

What you will need

  • A Dialpad API key with the recordings_export scope: Dialpad Admin → API keys (company settings).
  • A Dialpad webhook secret you choose (unique, different from the API key). Dialpad uses it to sign deliveries with an HS256 JWT.

Connect (when it opens)

  1. In PyAI Console, open Integrations and choose Dialpad, then enter the API key and your webhook secret.
  2. Copy the generated webhook URL.
  3. In Dialpad, create a webhook with that URL and your secret, then create a call-event subscription for hangup, recording, and call_transcription.
  4. Calls import from then on, with recordings fetched through the authenticated Dialpad API (never a webhook-supplied URL).

Troubleshooting (planned)

  • “JSON deliveries are rejected.” The webhook must be created with the secret so Dialpad sends the signed JWT; unsigned JSON is refused by design.
  • Recording export denied. The API key needs the recordings_export scope; regenerate it in Dialpad admin with that scope enabled.
  • Duplicate-looking calls after editing the subscription. Dedupe is on the provider call id, so re-delivered events collapse; a changed payload for the same call id returns a conflict instead of a second record.