---
title: "List campaign poll responses"
method: GET
path: "/metrics/campaigns/{campaignId}/poll-responses"
tags: ["Analytics"]
---

# List campaign poll responses

`GET /metrics/campaigns/{campaignId}/poll-responses`

Returns one row per respondent per Poll or NPS block in a campaign, newest answer first, with the answer, its stored value, the subscriber attribute the answer was saved to, and the response time. Only each subscriber's latest answer per block is returned, so counts match the `polls` summaries from the campaign metrics endpoint. Multi-select answers list every selected option in `answers` and `values`. For a sequence email step, pass the step's automation node ID as `campaignId`. Also available at `GET /campaigns/{campaignId}/poll-responses`.

## Path parameters

- `campaignId` string, required

## Query parameters

- `blockId` string
- `page` integer
- `limit` integer

## Response `200`

Success

- object
  - `success` boolean
  - `campaignId` string
  - `blockId` string — Present only when a blockId filter was applied.
  - `responses` PollResponse[]
    - `subscriberId` string
    - `email` string, nullable — Null when the subscriber has since been deleted.
    - `externalId` string, nullable
    - `firstName` string, nullable
    - `lastName` string, nullable
    - `blockId` string — Poll block ID inside the email content.
    - `variant` 'options' | 'nps'
    - `question` string
    - `attributeKey` string, nullable — Subscriber attribute the answer was stored under.
    - `allowMultiple` boolean — Whether the poll accepted several selections.
    - `answers` string[] — Selected option labels. One entry, or several for a multi-select poll.
    - `values` string[] — Stored values parallel to `answers`.
    - `respondedAt` string, date-time
  - `pagination` Pagination
    - `page` integer
    - `limit` integer
    - `total` integer
    - `totalPages` integer

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `404` — Campaign not found
- `503` — The database was temporarily unavailable. The request may be retried after the delay in Retry-After.

---

[API](https://skmtc.net/sequenzy/apis/sequenzy-api.md) · [All operations](https://skmtc.net/sequenzy/apis/sequenzy-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sequenzy/sequenzy-api/revisions/ba3a29c6eb33/schema)
