Skip to main content
All authenticated endpoints require Authorization: Bearer <api_key>.

List forms

Returns a paginated list of all forms owned by the authenticated user. Response

Create a form

Request body
A slug is auto-generated. Returns the created form object.

Get a form

Returns full form details including theme and response count. Response

Update a form

Updates form metadata. Accepts any subset of writable fields. Request body

Delete a form

Soft-deletes the form (sets is_active = false). Returns 204 No Content.

Save a draft

Overwrites the form’s current draft with a new graph. Only one draft exists per form at any time. Request body
Response

Publish a form

Validates the current draft and creates an immutable FormVersion. Returns the new version number. Response
Returns 400 if the draft fails validation (e.g. disconnected nodes, missing entry node).

List versions

Response

Get a version

Returns the immutable graph snapshot for a specific published version. Published versions are never modified.

Next steps

Sessions

Read respondent sessions and their traversal paths.

Responses

Read individual question answers.