Connectors

ElevenLabs

Send completed ElevenLabs agent conversations to Currai with a signed post-call webhook.

The ElevenLabs connector imports completed agent conversations through signed post_call_transcription webhooks. Currai uses the webhook signing secret generated by ElevenLabs to authenticate every delivery. You do not need to provide an ElevenLabs API key.

Before you start

You need:

  • a Currai workspace where you are an owner or admin;
  • an ElevenLabs agent that can complete a test conversation;
  • permission to manage workspace webhooks in ElevenLabs.

1. Generate the Currai webhook URL

In Currai, open Settings → Connectors. On the ElevenLabs card, select Setup, then copy the generated URL beginning with https://www.currai.app/api/connectors/v1/elevenlabs/.

The connector remains in Setup incomplete until its ElevenLabs signing secret is saved. The pending setup survives a refresh.

2. Create the ElevenLabs endpoint

In ElevenLabs, open Developers → Webhooks, select Add endpoint, and paste the Currai URL into Endpoint URL. The description is optional.

Under Select events to listen to:

  • enable Transcription completed;
  • leave Voice removal notice disabled;
  • leave Image & Video API generation completed disabled.

Select Add endpoint, then copy the signing secret ElevenLabs displays. ElevenLabs shows this secret only when the endpoint is created, so keep it private.

Open the endpoint menu and enable Retry enabled. Retries help recover from temporary timeouts and server errors. Currai uses the ElevenLabs conversation_id to ensure a retried delivery is not imported twice.

3. Activate the connector

Return to the ElevenLabs setup dialog in Currai, paste the signing secret, and select Activate connector. Currai encrypts the secret and never displays it again.

If the secret is rotated or the webhook is recreated, select Update secret before sending another conversation.

4. Attach it as the Post-Call Webhook

Creating an endpoint does not automatically connect it to ElevenAgents. Complete this separate workspace-level step:

  1. In ElevenLabs, open ElevenAgents → Settings.
  2. Find Post-Call Webhook.
  3. Select Select Webhook.
  4. Choose the endpoint containing your Currai URL.
  5. Enable the Transcript event.
  6. Set Transcript format to JSON, not OpenTelemetry.
  7. Leave Send audio data disabled.
  8. Save the workspace settings.

This workspace default applies to all agents unless an individual agent overrides it on its Security tab. If the agent has an override, select the same Currai endpoint there or remove the override so the workspace default can apply.

5. Complete a test conversation

Start and finish a new conversation with the ElevenLabs agent. Wait for ElevenLabs post-call analysis to complete, then return to Currai and open Settings → Connectors. The status should change from Waiting for first call to Receiving data.

Calls completed before the endpoint was selected as the Post-Call Webhook are not sent retroactively. Testing the endpoint alone also does not contain a completed agent transcript.

Check:

  • Observe → Events for elevenlabs.voice_call and elevenlabs.conversation.turn events;
  • Analyse → User Stories for the readable conversation;
  • intents, violations, alerts, and errors for results from the existing Currai pipeline.

ElevenLabs retries use the same conversation_id. Currai acknowledges retry deliveries without creating duplicate sessions or consuming duplicate event credits.

Privacy and supported events

Currai imports only the normalized user and agent transcript, identifiers, timing, cost, status, and termination metadata needed for analysis. It does not retain audio, raw phone numbers, or ElevenLabs analysis objects.

Authenticated post_call_audio, call_initiation_failure, and post_call_transcription_otel events are acknowledged but not imported. To avoid unnecessary payloads, enable only the JSON Transcript event.

Troubleshooting

  • 401 Unauthorized — confirm the signing secret stored in Currai belongs to the webhook using the displayed Currai URL. Update the secret if the webhook was recreated.
  • 422 Invalid payload — confirm Transcript is enabled and JSON is selected instead of OpenTelemetry.
  • Setup incomplete — paste the signing secret generated after creating the ElevenLabs webhook.
  • Waiting for first call — open ElevenAgents → Settings → Post-Call Webhook and confirm the Currai endpoint is selected. Then finish a new conversation and wait for its analysis to complete.
  • No conversation appears — check whether the agent has a Security-tab override that replaces the workspace Post-Call Webhook. Calls made before the webhook was attached are not sent retroactively.
  • Wrong event format — enable Transcript, choose JSON, and turn off OpenTelemetry and audio. Currai acknowledges those other authenticated event types but does not import them.
  • Local development — keep both the local Currai server and the HTTPS tunnel running. If the tunnel URL changes, create a new ElevenLabs endpoint with the new Currai URL and update the signing secret in Currai.

For provider-side details, see the official ElevenLabs post-call webhook documentation.