List an eval run's calls
curl --request GET \
--url https://voice-api.onclarity.com/v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}/call-results \
--header 'Authorization: Bearer <token>'import requests
url = "https://voice-api.onclarity.com/v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}/call-results"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://voice-api.onclarity.com/v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}/call-results', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"call_results": [
{
"call_id": "call_01",
"submission_id": "sub_01J9",
"conversation_id": "conv_01",
"scenario_id": "scn_01",
"scenario_name": "Caller books for tomorrow",
"silence_mode": "off",
"run_index": 0,
"call_status": "completed",
"hangup_reason": null,
"call_answered_at": "2026-10-22T14:05:01.000Z",
"call_ended_at": "2026-10-22T14:07:40.000Z",
"judge_state": "done",
"judge_error": null,
"judged_at": "2026-10-22T14:09:12.000Z",
"num_turns": 9,
"total_duration_ms": 159000,
"llm_avg_ttft_ms": 420,
"tts_avg_ttfb_ms": 210,
"latency_rating": "good",
"interruption_count": 1,
"tool_calls_made": [
"book_appointment"
],
"acoustic_median_ms": 1180,
"acoustic_max_ms": 2400,
"acoustic_mean_ms": 1250,
"acoustic_count": 8,
"stage_stt_ms": 160,
"stage_eou_ms": 380,
"stage_llm_ttfst_ms": 430,
"stage_tts_ttfb_ms": 200,
"stage_tool_ms": 650,
"agent_side_median_ms": 1010,
"stage_turns_measured": 8,
"call_end_reason": "agent_end_call"
}
]
}{
"error": "Invalid or revoked token"
}{
"error": "Eval submission not found"
}{
"error": "agent type assist cannot take calls: an assist agent listens to a human-operated call and never speaks",
"code": "AGENT_TYPE_NOT_DISPATCHABLE",
"agent_type": "assist",
"agent_id": "agent_456"
}Eval submissions
List an eval run's calls
Returns each finished call of the run with its scenario, outcome, grading state and latency measurements. Use conversation_id to fetch the call’s transcript and recording.
GET
/
v1
/
projects
/
{projectId}
/
agents
/
{agentId}
/
eval-submissions
/
{id}
/
call-results
List an eval run's calls
curl --request GET \
--url https://voice-api.onclarity.com/v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}/call-results \
--header 'Authorization: Bearer <token>'import requests
url = "https://voice-api.onclarity.com/v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}/call-results"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://voice-api.onclarity.com/v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}/call-results', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"call_results": [
{
"call_id": "call_01",
"submission_id": "sub_01J9",
"conversation_id": "conv_01",
"scenario_id": "scn_01",
"scenario_name": "Caller books for tomorrow",
"silence_mode": "off",
"run_index": 0,
"call_status": "completed",
"hangup_reason": null,
"call_answered_at": "2026-10-22T14:05:01.000Z",
"call_ended_at": "2026-10-22T14:07:40.000Z",
"judge_state": "done",
"judge_error": null,
"judged_at": "2026-10-22T14:09:12.000Z",
"num_turns": 9,
"total_duration_ms": 159000,
"llm_avg_ttft_ms": 420,
"tts_avg_ttfb_ms": 210,
"latency_rating": "good",
"interruption_count": 1,
"tool_calls_made": [
"book_appointment"
],
"acoustic_median_ms": 1180,
"acoustic_max_ms": 2400,
"acoustic_mean_ms": 1250,
"acoustic_count": 8,
"stage_stt_ms": 160,
"stage_eou_ms": 380,
"stage_llm_ttfst_ms": 430,
"stage_tts_ttfb_ms": 200,
"stage_tool_ms": 650,
"agent_side_median_ms": 1010,
"stage_turns_measured": 8,
"call_end_reason": "agent_end_call"
}
]
}{
"error": "Invalid or revoked token"
}{
"error": "Eval submission not found"
}{
"error": "agent type assist cannot take calls: an assist agent listens to a human-operated call and never speaks",
"code": "AGENT_TYPE_NOT_DISPATCHABLE",
"agent_type": "assist",
"agent_id": "agent_456"
}Authorizations
Your organization API key (it starts with anek_org_). The same key works on the Voice API and the Support API. See Authentication.
Path Parameters
Project id
Agent id
Eval submission id
Response
The run's calls
Show child attributes
Show child attributes