Request
curl https://sandbox.api.lendeasy.ai/v1/servicing/voice-provider/data/api/v1/metrics/$WORKFLOW_ID \
-H "Authorization: Bearer $TOKEN" \
-H "LendEasy-Tenant: $TENANT"
await fetch(`https://sandbox.api.lendeasy.ai/v1/servicing/voice-provider/data/api/v1/metrics/${workflowId}`, {
method: "GET",
headers: { Authorization: `Bearer ${token}`, "LendEasy-Tenant": tenant },
});
requests.get(
f"https://sandbox.api.lendeasy.ai/v1/servicing/voice-provider/data/api/v1/metrics/{workflow_id}",
headers={"Authorization": f"Bearer {token}", "LendEasy-Tenant": tenant},
)
{
"workflow_id": "collections_demo_v2",
"range": "24h",
"row_count": 42,
"kpis": {
"call_count": 42,
"avg_duration_sec": 176.4,
"error_count": 1
},
"call_volume_hourly": [
{
"hour": "2026-07-25T18: 00:00Z",
"count": 6
}
],
"outcomes": [
{
"outcome": "promise_to_pay",
"count": 18
}
],
"end_reasons": [
{
"end_reason": "agent_hangup",
"count": 30
}
]
}
{
"developerMessage": "Request was understood but rejected; inspect errors for field-level causes.",
"httpStatusCode": "400",
"defaultUserMessage": "The request could not be applied.",
"userMessageGlobalisationCode": "validation.msg.validation.errors.exist",
"errors": []
}
{
"developerMessage": "Request was understood but rejected; inspect errors for field-level causes.",
"httpStatusCode": "401",
"defaultUserMessage": "The request could not be applied.",
"userMessageGlobalisationCode": "error.msg.not.authenticated",
"errors": []
}
{
"developerMessage": "Request was understood but rejected; inspect errors for field-level causes.",
"httpStatusCode": "403",
"defaultUserMessage": "The request could not be applied.",
"userMessageGlobalisationCode": "error.msg.not.authorized",
"errors": []
}
{
"developerMessage": "Request was understood but rejected; inspect errors for field-level causes.",
"httpStatusCode": "404",
"defaultUserMessage": "The request could not be applied.",
"userMessageGlobalisationCode": "error.msg.resource.not.found",
"errors": []
}