duration_status to indicate evaluation eligibility, supports date-range and pagination filters, and can include below-threshold interactions when requested. Direction-specific evaluation logic enables directional segmentation and reporting.
| METHOD | POST |
|---|---|
| Endpoint | https://{{host}}/qualityai/api/v1/public/qualitymanagement/app/{{streamId}}/scorereporting |
| Content Type | application/json |
| Authorization | auth: {{JWT}} — See How to generate the JWT Token. |
| API Scope | Quality Management Analytics. |
Header Parameters
| Parameter | Description | Type |
|---|---|---|
Content-Type | application/json | string, required |
accountId | Unique account identifier. For example, 67a9ca06cf0e510a8632xxxx | string, required |
orgId | Unique identifier of the organization. | string, required |
auth | JWT token used for authentication. | string, required |
Path Parameters
| Parameter | Description | Type |
|---|---|---|
host | Environment URL. For example, https://platform.kore.ai/ | string, required |
streamId | botId or streamId. Retrieve this from the App Settings page. | string, required |
Sample Request
curl --location 'https://{{host}}/qualityai/api/v1/public/qualitymanagement/app/{{streamId}}/scorereporting' \
--header 'accountId: {{accountId}}' \
--header 'auth: {{JWT_TOKEN}}' \
--header 'Content-Type: application/json' \
--header 'orgId: o-da5be4e0-8fbb-5229-ac20-9b1384ebxxxx' \
--data '{
"offset": 0,
"startDate": "2026-03-23 10:17:54",
"endDate": "2026-03-23 23:36:35",
"include_below_threshold": true,
"contact_direction": "inbound"
"limit": 100
}'
Body Parameters
| Parameter | Description | Type |
|---|---|---|
offset | Number of records to skip for pagination. | integer, optional |
startDate | The start date from which records are retrieved. Use UTC format: YYYY-MM-DDTHH:MM:SS.NNNZ. For example, 2026-03-23 10:17:54. | string, required |
endDate | The end date to include records. Use UTC format: YYYY-MM-DDTHH:MM:SS.NNNZ. For example, 2026-03-23 23:00:35. | string, required |
include_below_threshold | When true, includes contacts marked Below Threshold in the response. Default: false. | string, required |
limit | Number of records to retrieve per page (maximum 100). | integer, optional |
contact_direction | Filters results by inbound or outbound. | string, optional |
APIs exclude contacts below the threshold by default. An
include_below_threshold=true parameter allows explicit inclusion for ad hoc analysis.Sample Response
{
"results": [
{
"conversationId": "c-0179c0cc********60dbed",
"Queues": [
{
"Queue ID": "qu-8ebc557-57c********698cd5",
"Queue Name": "Inbound Q"
}
],
"Agents": [
{
"Agent ID": "a-647043a-dac********6b688",
"Agent Name": "xxxxx admin"
}
],
"koreEvalutionScore": 0,
"fatalErrorCount": 1,
"Language": "English",
"duration_status": "evaluated",
"Disposition": [
{
"setId": "dst-57b825e-cea1-4643-9b3c-4d24538bxxxx",
"setName": "Resolution",
"code": [
{
"id": "ds-e73c46c-c826-4294-b326-ae94429axxxxx",
"name": "Requires Supervisor Attention",
"colour": "#800080"
}
]
},
{
"setId": "dst-d8863d8-9cb2-4a3d-a132-79983c49xxxx",
"setName": "set2",
"code": []
},
{
"setId": "dst-a06a346-aed9-4b53-8433-5999b70dxxxxx",
"setName": "test set",
"code": [
{
"id": "ds-939696c-c33c-42b8-a749-e3312767xxxxx",
"name": "code2",
"colour": "#FB3199"
}
]
}
],
"Metrics": [
{
"Metric ID": "em-5a2e735a-5cc********61847",
"Metric Name": "AU",
"Metric Weight": 5,
"Metric Negative Weight": 11,
"Qualification": "NA",
"isFatalError": false,
"Auditor Response": null
},
{
"Metric ID": "em-0b1ca817-c********6afa1",
"Metric Name": "AU Dyn Gen ai+ deter",
"Metric Weight": 10,
"Metric Negative Weight": 12,
"Qualification": "NA",
"isFatalError": false,
"Auditor Response": null
},
{
"Metric ID": "em-69bc23c********6dc2a2",
"Metric Name": "Booking playbook",
"Metric Weight": 7,
"Metric Negative Weight": 0,
"Qualification": "YES",
"isFatalError": false,
"Auditor Response": null
},
{
"Metric ID": "em-0a7f9c8cc********6db3b",
"Metric Name": "End_Gen ai",
"Metric Weight": 20,
"Metric Negative Weight": 31,
"Qualification": "NO",
"isFatalError": true,
"Auditor Response": null
}
],
"contactDirection": "inbound",
"AuditStatus": "Unassigned",
"AuditDate": null,
"AuditorName": null,
"custom_fields": {}
}
]
}
Response Body Parameters
| Parameter | Description | Type |
|---|---|---|
results | List of conversation objects returned for the request. | array |
conversationId | Unique system-generated identifier for the conversation. | string |
customConversationId | Custom identifier provided at ingestion time; present only when set during upload. | string |
queues | List of queue objects associated with the conversation. | array |
queueId | Unique identifier for the queue. | string |
queueName | Name of the queue. | string |
agents | List of agents who participated in the conversation; multiple agents may exist per conversation. | array |
agentId | Unique identifier for the agent. | string |
agentName | Name of the agent. | string |
koreEvaluationScore | Auto QA score (-100 to 100); returns null for below-threshold or unavailable duration. | number or null |
fatalErrorCount | Number of fatal metric failures; returns 0 when none are present. If a fatal error occurs, koreEvaluationScore is set to 0. | integer |
language | Conversation language. | string |
metrics | List of evaluation metric objects applied to the conversation. | array |
metricId | Unique identifier for the evaluation metric. | string |
metricName | Name of the evaluation metric as configured in the evaluation form. | string |
metricWeight | Positive weight assigned to the metric. | number |
metricNegativeWeight | Negative weight assigned; returns 0 when not configured. | number |
qualification | Agent outcome for the metric (YES, NO, NA); present only when duration_status is evaluated. | string (enum) |
isFatalError | Indicates whether the metric is fatal and not met; if true, koreEvaluationScore is set to 0. | boolean |
duration_status | Evaluation eligibility status (evaluated, below_threshold, duration_unavailable). | string (enum) |
disposition | List of disposition sets associated with the conversation. | array |
evaluation_status | Overall evaluation result (pass, fail, not_evaluated). | string (enum) |
audit_status | Status of audit assignment or completion; returns null if unavailable. | string or null |
contact_direction | Resolved interaction direction (inbound or outbound). | string (enum) |
is_direction_defaulted | Indicates whether direction was system-inferred (true) or provided at ingestion (false). | boolean or null |
channel | Interaction channel (voice or chat). | string |
auditor | Name of the auditor. | string or null |
AuditStatus | Audit workflow status (Audited, Assigned, Not Assigned). | string |
AuditScore | Score assigned during audit evaluation; returned only when completed. | number (optional) |
audit_date | Timestamp of audit completion. | DateTime or null |
evaluatedAt | Timestamp when Auto QA evaluation was completed. | DateTime or null |
totalResults | Total number of conversation records matching the request. | integer |
totalPages | Total number of pages based on page size. | integer |
hasMore | Indicates whether additional pages exist. | boolean |
results | A list of conversation objects. | array |
Contacts ingested before the minimum duration threshold feature is enabled return
null for duration_status.