Skip to content

Responses

Export a CSV file

POST/v1/submissions/export.csv

The whole export of a form's responses as one CSV file, with the same filters and sort as GET /v1/submissions. Each column is headed by its header text. The answer is the file itself, and Content-Disposition gives its name. A file bigger than 15 MB answers 413 too_large. For bigger files use POST /v1/exports, which prepares a file of any size in the background. See Export columns.

Body

JSON, with Content-Type: application/json.

  • formIdstringrequired

    The form whose responses to export.

  • statusenum

    complete for responses where the person finished the form, partial for the rest. Use state to tell people still filling it in from people who left.

    One of "partial", "complete"

  • stateenum

    started for people still filling in the form, left for people who left without finishing, finished for people who finished. See Response states.

    One of "started", "left", "finished"

  • endingIdstring

    Only finished responses that reached this ending. Use an ending id of the form, and pass formId too.

    1–64 chars

  • consentenum

    Only responses with this consent. agreed for people who agreed to be called and texted, not_agreed for people the form asked who haven't agreed, not_asked for forms with no consent field. See Consent.

    One of "agreed", "not_agreed", "not_asked"

  • fromnumber

    Only responses created at or after this time, in milliseconds since the epoch.

  • tonumber

    Only responses created before this time, in milliseconds since the epoch.

  • searchstring

    Words to find in the contact details or in any answer. It looks at the name, email and phone, the answers, the labels of picked options and file names. Every word must match, and case and accents don't matter. Digits also match phone numbers written in any format. With a search, each page checks limit responses and returns the ones that match. A page can be short or even empty while nextCursor is not null, so keep paging until it is null.

    max 200 chars

  • sortenum

    How to order the responses. createdAt is the default and sorts by when they were created. status puts left responses first, then started, then finished, and asc reverses that. ending sorts by the ending's name, with unfinished responses at one end. contact sorts by the person's name, or their email or phone when there's no name. Ties go by creation time. Every sort except createdAt needs formId.

    One of "createdAt", "status", "ending", "contact"

  • orderenum

    desc is the default. With the default sort, desc lists the newest responses first.

    One of "desc", "asc"

Response

200 with the file itself (text/csv), as a download.

Errors answer with a status and the error shape.