> ## Documentation Index
> Fetch the complete documentation index at: https://docs.operata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CCP error logs

> CCP (Contact Control Panel) error log entries Operata captures — WARN, ERROR, and CRITICAL severity entries the Agent Experience Collector attaches to each Amazon Connect Contact record.

The `ccpErrorLogs` array contains error and warning log entries the Amazon Connect Contact Control Panel (CCP) emits during a Contact. The Agent Experience Collector captures entries at `WARN`, `ERROR`, and `CRITICAL` severity, attaches them to the Contact record, and forwards them to Operata. These logs surface client-side softphone issues — failed WebRTC negotiations, microphone permission denials, signalling timeouts, Streams library exceptions — that don't appear in Amazon Connect Contact Trace Records (CTRs).

Entries appear on the Contact record in Operata Insights and via the [`GET /v1/data/ccplogs`](/docs/api-ccp-logs) endpoint. For the Streams log subscription API the Collector uses, see the [Amazon Connect Streams documentation](https://github.com/amazon-connect/amazon-connect-streams/blob/master/Documentation.md#ccp-error-logging).

## Schema

```json theme={null}
"ccpErrorLogs": [
  {
    "timestamp": "2026-05-18T10:14:22.346Z",
    "level": "ERROR",
    "component": "WebRTC",
    "text": "Failed to get user media",
    "exception": {
      "name": "NotAllowedError",
      "message": "Permission denied",
      "stack": "NotAllowedError: Permission denied\n    at ..."
    },
    "contactId": "b0c9d4d1-aaaa-bbbb-cccc-ee75d4240340",
    "agentResourceId": "23aca65c-7bc8-4ead-b9e5-9df15f06b8af"
  }
]
```

## Fields

| Name                | Type              | Required | Description                                                                                                                                         | Example                                          |
| ------------------- | ----------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------ |
| `timestamp`         | string (ISO 8601) | yes      | When the CCP logger wrote the entry. UTC.                                                                                                           | `2026-05-18T10:14:22.346Z`                       |
| `level`             | string            | yes      | Log severity. One of `WARN`, `ERROR`, `CRITICAL`. The Agent Experience Collector drops `INFO` and `DEBUG` entries before shipping.                  | `ERROR`                                          |
| `component`         | string            | yes      | The Streams library component that emitted the entry. Common values: `WebRTC`, `Softphone`, `Connection`, `Session`, `Agent`, `Contact`, `Streams`. | `WebRTC`                                         |
| `text`              | string            | yes      | The log message text.                                                                                                                               | `Failed to get user media`                       |
| `exception`         | object            | no       | Exception details when the log entry was triggered by a thrown exception.                                                                           | —                                                |
| `exception.name`    | string            | no       | Exception class name. Common values: `NotAllowedError`, `NotFoundError`, `AbortError`, `TimeoutError`, `InvalidStateError`.                         | `NotAllowedError`                                |
| `exception.message` | string            | no       | Exception message.                                                                                                                                  | `Permission denied`                              |
| `exception.stack`   | string            | no       | Exception stack trace, when available.                                                                                                              | `NotAllowedError: Permission denied\n    at ...` |
| `contactId`         | string (UUID)     | no       | The Amazon Connect Contact ID active when the log entry was emitted. Absent for log entries emitted outside a Contact (such as CCP startup errors). | `b0c9d4d1-aaaa-bbbb-cccc-ee75d4240340`           |
| `agentResourceId`   | string (UUID)     | no       | The Amazon Connect agent ID active in the CCP.                                                                                                      | `23aca65c-7bc8-4ead-b9e5-9df15f06b8af`           |

For the canonical CCP log schema and the full set of components the Streams library can emit, see the [Amazon Connect Streams documentation](https://github.com/amazon-connect/amazon-connect-streams/blob/master/Documentation.md#ccp-error-logging).
