---
title: "Partially update a form definition"
method: PATCH
path: "/api/forms/{formId}/definitions/{definitionId}"
tags: ["Forms"]
---

# Partially update a form definition

`PATCH /api/forms/{formId}/definitions/{definitionId}`

Partially updates a form definition for a given form.

## Path parameters

- `formId` integer, required
- `definitionId` integer, required

## Request body

- PartialUpdateFormDefinitionRequest — Request model for partially updating a form definition.
  - `isDraft` boolean, nullable — Indicates if the form definition is a draft.
  - `jsonData` string, nullable — The JSON data of the form definition.

## Response `200`

Form definition updated successfully.

- PartialUpdateFormDefinitionResponse — Response model for partially updating a form definition.
  - `id` string, nullable — The ID of the form definition.
  - `isDraft` boolean — Indicates if the form definition is a draft.
  - `jsonData` string, nullable — The JSON data of the form definition.
  - `formId` string, nullable — The ID of the associated form.
  - `createdAt` string, date-time — The date and time when the form definition was created.
  - `modifiedAt` string, date-time, nullable — The date and time when the form definition was last modified.
  - `themeModel` string, nullable — The model of the associated theme stored as a stringified JSON object.
  - `customQuestions` string[], nullable — The list of custom questions' JSON data associated with this form definition.
  - `requiresReCaptcha` boolean, nullable — Indicates if reCAPTCHA is enabled for this form definition.

## Other responses

- `400` — Invalid input data.
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Form definition or form not found.

## Changes

- **2025-11-21** `50eff5014b78` — 1 breaking, 3 info
  - removed the media type `application/problem+json` for the response with the status `400`
  - added the optional property `allOf[#/components/schemas/FormDefinitionModel]/customQuestions` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/FormDefinitionModel]/requiresReCaptcha` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/FormDefinitionModel]/themeModel` to the response with the `200` status
- **2025-03-24** `fbc3fe6ecbf1` — 3 warning, 1 info
  - removed the optional property `allOf[#/components/schemas/FormDefinitionModel]/customQuestions` from the response with the `200` status
  - removed the optional property `allOf[#/components/schemas/FormDefinitionModel]/requiresReCaptcha` from the response with the `200` status
  - removed the optional property `allOf[#/components/schemas/FormDefinitionModel]/themeModel` from the response with the `200` status
  - added the media type `application/problem+json` for the response with the status `400`

[Change history](https://skmtc.dev/endatix/apis/endatix-platform-rest-api/changes/api/forms/:formId/definitions/:definitionId/patch.md)

---

[API](https://skmtc.dev/endatix/apis/endatix-platform-rest-api.md) · [All operations](https://skmtc.dev/endatix/apis/endatix-platform-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/endatix/endatix-platform-rest-api/revisions/01bd299fd100/schema)
