---
title: "Update a form"
method: PUT
path: "/api/forms/{formId}"
tags: ["Forms"]
---

# Update a form

`PUT /api/forms/{formId}`

Updates a form.

## Path parameters

- `formId` integer, required

## Request body

- UpdateFormRequest — Request model for updating a form.
  - `name` string, required — The name of the form.
  - `description` string, nullable — The description of the form.
  - `isEnabled` boolean, required — Indicates if the form is enabled.
  - `webHookSettingsJson` string, nullable — The JSON data containing webhook configuration settings for this form.

## Response `200`

Form updated successfully.

- UpdateFormResponse — Response model for updating a form.
  - `id` string, nullable — The ID of the form.
  - `name` string, nullable — The name of the form.
  - `description` string, nullable — The description of the form.
  - `isEnabled` boolean — Indicates if the form is enabled.
  - `themeId` string, nullable — The ID of the theme associated with the form.
  - `createdAt` string, date-time — The date and time when the form was created.
  - `modifiedAt` string, date-time, nullable — The date and time when the form was last modified.
  - `submissionsCount` integer, nullable — The total number of submissions for the form
  - `webHookSettingsJson` string, nullable — The JSON data containing webhook configuration settings for this form as a string.
  - `webHookSettings` unknown

## Other responses

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

## Changes

- **2025-11-21** `50eff5014b78` — 1 breaking, 4 info
  - removed the media type `application/problem+json` for the response with the status `400`
  - added the new optional request property `webHookSettingsJson`
  - added the optional property `allOf[#/components/schemas/FormModel]/themeId` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/FormModel]/webHookSettings` to the response with the `200` status
  - …1 more
- **2025-03-24** `fbc3fe6ecbf1` — 4 warning, 1 info
  - removed the request property `webHookSettingsJson`
  - removed the optional property `allOf[#/components/schemas/FormModel]/themeId` from the response with the `200` status
  - removed the optional property `allOf[#/components/schemas/FormModel]/webHookSettings` from the response with the `200` status
  - removed the optional property `allOf[#/components/schemas/FormModel]/webHookSettingsJson` from the response with the `200` status
  - …1 more

[Change history](https://skmtc.dev/endatix/apis/endatix-platform-rest-api/changes/api/forms/:formId/put.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)
