Overview
Test your ElevenLabs agents using multiple methods: phone numbers, websockets, or chat interfaces. Choose the testing method that best fits your use case.- Phone Number
- Websocket
- Chat
- Code
Test your agents using phone numbers directly from the frontend.
1
Configure phone number
Go to your agent settings and configure the phone number for testing:

Enter the phone number associated with your ElevenLabs agent. No additional credentials required for phone-based testing.
2
Run tests from frontend
Select scenarios and run tests using the UI:
Click “Run with Voice” to execute your tests. Cekura automatically:

- Initiates phone calls to your agent
- Executes test scenarios
- Captures audio and transcript data
3
View results
Results appear in your dashboard. Track test status, metrics, and conversation details in real-time.
Run tests directly from the frontend without writing code.
1
Configure ElevenLabs credentials
Go to your agent settings and configure ElevenLabs integration:
Required fields:

- Assistant ID: Your ElevenLabs agent ID
- ElevenLabs API Key: Your ElevenLabs API key with access to Agents
To find your Assistant ID, go to your ElevenLabs dashboard and navigate to the Agents section. Go to your particular agent you want to test, open that agent and assistant id (11labs agent id) will be visible just below the header.
2
Run tests from frontend
Select scenarios and run tests using the UI:
Click “Run with 11Labs WebSocket” to execute your tests. Cekura automatically:

- Connects to your ElevenLabs agent via websocket
- Executes test scenarios
- Captures audio and transcript data
3
View results
Results appear in your dashboard. Track test status, metrics, and conversation details in real-time.
Test your agents using chat interface directly from the frontend.
1
Configure chat provider and assistant id
Go to your agent settings and select the chat provider as ‘ElevenLabs’ and also enter ‘Assistant Id’, API key is not required here.

Select ElevenLabs chat provider from the available options in the agent settings.
To find your Assistant ID, go to your ElevenLabs dashboard and navigate to the Agents section. Open your agent and the assistant ID will be visible just below the header.
2
Run tests from frontend
Select scenarios and run tests using the UI:
Click “Run with Text” to execute your tests. Cekura automatically:

