Skip to main content
A session represents one respondent’s traversal through a form. Sessions are created when a respondent starts a form and completed when they reach an End screen.

List sessions (authenticated)

Returns paginated sessions for a form. Query parameters Response

Get session detail (authenticated)

Returns the full session including all answers and the traversal path. Response

Export sessions as CSV (authenticated)

Streams a CSV file. Supports the same query parameters as the list endpoint. Returns Content-Type: text/csv and a Content-Disposition: attachment header.

Public respondent API

These endpoints are open — no authentication required. They are used by the form renderer to run a live session.

Get a published form

Returns the current published form graph and theme snapshot. Used to initialise the form renderer. Response

Start a session

Creates a new session and returns the first node to display. Response

Submit an answer

Submits an answer for the current node and returns the next node to display. Request body
Response
When is_complete is true, the session has reached an End node. Call complete/ to finalise it.

Complete a session

Marks the session as completed and triggers any connected integrations. Returns 200 OK.

Next steps

Responses

Individual node-level answer endpoints.

Integrations

Manage form integrations via API.