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

# Translation Logs

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

Use this API to fetch translation request and response logs for a bot conversation in ascending order of timestamp within a given date range. These logs help identify and debug issues with translation engine responses.

| **Method**        | **GET**                                                                                                                                        |
| :---------------- | :--------------------------------------------------------------------------------------------------------------------------------------------- |
| **Endpoint**      | `https://{{host}}/api/{{version}}/{{botId}}/translationlogs?sessionId={{sessionId}}&fromDate={{fromDate}}&toDate={{toDate}}&limit=50&offset=0` |
| **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**     | App Builder: Debug Logs <br /> Admin Console: Not Applicable                                                                                   |

## Path Parameters

| Parameter | Description                                                                                           |
| --------- | ----------------------------------------------------------------------------------------------------- |
| `host`    | Environment URL, for example, `https://platform.kore.ai`                                              |
| `version` | Refers to the version of the API. The current version of this API is `1.1`                            |
| `botId`   | App ID or Stream ID. You can access it from the **App Settings** --> **App Profile** page of the app. |

## Sample Request

```bash theme={null}
curl --location 'https://{{host}}/api/1.1/{{botId}}/translationLogs?{{sessionId}}&fromDate=2026-04-27T00:00:00.000Z&toDate=2026-04-27T23:59:59.999Z&limit=50&offset=0' \
--header 'auth: {{jwt_token}}' \
--header 'Content-Type: application/json' \
--header 'accountId: {{accountId}}'
```

## Query Parameters

| Parameter   | Description                                                                                                                                                                                          | Type                        |
| ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------- |
| `sessionId` | Conversation session ID used to fetch translation logs for a specific conversation session.                                                                                                          | string, optional            |
| `fromDate`  | Start time for fetching logs. Use UTC timestamp format `YYYY-MM-DDTHH:MM:SS.000Z` to avoid time-zone mismatches. Don't use `YYYY-MM-DD`. For example, `2026-04-27T18:14:06.498Z`. mezone boundaries. | string (datetime), optional |
| `toDate`    | End time for fetching logs. Use UTC timestamp format: `YYYY-MM-DDTHH:MM:SS.000Z`. Example: `2026-04-27T23:59:59.999Z`.                                                                               | string (datetime), optional |
| `limit`     | Number of records to fetch. The maximum allowed value is `50`. If not specified, the API returns up to `50` records.                                                                                 | integer, optional           |
| `offset`    | Number of records to skip before fetching results. If not specified, the API starts from `0`.                                                                                                        | integer, optional           |

<Note>To fetch translation logs, provide at least one of the query parameters `sessionId` or `fromDate` and `toDate`.</Note>

## Sample Response

