New to Corsair? See API access, authentication, and error handling.
Projects
get
projects.get
Read one project by ID
Risk: read
The project ID comes from Settings > Integrations > API. No endpoint lists projects, so this is the only way to read one.
Output
project full type
project full type
Responses
list
responses.list
List responses from every survey in a project, paged by cursor
Risk: read
Every response in the project across all its surveys. Defaults to the last 30 days and 20 rows per page; pass
startDate for older data and pageCursor to continue.
Output
responses full type
responses full type
page full type
page full type
listForSurvey
responses.listForSurvey
List one survey’s responses, paged by cursor
Risk: read
One survey\u2019s responses, with the same date-range and cursor paging.
Output
responses full type
responses full type
page full type
page full type
Surveys
get
surveys.get
Read one survey by ID
Risk: read
Reads one survey by ID.
Output
survey full type
survey full type
list
surveys.list
List the surveys in a project with their template and state
Risk: read
The API calls these campaigns internally; this operation is the surveys in a project with their template (
nps, ces, csat, pmf, custom) and state (live, paused, draft).
Output
surveys full type
surveys full type
statistics
surveys.statistics
Read response counts, display counts and the metric per question for one survey
Risk: read
Counts responses and displays with a response rate, plus a per-question breakdown: an answers count per choice, and the metric (NPS, CSAT, CES or PMF) with its value. A
long-text question carries a count and no per-value breakdown.
Output
statistics full type
statistics full type
questions full type
questions full type
Users
list
users.list
List the users in a project, or look one up by userId
Risk: read
Every user in the project, or one user when
userId is given: the API still answers a list, holding one entry or none.
Output
users full type
users full type
remove
users.remove
Delete a user’s personal data by internal id; their responses are anonymised, not deleted
Risk: destructive · Irreversible
Takes the internal
id from users.list, not your own userId. It deletes personal data and anonymises the user\u2019s responses rather than deleting them, and cannot be undone. An unknown id answers 404 User not found.
Output
track
users.track
Record a user event that survey targeting can match on; each call counts once
Risk: write
Records an event that survey targeting can match on. Each call counts as one event, so it is never retried automatically. Returns 204 with no body, and the event cannot be read back: the
events list in users.list holds survey activity, not tracked events.
Output
upsert
users.upsert
Create or update a user and their traits, and optionally set the date they next see a survey
Risk: write
Creates the user if they do not exist and updates their traits.
surveyDate sets when the user next sees a survey, which is how you survey someone earlier or later than their targeting rules would.
Output