- Connects to your ElevenLabs agent via chat interface
- Executes test scenarios
- Captures conversation transcripts
3
View results
Results appear in your dashboard. Track test status, metrics, and conversation details in real-time.
Use the API to integrate ElevenLabs testing into your workflow.
Required fields:
Prerequisites
Configure ElevenLabs credentials in your agent settings:
- Assistant ID: Your ElevenLabs agent ID
- ElevenLabs API Key: Your ElevenLabs API key with access to Agents
To find your Assistant ID, go to your ElevenLabs dashboard and navigate to the Agents section. Go to your particular agent you want to test, open that agent and assistant id (11labs agent id) will be visible just below the header.
API Endpoint
Copy
Ask AI
POST https://api.cekura.ai/test_framework/v1/scenarios-external/run_scenarios_elevenlabs/
Authentication
Include your API key in the request header:Copy
Ask AI
X-CEKURA-API-KEY: <YOUR_API_KEY>
Request Parameters
scenarios (array | integer | string, required): Test scenarios to run- Array format: List of scenario IDs
[123, 456, 789] - Integer format: Run first N scenarios for the agent
5 - String format: Run all scenarios for the agent
"all"
Examples
Single Run (cURL)
Copy
Ask AI
curl -X POST \
'https://api.cekura.ai/test_framework/v1/scenarios-external/run_scenarios_elevenlabs/' \
-H 'X-CEKURA-API-KEY: <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"scenarios": [30]
}'
Multiple Runs (cURL)
Copy
Ask AI
curl -X POST \
'https://api.cekura.ai/test_framework/v1/scenarios-external/run_scenarios_elevenlabs/' \
-H 'X-CEKURA-API-KEY: <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"scenarios": [30, 31, 32],
"frequency": 2,
"name": "ElevenLabs Test Run"
}'
Run First N Scenarios (cURL)
Copy
Ask AI
curl -X POST \
'https://api.cekura.ai/test_framework/v1/scenarios-external/run_scenarios_elevenlabs/' \
-H 'X-CEKURA-API-KEY: <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"scenarios": 5,
"agent_id": 123,
"frequency": 1,
"name": "First 5 Scenarios"
}'
Run All Scenarios (cURL)
Copy
Ask AI
curl -X POST \
'https://api.cekura.ai/test_framework/v1/scenarios-external/run_scenarios_elevenlabs/' \
-H 'X-CEKURA-API-KEY: <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"scenarios": "all",
"agent_id": 123,
"frequency": 1,
"name": "All Scenarios Test"
}'
With Custom Configuration (cURL)
Copy
Ask AI
curl -X POST \
'https://api.cekura.ai/test_framework/v1/scenarios-external/run_scenarios_elevenlabs/' \
-H 'X-CEKURA-API-KEY: <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"scenarios": [30],
"conversation_config_override": {
"tts": {
"voice_id": "custom_voice_id"
}
},
"frequency": 1,
"name": "Custom Config Test"
}'
Python Example
Copy
Ask AI
import requests
API_KEY = "<YOUR_API_KEY>"
BASE_URL = "https://api.cekura.ai/test_framework"
headers = {
"X-CEKURA-API-KEY": API_KEY,
"Content-Type": "application/json",
}
payload = {
"scenarios": [30, 31, 32],
"frequency": 2,
"name": "ElevenLabs Test Run"
}
resp = requests.post(
f"{BASE_URL}/v1/scenarios-external/run_scenarios_elevenlabs/",
headers=headers,
json=payload,
)
result = resp.json()
print(result)
Python with Configuration Override
Copy
Ask AI
import requests
API_KEY = "<YOUR_API_KEY>"
BASE_URL = "https://api.cekura.ai/test_framework"
headers = {
"X-CEKURA-API-KEY": API_KEY,
"Content-Type": "application/json",
}
payload = {
"scenarios": [30],
"conversation_config_override": {
"tts": {
"voice_id": "custom_voice_id"
}
},
"frequency": 1,
"name": "Custom Config Test"
}
resp = requests.post(
f"{BASE_URL}/v1/scenarios-external/run_scenarios_elevenlabs/",
headers=headers,
json=payload,
)
result = resp.json()
print(result)
Python - Run All Scenarios
Copy
Ask AI
import requests
API_KEY = "<YOUR_API_KEY>"
BASE_URL = "https://api.cekura.ai/test_framework"
headers = {
"X-CEKURA-API-KEY": API_KEY,
"Content-Type": "application/json",
}
payload = {
"scenarios": "all",
"agent_id": 123,
"frequency": 1,
"name": "All Scenarios Test"
}
resp = requests.post(
f"{BASE_URL}/v1/scenarios-external/run_scenarios_elevenlabs/",
headers=headers,
json=payload,
)
result = resp.json()
print(result)
Response
Copy
Ask AI
{
"id": 16870,
"name": "ElevenLabs Test Run",
"agent": 5,
"status": "in_progress",
"success_rate": 0.0,
"run_as_text": false,
"is_cronjob": false,
"runs": [
{
"id": 34625,
"status": "running",
"scenario": 11547,
"scenario_name": "Customer Support Scenario",
"test_profile_data": {"key": "value"}
}
],
"created_at": "2025-10-16T09:32:59.484534Z",
"updated_at": "2025-10-16T09:32:59.484942Z"
}
Error Responses
Missing ElevenLabs Credentials
Copy
Ask AI
{
"elevenlabs_creds": ["Please add ElevenLabs credentials"]
}
Missing ElevenLabs Agent ID
Copy
Ask AI
{
"assistant_id": ["ElevenLabs agent ID (assistant_id) is required but not set on the agent."]
}
Invalid Scenarios
Copy
Ask AI
{
"scenarios": ["Invalid scenario IDs or scenarios not found"]
}
Insufficient Balance
Copy
Ask AI
{
"detail": "Insufficient balance for this operation"
}