WizzyTools

Validate JSON against a JSON Schema

Works offline · never uploaded

Paste a JSON document and a JSON Schema to see every validation error with its instance path. Supports draft 2020-12 and draft-07, entirely in your browser.

Updated

/ 5 - Be the first to rate this tool Thanks for rating!

Verification failed - please try again.

The document is valid against the schema.

How it works

  1. 1

    Paste the JSON document.

  2. 2

    Paste the JSON Schema.

  3. 3

    Read the result and any listed errors.

  4. 4

    Fix the document or schema and check again.

About the JSON Schema Validator

A JSON Schema describes what a valid document looks like: required fields, types, allowed values and formats. Checking real data against it catches broken API payloads and config files before they reach production. This validator checks a JSON document against your schema in the browser and lists every failure with a JSON Pointer path, so you can see exactly which field broke which rule.

What you can do

  • Validate as you type and see either a valid confirmation or a numbered list of errors.
  • Find each problem by its path, such as /items/2/price, with a plain message like must be >= 0.
  • Use type, enum, const, number limits, string length and pattern, array rules and object rules such as required and additionalProperties.
  • Combine schemas with allOf, anyOf, oneOf, not and if, then, else.
  • Reuse definitions with local $ref pointers, with draft-04 to draft-07 $ref behaviour when the $schema says so.

When it works best

  • Checking a webhook or API payload against the schema in your OpenAPI documentation.
  • Testing a schema you are writing against good and bad example documents.
  • Finding which field in a large config file fails a CI validation step.

Things to know

  • Both documents stay in your browser.
  • Only local $ref values starting with # are resolved; references to other files or URLs are rejected.
  • The format keyword, such as email or date-time, is not checked, and some newer keywords like unevaluatedProperties and dependentRequired are ignored.
  • For syntax errors alone, the JSON Formatter is quicker. To create types from a sample, use JSON to TypeScript/PHP.

Frequently asked questions

Each failure lists a JSON Pointer path, such as /items/2/price, and a plain message.

No, only local references starting with # are supported.

No. Formats like email and date-time are ignored, as are unevaluatedProperties and dependentRequired.

allOf, anyOf, oneOf, not and if, then, else.