> ## Documentation Index
> Fetch the complete documentation index at: https://koreai-content-gov.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent Performance API

<Badge icon="arrow-left" color="gray">[Back to API List](/ai-for-service/apis/contact-center/api-list)</Badge>

Provides historical contact handling metrics by agent, queue, and reporting interval. Workforce management applications can use this API to validate schedules, measure agent utilization, and analyze historical workload distribution.

| **Method**        | POST                                                                                                                           |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| **Endpoint**      | `https://{{host}}/agentassist/api/public/analytics/account/{{AccountId}}/agentperformance`                                     |
| **Content-Type**  | `application/json`                                                                                                             |
| **Authorization** | `auth: {{JWT}}` See [How to generate the JWT Token](/ai-for-service/apis/automation/api-introduction#generating-the-jwt-token) |
| **API Scope**     | Configuration                                                                                                                  |

## Path Parameters

| Parameter | Description                                                                                          | Type             |
| --------- | ---------------------------------------------------------------------------------------------------- | ---------------- |
| `host`    | Environment URL, for example, `https://platform.kore.ai`                                             | String, required |
| `botId`   | `BotId` or `StreamId`. You can access it from the [App Settings](/ai-for-service/app-settings) page. | String, required |

## Sample Request

```bash theme={null}
curl --location 'https://{{host}}/agentassist/api/public/analytics/account/636f5b36bcf8a8c7101exxxx/agentperformance' \
--header 'auth: {{JWT_TOKEN}}' \
--header 'Content-Type: application/json' \
--header 'iId: {{streamId}}' \
--data '{
  "fromTimeStamp": "2023-01-07T09:45:00Z",
  "toTimeStamp": "2023-01-08T10:00:00Z",
  "skip": 0,
  "limit": 10
}'
```

## Header Parameters

| Header      | Description                                     | Required/Optional |
| ----------- | ----------------------------------------------- | ----------------- |
| `accountId` | The account ID associated with the API request. | Required          |
| `auth`      | JWT token for authentication.                   | Required          |
| `iId`       | Stream or application ID.                       | Required          |

## Request Body Parameters

| Parameter       | Type   | Required | Description                                                                            |
| --------------- | ------ | -------- | -------------------------------------------------------------------------------------- |
| `fromTimeStamp` | String | No       | Start date and time in ISO 8601 format. Optional for initial synchronization requests. |
| `toTimeStamp`   | String | Yes      | End date and time in ISO 8601 format.                                                  |
| `skip`          | Number | No       | Number of agent records to skip for pagination. Default value is `0`.                  |
| `limit`         | Number | No       | Number of agent records returned per page.                                             |

<Note> Use the `skip` and `limit` parameters to paginate through results. The response includes the `hasMore` flag to indicate whether additional records are available.</Note>

## Sample Response

```json expandable=true theme={null}
{
  "hasMore": true,
  "totalCount": 42,
  "AgentPerformance": [
    {
      "agentId": "a-xxxx-1",
      "intervals": [
        {
          "intervalStartTimeStamp": "2023-01-07T09:45:00.000Z",
          "intervalEndTimeStamp": "2023-01-07T10:00:00.000Z",
          "queues": [
            {
              "queueId": "qu-xxxx-1",
              "queueName": "General Information",
              "offeredContacts": 3,
              "answeredContacts": 3,
              "abandonedContacts": 0,
              "completedContacts": 2,
              "transferredContacts": 1,
              "conversationHandleTime": 95000,
              "conversationTalkTime": 82000,
              "acwDuration": 9000,
              "holdDuration": 4000,
              "csatScore": 4
            },
            {
              "queueId": "qu-xxxx-2",
              "queueName": "Billing Support",
              "offeredContacts": 1,
              "answeredContacts": 1,
              "abandonedContacts": 0,
              "completedContacts": 1,
              "transferredContacts": 0,
              "conversationHandleTime": 30000,
              "conversationTalkTime": 27000,
              "acwDuration": 3000,
              "holdDuration": 0,
              "csatScore": 5
            }
          ]
        }
      ]
    }
  ]
}

```

## Response Body Parameters

| Field                                                      | Type    | Description                                                                 |
| ---------------------------------------------------------- | ------- | --------------------------------------------------------------------------- |
| `hasMore`                                                  | Boolean | Indicates whether additional records are available beyond the current page. |
| `totalCount`                                               | Integer | Total number of agents with activity during the requested time range.       |
| `AgentPerformance`                                         | Array   | List of agent performance records.                                          |
| `AgentPerformance.agentId`                                 | String  | Unique identifier of the agent.                                             |
| `AgentPerformance.intervals`                               | Array   | List of reporting intervals for the agent.                                  |
| `AgentPerformance.intervals.intervalStartTimeStamp`        | String  | Interval start time in ISO 8601 format.                                     |
| `AgentPerformance.intervals.intervalEndTimeStamp`          | String  | Interval end time in ISO 8601 format.                                       |
| `AgentPerformance.intervals.queues`                        | Array   | Queue-level performance metrics for the interval.                           |
| `AgentPerformance.intervals.queues.queueId`                | String  | Unique identifier of the queue.                                             |
| `AgentPerformance.intervals.queues.queueName`              | String  | Queue name.                                                                 |
| `AgentPerformance.intervals.queues.offeredContacts`        | Integer | Number of contacts routed to the agent from the queue.                      |
| `AgentPerformance.intervals.queues.answeredContacts`       | Integer | Number of contacts accepted by the agent.                                   |
| `AgentPerformance.intervals.queues.abandonedContacts`      | Integer | Number of contacts abandoned while assigned or ringing to the agent.        |
| `AgentPerformance.intervals.queues.completedContacts`      | Integer | Number of contacts completed by the agent.                                  |
| `AgentPerformance.intervals.queues.transferredContacts`    | Integer | Number of contacts transferred by the agent.                                |
| `AgentPerformance.intervals.queues.conversationHandleTime` | Integer | Total handle time in milliseconds.                                          |
| `AgentPerformance.intervals.queues.conversationTalkTime`   | Integer | Total active interaction time in milliseconds.                              |
| `AgentPerformance.intervals.queues.acwDuration`            | Integer | Total after-call work duration in milliseconds.                             |
| `AgentPerformance.intervals.queues.holdDuration`           | Integer | Total hold duration in milliseconds.                                        |
| `AgentPerformance.intervals.queues.csatScore`              | Integer | Average CSAT score for contacts handled by the agent from the queue.        |