```json expandable theme={null}
[
    {
        "sessionId": "69ef6f2737087759a08xxxxx",
        "timestamp": "2026-04-27T14:14:08.458Z",
        "inputPayload": {
            "endPoint": {
                "host": "xxxxxx-translate.laratranslate.com",
                "port": "",
                "path": "/translate",
                "protocol": "https",
                "method": "post",
                "connectorEnabled": false,
                "piiDataEnabled": false
            },
            "headerFields": {
                "Content-Type": "application/json",
                "X-Lara-Access-Key-Id": "15EJ8UGGTKQSA60BVSCE3xxxxx",
                "X-Lara-Access-Key-Secret": "***REDACTED***"
            },
            "payloadFields": {
                "sourceText": "Por favor espere mientras encuentro al agente adecuado para usted",
                "targetLanguage": "es"
            },
            "idp": "none",
            "force_proxy": true,
            "timeout": 20000
        },
        "outputPayload": {
            "translations": [
                "Por favor espere mientras encuentro al agente adecuado para usted"
            ]
        },
        "engine": "custom",
        "statusCode": 200,
        "success": true,
        "batchSize": 1
    },
    {
        "sessionId": "69ef6f2737087759a08xxxxx",
        "timestamp": "2026-04-27T14:15:16.669Z",
        "inputPayload": {
            "endPoint": {
                "host": "xxxxxx-translate.laratranslate.com",
                "port": "",
                "path": "/translate",
                "protocol": "https",
                "method": "post",
                "connectorEnabled": false,
                "piiDataEnabled": false
            },
            "headerFields": {
                "Content-Type": "application/json",
                "X-Lara-Access-Key-Id": "15EJ8UGGTKQSA60BVSCE3xxxxx",
                "X-Lara-Access-Key-Secret": "***REDACTED***"
            },
            "payloadFields": {
                "sourceText": "Thank you for waiting. You are now connected with agent with only credit AND",
                "targetLanguage": "es"
            },
            "idp": "none",
            "force_proxy": true,
            "timeout": 20000
        },
        "outputPayload": {
            "translations": [
                "Gracias por esperar. Ahora estás en contacto con un agente solo con tarjeta de crédito Y"
            ]
        },
        "engine": "custom",
        "statusCode": 200,
        "success": true,
        "batchSize": 1
    },
    {
        "sessionId": "69ef6f2737087759a08xxxxx",
        "timestamp": "2026-04-27T14:15:17.410Z",
        "inputPayload": {
            "endPoint": {
                "host": "xxxxxx-translate.laratranslate.com",
                "port": "",
                "path": "/translate",
                "protocol": "https",
                "method": "post",
                "connectorEnabled": false,
                "piiDataEnabled": false
            },
            "headerFields": {
                "Content-Type": "application/json",
                "X-Lara-Access-Key-Id": "15EJ8UGGTKQSA60BVSCE3xxxxx",
                "X-Lara-Access-Key-Secret": "***REDACTED***"
            },
            "payloadFields": {
                "sourceText": "Please enter intent<>transfer money<>Please wait<>Por favor espere mientras encuentro al agente adecuado para usted<>Thank you for waiting. You are now connected with agent with only credit AND",
                "targetLanguage": "de"
            },
            "idp": "none",
            "force_proxy": true,
            "timeout": 20000,
            "originalIndices": [
                0,
                1,
                2,
                3,
                4
            ]
        },
        "outputPayload": {
            "translations": [
                "Bitte geben Sie den Zweck an&lt;&gt;Geld überweisen&lt;&gt;Bitte warten Sie&lt;&gt;Por favor espere mientras encuentro al agente adecuado para usted&lt;&gt;Vielen Dank für Ihre Geduld. Sie sind jetzt mit einem Mitarbeiter verbunden, der nur Kredit hat UND"
            ]
        },
        "engine": "custom",
        "statusCode": 200,
        "success": true,
        "batchSize": 1
    },
    {
        "sessionId": "69ef6f2737087759a08xxxxx",
        "timestamp": "2026-04-27T14:15:17.423Z",
        "inputPayload": {
            "endPoint": {
                "host": "xxxxxx-translate.laratranslate.com",
                "port": "",
                "path": "/translate",
                "protocol": "https",
                "method": "post",
                "connectorEnabled": false,
                "piiDataEnabled": false
            },
            "headerFields": {
                "Content-Type": "application/json",
                "X-Lara-Access-Key-Id": "15EJ8UGGTKQSA60BVSCExxxxx",
                "X-Lara-Access-Key-Secret": "***REDACTED***"
            },
            "payloadFields": {
                "sourceText": "Please enter intent<>transfer money<>Please wait<>Por favor espere mientras encuentro al agente adecuado para usted<>Thank you for waiting. You are now connected with agent with only credit AND",
                "targetLanguage": "de"
            },
            "idp": "none",
            "force_proxy": true,
            "timeout": 20000,
            "originalIndices": [
                0,
                1,
                2,
                3,
                4
            ]
        },
        "outputPayload": {
            "translations": [
                "Bitte geben Sie den Zweck an&lt;&gt;Geld überweisen&lt;&gt;Bitte warten Sie&lt;&gt;Por favor espere mientras encuentro al agente adecuado para usted&lt;&gt;Vielen Dank für Ihre Geduld. Sie sind jetzt mit einem Mitarbeiter verbunden, der nur Kredit hat UND"
            ]
        },
        "engine": "custom",
        "statusCode": 200,
        "success": true,
        "batchSize": 1
    },
    {
        "sessionId": "69ef6f2737087759a08xxxxx",
        "timestamp": "2026-04-27T14:15:17.627Z",
        "inputPayload": {
            "endPoint": {
                "host": "xxxxxx-translate.laratranslate.com",
                "port": "",
                "path": "/translate",
                "protocol": "https",
                "method": "post",
                "connectorEnabled": false,
                "piiDataEnabled": false
            },
            "headerFields": {
                "Content-Type": "application/json",
                "X-Lara-Access-Key-Id": "15EJ8UGGTKQSA60BVSCE3xxxxx",
                "X-Lara-Access-Key-Secret": "***REDACTED***"
            },
            "payloadFields": {
                "sourceText": "Please enter intent<>transfer money<>Please wait<>Por favor espere mientras encuentro al agente adecuado para usted<>Thank you for waiting. You are now connected with agent with only credit AND",
                "targetLanguage": "de"
            },
            "idp": "none",
            "force_proxy": true,
            "timeout": 20000,
            "originalIndices": [
                0,
                1,
                2,
                3,
                4
            ]
        },
        "outputPayload": {
            "translations": [
                "Bitte geben Sie den Zweck an&lt;&gt;Geld überweisen&lt;&gt;Bitte warten Sie&lt;&gt;Por favor espere mientras encuentro al agente adecuado para usted&lt;&gt;Vielen Dank für Ihre Geduld. Sie sind jetzt mit einem Mitarbeiter verbunden, der nur Kredit hat UND"
            ]
        },
        "engine": "custom",
        "statusCode": 200,
        "success": true,
        "batchSize": 1
    },
    {
        "sessionId": "69ef6f2737087759a08xxxxx",
        "timestamp": "2026-04-27T14:16:05.165Z",
        "inputPayload": {
            "endPoint": {
                "host": "xxxxxx-translate.laratranslate.com",
                "port": "",
                "path": "/translate",
                "protocol": "https",
                "method": "post",
                "connectorEnabled": false,
                "piiDataEnabled": false
            },
            "headerFields": {
                "Content-Type": "application/json",
                "X-Lara-Access-Key-Id": "15EJ8UGGTKQSA60BVSCE3xxxxx",
                "X-Lara-Access-Key-Secret": "***REDACTED***"
            },
            "payloadFields": {
                "sourceText": "agent ahora ha cerrado esta conversación. Comuníquese con nosotros si necesita ayuda nuevamente.",
                "targetLanguage": "es"
            },
            "idp": "none",
            "force_proxy": true,
            "timeout": 20000
        },
        "outputPayload": {
            "translations": [
                "agent ahora ha cerrado esta conversación. Comuníquese con nosotros si necesita ayuda nuevamente."
            ]
        },
        "engine": "custom",
        "statusCode": 200,
        "success": true,
        "batchSize": 1
    },
    {
        "sessionId": "69ef6f2737087759a08xxxxx",
        "timestamp": "2026-04-27T14:16:05.184Z",
        "inputPayload": {
            "endPoint": {
                "host": "xxxxxx-translate.laratranslate.com",
                "port": "",
                "path": "/translate",
                "protocol": "https",
                "method": "post",
                "connectorEnabled": false,
                "piiDataEnabled": false
            },
            "headerFields": {
                "Content-Type": "application/json",
                "X-Lara-Access-Key-Id": "15EJ8UGGTKQSA60BVSCE3xxxxx",
                "X-Lara-Access-Key-Secret": "***REDACTED***"
            },
            "payloadFields": {
                "sourceText": "Por favor, complete la encuesta.",
                "targetLanguage": "es"
            },
            "idp": "none",
            "force_proxy": true,
            "timeout": 20000
        },
        "outputPayload": {
            "translations": [
                "Por favor, complete la encuesta."
            ]
        },
        "engine": "custom",
        "statusCode": 200,
        "success": true,
        "batchSize": 1
    }
]
```

