Skip to main content
The Twilio 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 Twilio importer will bring every completed call into PyAI with the same shape as the other providers: transcript, Recap summary, and Trace scorecard, deduplicated on the CallSid. Status callbacks are verified with X-Twilio-Signature, and recordings are fetched through the authenticated Twilio API — never a webhook-supplied URL.

What you will need

  • Your Twilio Account SID and Auth Token: Twilio Console → Account dashboard.
  • A number (or TwiML app) to attach the status callback to.

Connect (when it opens)

  1. In PyAI Console, open Integrations and choose Twilio, then enter the Account SID and Auth Token. Test connection verifies the credentials against the Accounts endpoint.
  2. Copy the generated webhook URL.
  3. Attach it as the Status Callback URL on your Twilio numbers (or in your TwiML app), with status events for completed.
  4. Calls import from then on. Lifecycle statuses other than completed are accepted and ignored, so the subscription stays healthy.

Troubleshooting (planned)

  • Signature rejected. Twilio signs the exact URL it called, including the token query. Edit the URL only through the console connection card so the stored token and the registered URL stay in sync.
  • Recording missing on some calls. Recordings exist only for calls recorded in Twilio; unrecorded calls import as call records without audio. Propagation lag is retried automatically.
  • Trial-account audio prefix. Twilio trial accounts prepend a demo message to call audio; expect that in transcripts until the account upgrades.