ElevenLabs Integration

ElevenLabs Integration

Integrate your ElevenLabs conversational AI agents with Evalion to monitor and evaluate real conversations in real-time. This guide provides complete setup instructions for connecting your ElevenLabs agents.

Prerequisites

Before you begin, ensure you have:

  • An active ElevenLabs account with at least one deployed conversational AI agent
  • Admin access to your ElevenLabs dashboard
  • An Evalion project where you want to monitor the agent

Setup Steps

Step 1: Create an API Key with Proper Permissions

  1. Navigate to the ElevenLabs API Keys page
  2. Click Create API Key or use an existing one
  3. When creating the key, ensure it has the following permissions:
    • Read ElevenLabs Agents: Required to fetch agent details
    • Read History: Required to access conversation data
  4. Copy the API key (you'll need it in Step 4)

Make sure your API key has both read permissions for Agents and History. Without these permissions, Evalion won't be able to > fetch conversation data.

Store your API key securely. If compromised, regenerate it immediately from the ElevenLabs dashboard and update it in Evalion.

Step 2: Configure Webhook for Real-time Monitoring

To enable real-time conversation monitoring, configure ElevenLabs to send webhook events to Evalion.

  1. Navigate to the ElevenLabs Webhooks page
  2. Click Add Webhook or Create New Webhook
  3. Add the following webhook URL:
{YOUR_API_URL}/v1/api/integrations/elevenlabs

Replace {YOUR_API_URL} with your Evalion instance URL (e.g., https://api.evalion.ai)

  1. Select the appropriate event types to monitor (typically conversation-related events)
  2. Save the webhook configuration

Ensure your Evalion instance is publicly accessible if using webhooks. For self-hosted instances, verify that your firewall allows incoming HTTPS requests from ElevenLabs servers.

Step 3: Get Your ElevenLabs Agent ID

  1. Log in to your ElevenLabs dashboard
  2. Navigate to your conversational AI agents
  3. Select the agent you want to monitor
  4. Copy the Agent ID (usually found in the URL or agent details)
    • Format: typically a string like agent_abc123def456...

Step 4: Create Monitor Agent in Evalion

  1. Log in to your Evalion dashboard
  2. Navigate to your project
  3. Go to the Agents section
  4. Click Create Monitor Agent
  5. Select ElevenLabs as the platform
  6. Fill in the required information:
    • Agent Name: A descriptive name for easy identification
    • API Key: Paste your ElevenLabs API key from Step 1
    • Agent ID: Paste your ElevenLabs Agent ID from Step 3
  7. Click Create or Connect

Evalion will validate your credentials and fetch agent details from ElevenLabs.

Step 5: Import Historical Data (Optional)

To analyze past conversations:

  1. Navigate to the monitor agent you just created
  2. Find the Import Historical Data or Import Conversations option
  3. Configure import parameters:
    • Start Date: Beginning of the time range
    • End Date: End of the time range
    • Preview Mode: Enable to see what will be imported without committing
  4. Click Import or Start Import

Evalion will retrieve and process historical conversations from ElevenLabs. Large datasets may take several minutes to import.

Historical import respects ElevenLabs' API rate limits. For large conversation volumes, imports are processed in batches automatically.

What Data is Imported

When you connect an ElevenLabs agent, Evalion imports the following data for each conversation:

Conversation Metadata

  • Conversation duration
  • Start and end timestamps
  • Conversation direction (inbound/outbound)
  • Status and completion information

Agent Details

  • Agent configuration at the time of conversation
  • Agent name and identifier
  • Model information

Conversation Content

  • Conversation summary
  • Turn-by-turn breakdown (if available)
  • Transcript data
  • User and agent messages

Quality Metrics

  • Rating information (if provided)
  • User feedback
  • Conversation outcome
  • Technical metrics (if available)

The data structure from ElevenLabs is conversation-based, which differs from call-based platforms like VAPI. Evalion automatically handles these differences.

Real-time Monitoring

Once webhooks are configured, new conversations are automatically processed:

  1. Conversation Starts: User interacts with your ElevenLabs agent
  2. Conversation Ends: ElevenLabs sends webhook event to Evalion
  3. Data Processing: Evalion receives and validates conversation data
  4. Evaluation: Configured metrics are applied automatically
  5. Dashboard Update: Results appear in your Evalion dashboard in real-time

Supported Webhook Events

ElevenLabs sends various webhook events for different conversation stages. Evalion processes relevant events to capture complete conversation data.

Troubleshooting

Webhook Not Receiving Data

Symptoms: No new conversations appear after calls complete

Solutions:

  1. Verify the webhook URL is correctly configured in ElevenLabs
  2. Check that your Evalion instance is publicly accessible
  3. Review ElevenLabs webhook logs for delivery failures
  4. Confirm the webhook is active and not paused
  5. Verify event types are properly selected in webhook configuration

API Key Permission Errors

Symptoms: "Permission denied" or authentication errors when creating monitor agent

Solutions:

  1. Verify the API key has both required permissions (Agents + History)
  2. Regenerate the API key with correct permissions
  3. Ensure you copied the complete API key without spaces
  4. Check that the API key hasn't been revoked

Historical Import Issues

Symptoms: Import fails, times out, or returns no data

Solutions:

  1. Reduce the date range to import smaller batches
  2. Use preview mode to verify data access before full import
  3. Check ElevenLabs API status for potential service issues
  4. Verify your ElevenLabs plan includes API access to historical data
  5. Ensure the agent had conversations during the selected date range

Missing Conversation Data

Symptoms: Conversations imported but missing details or transcripts

Solutions:

  1. Verify the conversation completed successfully on ElevenLabs
  2. Check ElevenLabs settings for conversation recording/logging
  3. Ensure sufficient time has passed for ElevenLabs to process the conversation
  4. Review your ElevenLabs plan's data retention policy

Limitations

  • Read-only Monitoring: Monitor agents cannot modify your ElevenLabs agent configuration or behavior
  • API Rate Limits: Historical imports are subject to ElevenLabs API rate limits
  • Data Availability: Historical data access depends on your ElevenLabs plan and data retention settings
  • Testing Restriction: Monitor agents cannot be used in Evalion test suites for active testing
  • Processing Delay: There may be a slight delay between conversation completion and webhook delivery

Data Privacy & Security

  • API keys are encrypted at rest in Evalion's database using industry-standard encryption
  • All data transmission uses HTTPS/TLS encryption
  • Conversation data is stored according to your Evalion plan's data retention policy
  • You can revoke access at any time by deleting the monitor agent or rotating API keys
  • Evalion complies with relevant data protection regulations (GDPR, CCPA, etc.)

Comparison: ElevenLabs vs VAPI Integration

FeatureElevenLabsVAPI
Data StructureConversation-basedCall-based
Primary FocusVoice synthesis & conversationsVoice AI telephony
Transcript FormatConversation summary + turnsDetailed message array
Cost DataNot includedDetailed cost breakdown
Recording URLsVaries by planIncluded
Direction TrackingInbound/OutboundCall-based direction

Next Steps

Additional Resources