---
title: "Get all survey responses"
method: GET
path: "/engagement/surveys/{surveyId}/responses"
tags: ["Engagement Survey"]
---

# Get all survey responses

`GET /engagement/surveys/{surveyId}/responses`

## Request

- Base URL: `https://api.gleap.io/v3`
- URL: `https://api.gleap.io/v3/engagement/surveys/{surveyId}/responses`
- Auth: HTTP bearer

Get the responses of a survey, unread first, then newest first. Supports `skip`, `limit` (defaults to
1000 when omitted; supplied values above 100 are clamped to 100) and field filters via query parameters.

Surveys 2.0: with `v=2` or any of `cursor`, `status` (comma list), `from`, `to` (YYYY-MM-DD), `version`,
`filter[<key>]=<value|min..max|a-b>`, `theme`, `channel`, `contactUserId`, `q`, `legacyTicket` the
response is `{ items, nextCursor?, total? }` (newest first, `limit` ≤ 50). Without them a v2 survey
answers the legacy array (`_id`, `formData` = answers by key, `session`, `createdAt`, `updatedAt`).

## Path parameters

- `surveyId` string, required

## Headers

- `project` string, required

## Response `200`

Ok

- unknown

---

[API](https://skmtc.dev/gleap/apis/gleap-server.md) - [All operations](https://skmtc.dev/gleap/apis/gleap-server/llms.txt) - [OpenAPI document](https://skmtc.dev/gleap/apis/gleap-server/revisions/3b025e883cef?raw)
