Evaluations
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
[]50Successful Response
Validation Error
GET /v1/{workspace_id}/production-eval-definitions HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"items": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"workspace_id": "123e4567-e89b-12d3-a456-426614174000",
"service_id": "123e4567-e89b-12d3-a456-426614174000",
"eval_key": "text",
"eval_type": "assertion",
"assertion_kind": "text",
"metric_key": "text",
"expected": null,
"params": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"active": true,
"created_at": "2026-01-01T00:00:00.000Z",
"updated_at": "2026-01-01T00:00:00.000Z"
}
],
"has_more": true,
"continuation_token": null
}Create a production eval definition.
metric_key must name an active ai_query metric on call_intelligence in this workspace's metric settings; any other key returns 422.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
trueSuccessful Response
An eval (assertion or metric-eval) that runs against a workspace's live
calls — the production analogue of a sim case's evals. service_id
None applies to every service in the workspace. expected is JSON: a
phrase string for assertions, or a {gte|lte|equals|...} threshold for
metric-evals.
trueValidation Error
POST /v1/{workspace_id}/production-eval-definitions HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 190
{
"eval_key": "text",
"eval_type": "metric",
"service_id": "123e4567-e89b-12d3-a456-426614174000",
"metric_key": "text",
"expected": null,
"params": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"active": true
}{
"id": "123e4567-e89b-12d3-a456-426614174000",
"workspace_id": "123e4567-e89b-12d3-a456-426614174000",
"service_id": "123e4567-e89b-12d3-a456-426614174000",
"eval_key": "text",
"eval_type": "assertion",
"assertion_kind": "text",
"metric_key": "text",
"expected": null,
"params": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"active": true,
"created_at": "2026-01-01T00:00:00.000Z",
"updated_at": "2026-01-01T00:00:00.000Z"
}API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Successful Response
No content
Validation Error
DELETE /v1/{workspace_id}/production-eval-definitions/{definition_id} HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No content
Update a production eval definition.
A patch that sets metric_key or eval_type, or sets active to true, re-checks the metric: a metric eval must name an active ai_query metric on call_intelligence, else 422. Clearing metric_key on a metric eval also returns 422. Any other patch, including active: false, leaves the stored key alone.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Successful Response
An eval (assertion or metric-eval) that runs against a workspace's live
calls — the production analogue of a sim case's evals. service_id
None applies to every service in the workspace. expected is JSON: a
phrase string for assertions, or a {gte|lte|equals|...} threshold for
metric-evals.
trueValidation Error
PATCH /v1/{workspace_id}/production-eval-definitions/{definition_id} HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 217
{
"service_id": "123e4567-e89b-12d3-a456-426614174000",
"eval_key": "text",
"eval_type": "assertion",
"assertion_kind": "text",
"metric_key": "text",
"expected": null,
"params": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"active": true
}{
"id": "123e4567-e89b-12d3-a456-426614174000",
"workspace_id": "123e4567-e89b-12d3-a456-426614174000",
"service_id": "123e4567-e89b-12d3-a456-426614174000",
"eval_key": "text",
"eval_type": "assertion",
"assertion_kind": "text",
"metric_key": "text",
"expected": null,
"params": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"active": true,
"created_at": "2026-01-01T00:00:00.000Z",
"updated_at": "2026-01-01T00:00:00.000Z"
}Run the workspace's active eval definitions against one completed call and persist the verdicts. Synchronous (the caller waits on the judge); the eager post-call trigger is a separate change.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Successful Response
Validation Error
POST /v1/{workspace_id}/calls/{conversation_id}/evaluate HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"conversation_id": "123e4567-e89b-12d3-a456-426614174000",
"results": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"workspace_id": "123e4567-e89b-12d3-a456-426614174000",
"service_id": "123e4567-e89b-12d3-a456-426614174000",
"conversation_id": "123e4567-e89b-12d3-a456-426614174000",
"call_sid": "text",
"eval_key": "text",
"eval_type": "assertion",
"assertion_kind": "text",
"metric_key": "text",
"status": "passed",
"passed": true,
"score": 1,
"expected": null,
"actual": null,
"rationale": "text",
"justification": "text",
"cited_turns": [],
"computed_at": "2026-01-01T00:00:00.000Z",
"created_at": "2026-01-01T00:00:00.000Z"
}
]
}A call's verdicts. Empty when the call exists but hasn't been evaluated; 404 when it doesn't exist.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Successful Response
Conversation not found
Validation Error
GET /v1/{workspace_id}/calls/{conversation_id}/eval-results HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"conversation_id": "123e4567-e89b-12d3-a456-426614174000",
"results": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"workspace_id": "123e4567-e89b-12d3-a456-426614174000",
"service_id": "123e4567-e89b-12d3-a456-426614174000",
"conversation_id": "123e4567-e89b-12d3-a456-426614174000",
"call_sid": "text",
"eval_key": "text",
"eval_type": "assertion",
"assertion_kind": "text",
"metric_key": "text",
"status": "passed",
"passed": true,
"score": 1,
"expected": null,
"actual": null,
"rationale": "text",
"justification": "text",
"cited_turns": [],
"computed_at": "2026-01-01T00:00:00.000Z",
"created_at": "2026-01-01T00:00:00.000Z"
}
]
}Last updated
Was this helpful?

