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

# Get Feedback Survey Responses API

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

Retrieves end-user feedback survey responses submitted through supported channels. The API supports filtering responses by date range and channel, sorting results, and pagination. Depending on the configured survey, the response can include **Net Promoter Score (NPS)**, **Customer Satisfaction (CSAT)**, and **Like/Dislike** survey results, along with associated scores, comments, user details, and submission timestamps.

| **METHOD**    | **POST**                                                                                                                          |
| :------------ | :-------------------------------------------------------------------------------------------------------------------------------- |
| Endpoint      | `https://{{host}}/api/public/bot/{{botId}}/getFeedbackSurveyResponses`                                                            |
| 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: Metrics                                                                                                              |

## Path Parameters

| Parameter | Type             | Description                                                                                          |
| --------- | ---------------- | ---------------------------------------------------------------------------------------------------- |
| `host`    | String, required | The environment URL. For example, `https://platform.kore.ai`.                                        |
| `BotId`   | String, required | Bot identifier or Stream identifier. Access it on [App Settings](/ai-for-service/app-settings) page. |

## Sample Request

```bash theme={null}
curl --location 'https://{{host}}/api/public/bot/{{botId}}/getFeedbackSurveyResponses' \
--header 'auth: {{JWT_TOKEN}}' \
--header 'Content-Type: application/json' \
--data '{
  "filters": {
    "from": "2026-07-01T00:00:00.000Z",
    "to": "2026-07-26T23:59:59.000Z",
    "surveyType": "csat",
    "surveyName": "CSAT",
    "channel": ["rtm"],
    "channelUIds": ["john.doe@example.com"],
    "userId": ["u-fdcb54d7-xxxx-xxxx-xxxx-xxxxxxxxxxxx"],
    "sessionId": ["6a659131c05xxxxxxxxxxxxxxxxxxxx"],
    "score": {
    "min": 3,
    "max": 8
  }
  },
  "sort": {
    "order": "desc",
    "by": "timestamp"
  },
  "limit": 50,
  "skip": 0
}'
```

## Request Body Parameters

| Parameter             | Type    | Required | Description                                                                                                                                                                          |
| --------------------- | ------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `filters`             | Object  | Yes      | Defines the criteria used to filter survey responses.                                                                                                                                |
| `filters.from`        | String  | Yes      | Start date and time for the survey response search range. A single API call supports querying up to 90 days of data and retrieving up to 50 records. Format: ISO 8601 Date and Time. |
| `filters.to`          | String  | Yes      | End date and time for the survey response search range. A single API call supports querying up to 90 days of data and retrieving up to 50 records. Format: ISO 8601 Date and Time.   |
| `filters.surveyType`  | String  | No       | Type of survey to retrieve responses for. Supported values include `csat`, `nps`, and `ces`.                                                                                         |
| `filters.surveyName`  | String  | No       | Name of the survey.                                                                                                                                                                  |
| `filters.channel`     | Array   | No       | List of channels from which survey responses were collected. To pass multiple values, enter values using comma inside the array bracket. example: \[`rtm`, `nps`]                    |
| `filters.channelUIds` | Array   | No       | Channel-specific user identifiers associated with the survey responses. To pass multiple values, enter values using comma inside the array bracket.                                  |
| `filters.userId`      | Array   | No       | Unique user identifiers associated with the survey responses. To pass multiple values, enter values using comma inside the array bracket.                                            |
| `filters.sessionId`   | Array   | No       | Session identifiers for the conversations associated with the survey responses. To pass multiple values, enter values using comma inside the array bracket.                          |
| `filters.score`       | Object  | No       | Defines the score range used to filter survey responses.                                                                                                                             |
| `filters.score.min`   | Number  | No       | Minimum survey score to include in the results.                                                                                                                                      |
| `filters.score.max`   | Number  | No       | Maximum survey score to include in the results.                                                                                                                                      |
| `sort`                | Object  | No       | Defines the sorting criteria for the response data.                                                                                                                                  |
| `sort.order`          | String  | No       | Sort order for the results. Supported values are `asc` and `desc`.                                                                                                                   |
| `sort.by`             | String  | No       | Field used to sort the results, such as `timestamp`.                                                                                                                                 |
| `limit`               | Integer | No       | Maximum number of survey responses to return in a single request. A single API call supports querying up to 90 days of data and retrieving up to 50 records.                         |
| `skip`                | Integer | No       | Number of records to skip before returning results. Used for pagination.                                                                                                             |

## Sample Response

```json theme={null}
{
  "moreAvailable": false,
  "totalCount": 28,
  "result": [
    {
      "_id": "6a72d7805b********5bcbbf",
      "surveyName": "nps survey",
      "surveyType": "NPS",
      "userId": "u-157acd3b-e2c*******a8c0-fc099d802aa3",
      "channelUId": "john.doe@example.com",
      "sessionId": "6a72d767*******17404a7a",
      "channel": "rtm",
      "language": "en",
      "score": 10,
      "comments": null,
      "timestamp": "2026-08-05T06:26:08.580Z"
    }
  ]
}
```

## Response Body Parameters

| Parameter           | Description                                                                             | Type    |
| ------------------- | --------------------------------------------------------------------------------------- | ------- |
| `moreAvailable`     | Indicates whether additional records are available.                                     | Boolean |
| `totalCount`        | Total number of survey responses that match the filter criteria.                        | Integer |
| `result`            | List of survey response records.                                                        | Array   |
| `result._id`        | Unique identifier of the survey response.                                               | String  |
| `result.surveyName` | Name of the survey.                                                                     | String  |
| `result.surveyType` | Survey type. Examples: `NPS`, `CSAT`, `Like/Dislike`.                                   | String  |
| `result.userId`     | Unique identifier of the user who submitted the survey.                                 | String  |
| `result.channelUId` | Channel-specific user identifier.                                                       | String  |
| `result.sessionId`  | Conversation session identifier associated with the survey response.                    | String  |
| `result.channel`    | Channel through which the survey was submitted.                                         | String  |
| `result.language`   | Language associated with the survey response.                                           | String  |
| `result.score`      | Survey score submitted by the user.                                                     | Integer |
| `result.comments`   | Additional comments provided by the user. Returns `null` if no comments were submitted. | String  |
| `result.timestamp`  | Timestamp when the survey response was submitted.                                       | String  |
