---
title: "Create a new form"
method: POST
path: "/api/forms"
tags: ["Forms"]
---

# Create a new form

`POST /api/forms`

Creates a new form and an active form definition for it.

## Request body

- CreateFormRequest — Request model for creating a form with an active form definition.
  - `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.
  - `formDefinitionJsonData` string, nullable — The JSON data of the active form definition as a string.
  - `formDefinitionSchema` unknown
  - `webHookSettingsJson` string, nullable — The JSON data containing webhook configuration settings for this form as a string.
  - `webHookSettings` unknown

## Response `201`

Form created successfully.

- CreateFormResponse — Response model for creating 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

## Changes

- **2025-11-21** `50eff5014b78` — 1 breaking, 9 info
  - removed the media type `application/problem+json` for the response with the status `400`
  - added the new optional request property `formDefinitionSchema`
  - added the new optional request property `webHookSettings`
  - added the new optional request property `webHookSettingsJson`
  - …6 more
- **2025-03-24** `fbc3fe6ecbf1` — 2 breaking, 6 warning, 2 info
  - the request property `formDefinitionJsonData` became not nullable
  - the request property `formDefinitionJsonData` became required
  - removed the request property `formDefinitionSchema`
  - removed the request property `webHookSettings`
  - …6 more

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