ResponseDock Docs
Menu

Surveys API

Endpoints

GET/workspaces/:wid/surveysList surveys in workspace
POST/workspaces/:wid/surveysCreate a new survey
GET/surveys/:idGet a survey by ID
PATCH/surveys/:idUpdate survey settings
DELETE/surveys/:idDelete a survey
POST/surveys/:id/publishPublish the current draft
GET/surveys/:id/versionsList all versions
GET/surveys/:id/export.csvExport responses as CSV
GET/surveys/:id/export.xlsxExport responses as XLSX
GET/surveys/:id/export.pdfExport a branded PDF report
GET/surveys/:id/export.zipExport responses with all uploaded files as a ZIP
GET/surveys/:id/follow-up-contacts.csvExport follow-up contacts

Survey Object

{
  "id":               "survey_xxxx",
  "workspaceId":      "ws_xxxx",
  "title":            "Post-event feedback",
  "slug":             "post-event-feedback",
  "description":      null,
  "status":           "online",
  "activeVersionId":  "ver_xxxx",
  "defaultLanguage":  "en",
  "languages":        ["en", "de"],
  "anonymityMode":    "anonymous",
  "sourceTrackingMode": "basic",
  "startDate":        null,
  "endDate":          null,
  "createdAt":        "2024-11-14T10:00:00Z",
  "updatedAt":        "2024-11-14T12:30:00Z"
}

Create a Survey

POST /workspaces/:wid/surveys

{
  "title": "Customer NPS",
  "description": "How likely are you to recommend us?",
  "defaultLanguage": "en",
  "anonymityMode": "anonymous"
}

// 201 Created
{
  "id": "survey_yyyy",
  "status": "draft",
  ...
}

Update a Survey

PATCH /surveys/:id

{
  "title": "Updated title",
  "status": "paused",
  "endDate": "2024-12-31T23:59:59Z"
}

Publish

POST /surveys/:id/publish

// 200 OK — returns updated survey with new version ID
{
  "id": "survey_xxxx",
  "status": "online",
  "activeVersionId": "ver_new"
}

Export Responses as CSV

GET /surveys/:id/export.csv?status=completed

// Returns CSV file download

Export Responses as XLSX

GET /surveys/:id/export.xlsx

    // Returns an Excel workbook download with summary and responses sheets

Export Branded PDF

GET /surveys/:id/export.pdf

    // Returns a branded PDF report download

Export Responses with Files as ZIP

GET /surveys/:id/export.zip

    // Returns a ZIP with responses.xlsx and one folder per response,
    // named <datetime>_<last name>_<first name>, holding its uploaded files

Exports never include hidden responses. Add ?status=completed to any export (CSV, XLSX, PDF or ZIP) to leave out responses that were started but not submitted. Exports always cover every response to the survey; there are no version or date-range filters.