Skip to content

surveys

Workforce module · 6 operations

List survey rows

GET/surveys

A pulse survey for an audience, anonymous by default, with results only once the minimum number of responses is met. Returns a cursor page of survey rows the caller may see. The default order is `created_at` ascending. Supports sparse fieldsets and the filter grammar.

Get a survey

GET/surveys/{id}

A pulse survey for an audience, anonymous by default, with results only once the minimum number of responses is met. Returns one survey with its `ETag`. A survey the caller may not see returns 404.

Draft a survey

POST/surveys/draft

Drafts a pulse survey with its questions. Requires `Idempotency-Key`; a replay returns the original response. A rule that refuses the request returns 422 with `refusal` and `reason`.

Open or close a survey

POST/surveys/{id}/transition

Opens a draft survey (notifying its audience) or closes an open one. Requires `Idempotency-Key`; a replay returns the original response. A rule that refuses the request returns 422 with `refusal` and `reason`.

Respond to a survey

POST/surveys/{id}/respond

Responds once with answers keyed by question id. Anonymous answers carry no respondent. Requires `Idempotency-Key`; a replay returns the original response. A rule that refuses the request returns 422 with `refusal` and `reason`.

Survey results

GET/surveys/{id}/results

Results, shown only once the minimum number of responses is met. A rule that refuses the request returns 422 with `refusal` and `reason`.