Skip to main content
PATCH
cURL
Use PATCH for partial updates. To rename a questionnaire, send only title or description.
To update questions, send the full desired form_elements array. This replaces the previous question list. Keep any existing questions you still want to show.
The v3 API only supports simple linear questionnaires. It rejects graph, branches, next, and conditional rules. The response includes questionnaire_id. When you update a published questionnaire, the API may create a new version. Capture the returned questionnaire_id and use it in workflows instead of assuming the id in the URL is still the latest version.

Authorizations

x-api-key
string
header
required

Path Parameters

questionnaire_uuid
string<uuid>
required

Per-version UUID of the questionnaire to update.

Body

application/json

Update questionnaire metadata or replace the full linear form_elements list.

title
string
description
string | null
languages
string[]
default_language
string
is_active
boolean
status
enum<string>
Available options:
draft,
published
form_elements
object[]

If provided, this replaces the full linear question list.

Minimum array length: 1

Response

Questionnaire updated. The body is the latest state of the resulting version — the in-place updated version, or the newly created published version when you sent status: "published" on a published row (in that case questionnaire_id and version differ from the ones you patched). questionnaire_id in the response is the per-version UUID; use questionnaire_group_id if you need the stable group identifier.

Full questionnaire detail returned from GET, POST (create) and PATCH (update) endpoints.

questionnaire_id
string<uuid>

Unique identifier of the questionnaire. Use this id when referencing the questionnaire from a workflow or in subsequent update/delete requests.

title
string
description
string | null
languages
string[]
default_language
string
is_active
boolean
is_simple_questionnaire
boolean
graph
object

Graph structure with start_node and nodes map.

sections
object[]

Questionnaire content grouped into sections (derived from the graph).

questionnaire_group_id
string<uuid>

Stable identifier that groups all versions of the same questionnaire.

version
integer
status
enum<string>
Available options:
draft,
published
published_at
string<date-time> | null
is_editable
boolean

True when the questionnaire can still be edited in place (draft versions).