## Response Parameters

| Parameter                                            | Description                                                                    | Type              | **Example**                                                                                        |
| ---------------------------------------------------- | ------------------------------------------------------------------------------ | ----------------- | -------------------------------------------------------------------------------------------------- |
| `sessionId`                                          | Conversation session ID associated with the translation event.                 | string            | `69ef6f2737087759a08xxxxx`                                                                         |
| `timestamp`                                          | UTC timestamp when the translation log was recorded.                           | string (datetime) | `2026-04-27T14:16:05.184Z`                                                                         |
| `inputPayload`                                       | Request payload sent to the translation provider. Sensitive keys are masked.   | object            |                                                                                                    |
| `inputPayload.endPoint`                              | API endpoint configuration details                                             | object            |                                                                                                    |
| `inputPayload.endPoint.host`                         | API host URL                                                                   | string            | `xxxxx-translate.laratranslate.com`                                                                |
| `inputPayload.endPoint.port`                         | Port number (if applicable)                                                    | string            |                                                                                                    |
| `inputPayload.endPoint.path`                         | API endpoint path                                                              | string            | `/translate`                                                                                       |
| `inputPayload.endPoint.protocol`                     | The protocol used for the request                                              | string            | `https`                                                                                            |
| `inputPayload.endPoint.method`                       | HTTP method used                                                               | string            | `post`                                                                                             |
| `inputPayload.endPoint.connectorEnabled`             | Indicates if the connector is enabled                                          | boolean           | `false`                                                                                            |
| `inputPayload.endPoint.connectorEnabled`             | Indicates if PII handling is enabled                                           | boolean           | `false`                                                                                            |
| `inputPayload.headerFields`                          | HTTP headers sent with the request                                             | object            |                                                                                                    |
| `inputPayload.headerFields.Content-Type`             | Content type of the request                                                    | string            | `"application/json"`                                                                               |
| `inputPayload.headerFields.X-Lara-Access-Key-Id`     | API access key ID                                                              | string            | `15EJ8UGGTKQSA60BVSCE3xxxxx`                                                                       |
| `inputPayload.headerFields.X-Lara-Access-Key-Secret` | API secret key (masked)                                                        | string            | `REDACTED`                                                                                         |
| `inputPayload.payloadFields`                         | Main request payload                                                           | object            |                                                                                                    |
| `inputPayload.payloadFields.sourceText`              | Text to be translated                                                          | string            | `agent ahora ha cerrado esta conversación. Comuníquese con nosotros si necesita ayuda nuevamente.` |
| `inputPayload.payloadFields.targetLanguage`          | Target language code                                                           | string            | `es`                                                                                               |
| `inputPayload.idp`                                   | Identity provider used                                                         | string            | `none`                                                                                             |
| `inputPayload.force_proxy`                           | Indicates if proxy is forced                                                   | boolean           | `true`                                                                                             |
| `inputPayload.timeout`                               | Request timeout in milliseconds                                                | number            | `20000`                                                                                            |
| `outputPayload`                                      | Response payload returned by the translation provider.                         |                   |                                                                                                    |
| `outputPayload.translations`                         | List of translated texts                                                       | array of strings  | `agent ahora ha cerrado esta conversación. Comuníquese con nosotros si necesita ayuda nuevamente.` |
| `engine`                                             | Translation engine used, for example, `google`, `microsoft`, or `custom`.      | string            | `custom`                                                                                           |
| `statusCode`                                         | Status code returned by the translation provider or internal processing layer. | number            | `200`                                                                                              |
| `success`                                            | Indicates whether the translation call succeeded.                              | boolean           | `true`                                                                                             |
| `batchSize`                                          | Number of items included in the translation request.                           | number            | `1`                                                                                                |

## Current Limitations

### No pagination metadata in the response

The API doesn't return fields such as `total`, `count`, `hasMore`, or `nextOffset`. You must manage pagination manually using `offset`. If the number of matching records exceeds `50`, you must manually fetch the next set by passing `offset`.

Examples:

* First page: `offset=0&limit=50`
* Second page: `offset=50&limit=50`
* Third page: `offset=100&limit=50`

### Use UTC timestamps for accurate filtering

For accurate filtering, use `fromDate` and `toDate` as full UTC timestamps such as `2026-04-27T18:14:06.498Z`.

### No translation initiation segregation

The response doesn't indicate where the translation was initiated from. For example, it doesn't distinguish whether the translation request originated from:

* Live Conversation
* Monitor Interactions
* Other translation-enabled surfaces

So the API returns translation request and response details, but it doesn't provide a field for translation initiation source.

### Message Order Preservation Limitation

The translated messages are accurate. However, the sequence of messages in the request isn't preserved due to indexing issues.
