---
title: "Deep Validates a Json Form"
method: POST
path: "/json-forms/validate"
tags: ["JSON Forms"]
---

# Deep Validates a Json Form

`POST /json-forms/validate`

## Request

- Base URL: `https://example.itential.io`
- URL: `https://example.itential.io/json-forms/validate`
- Auth: none declared

Validates a form to ensure no UI-based rules are ignored on create/update endpoints

## Request body

- object
  - `asset` JsonFormsValidatePostRequestBodyContentApplicationJsonSchemaAsset
    - `name` string
    - `description` string
    - `struct` JsonFormsFormStruct
      - `nodeId` string
      - `projectId` string
      - `type` string, required
      - `items` JsonFormsFormStructItemsItems[], required
        - union
          - JsonFormsFormStructItemsItems0
            - `nodeId` string, required
            - `type` string, required
            - `title` string, required
            - `required` union
              - …
            - `options` JsonFormsFormStructItemsItemsOneOf0Options
            - `description` string
            - `helper` string
            - `items` JsonFormsFormStructItemsItemsOneOf0ItemsItems[], required
              - …
            - `collapsed` boolean
            - `readOnly` boolean
            - `schemaOption` boolean
            - `combinationType` string
            - `widget` string
            - `uniqueItems` boolean
            - `minItems` number, double
            - `maxItems` number, double
            - `customKey` union
              - …
          - JsonFormsFormStructItemsItems1
            - `nodeId` string, required
            - `customKey` union
              - …
            - `type` 'boolean', required
            - `required` boolean
            - `options` JsonFormsFormStructItemsItemsOneOf1Options
            - `title` string, required
            - `description` string, required
            - `helper` string
            - `default` boolean
            - `enum` JsonFormsFormStructItemsItemsOneOf1EnumItems[]
              - …
            - `readOnly` boolean
            - `widget` string
          - JsonFormsFormStructItemsItems2
            - `customKey` union
              - …
            - `nodeId` string, required
            - `type` 'number', required
            - `widget` string
            - `options` JsonFormsFormStructItemsItemsOneOf2Options
            - `title` string, required
            - `description` string, required
            - `helper` string
            - `placeholder` string, required
            - `required` boolean, required
            - `validation` union
              - …
            - `readOnly` boolean
            - `minimum` number, double, nullable
            - `maximum` number, double, nullable
            - `default` number, double, nullable
            - `disabled` boolean
          - JsonFormsFormStructItemsItems3
            - `nodeId` string, required
            - `type` 'string', required
            - `customKey` union
              - …
            - `title` string, required
            - `options` JsonFormsFormStructItemsItemsOneOf3Options
            - `description` string, required
            - `helper` string
            - `placeholder` string, required
            - `required` boolean, required
            - `pattern` string
            - `validation` union
              - …
            - `readOnly` boolean
            - `binding` boolean
            - `rel` string
            - `targetPointer` string
            - `format` string
            - `minLength` integer
            - `maxLength` integer
            - `default` string
            - `disabled` boolean
          - JsonFormsFormStructItemsItems4
            - `customKey` union
              - …
            - `nodeId` string, required
            - `type` 'string', required
            - `widget` string
            - `title` string, required
            - `options` JsonFormsFormStructItemsItemsOneOf4Options
            - `description` string, required
            - `helper` string
            - `placeholder` string, required
            - `required` boolean, required
            - `pattern` string
            - `validation` union
              - …
            - `readOnly` boolean
            - `format` string
            - `minLength` integer
            - `maxLength` integer
            - `default` string
            - `disabled` boolean
          - JsonFormsFormStructItemsItems5
            - `nodeId` string, required
            - `type` string, required
            - `customKey` union
              - …
            - `title` string, required
            - `options` JsonFormsFormStructItemsItemsOneOf5Options
            - `description` string, required
            - `helper` string
            - `placeholder` string
            - `required` boolean, required
            - `enum` JsonFormsFormStructItemsItemsOneOf5EnumItems[]
              - …
            - `enumNames` JsonFormsFormStructItemsItemsOneOf5EnumNamesItems[]
              - …
            - `binding` boolean
            - `pattern` string
            - `rel` string
            - `targetPointer` string
            - `method` string, nullable
            - `body` JsonFormsFormStructItemsItemsOneOf5Body
            - `sourcePointer` string, nullable
            - `sourceKeyPointer` string, nullable
            - `labelKeyPointer` string, nullable
            - `base` string, nullable
            - `href` string, nullable
            - `validation` union
              - …
            - `readOnly` boolean
            - `transformation` union
              - …
            - `disabled` boolean
            - `default` union
              - …
            - `widget` string
            - `radio` boolean
            - `inline` boolean
          - JsonFormsFormStructItemsItems6
            - `nodeId` string, required
            - `type` 'string', required
            - `title` string, required
            - `description` string, required
            - `helper` string
            - `required` boolean
            - `format` 'data-url'
            - `customKey` union
              - …
    - `schema` JsonFormsFormSchemaContainer
      - `_id` string
      - `uniqueItems` boolean
      - `minItems` number, double
      - `maxItems` number, double
      - `type` string, required
      - `title` string, required
      - `description` string
      - `required` string[]
      - `readOnly` boolean
      - `options` JsonFormsFormSchemaContainerOptions
      - `properties` JsonFormsFormSchemaContainer (recursive)
      - `items` JsonFormsFormSchemaContainerItems
      - `anyOf` JsonFormsFormSchemaContainerItems[]
      - `oneOf` JsonFormsFormSchemaContainerOneOfItems[]
      - `allOf` JsonFormsFormSchemaContainerItems[]
    - `uiSchema` JsonFormsFormUISchemaContainer
    - `bindingSchema` JsonFormsFormBindingSchemaBindingSchema
    - `validationSchema` JsonFormsFormValidationSchemaValidationSchema

## Response `200`

Validation result: { isValid, errors, warnings }

- JsonFormsDeepValidationResponse200
  - `isValid` boolean: Whether formData passed every deep-validation check.
  - `errors` JsonFormsValidatePostResponsesContentApplicationJsonSchemaErrorsItems[]: Errors found, each shaped { path, message }. Empty when isValid is true.
    - `path` string
    - `message` string
  - `warnings` JsonFormsValidatePostResponsesContentApplicationJsonSchemaWarningsItems[]: Non-blocking issues found, each shaped { path, message }.
    - `path` string
    - `message` string

## Other responses

- `500`: Error response from API

## Changes

- **2026-10-31** `2095cc90e583`: 2 info
  - api tag `JSON Forms` added
  - api tag `jsonForms` removed

[Operation history](https://skmtc.dev/itential/apis/itential-2/changes/json-forms/validate/post.md)

---

[API](https://skmtc.dev/itential/apis/itential-2.md) - [All operations](https://skmtc.dev/itential/apis/itential-2/llms.txt) - [OpenAPI document](https://skmtc.dev/itential/apis/itential-2/revisions/2095cc90e583?raw)
