Skip to main content
CuteJSON
↑↓ Navigate Enter Select Esc Close

JSON Schema Validator

Check a JSON document against a JSON Schema and see every mismatch, each with the keyword that rejected it and the path to the value.

Back to all tools

Keyboard shortcuts

These work wherever the matching action exists on this page.

Open the command palette
Ctrl/Cmd + K
Run the main action
Ctrl/Cmd + Enter
Format
Ctrl/Cmd + Shift + F
Minify
Ctrl/Cmd + Shift + M
Copy output
Ctrl/Cmd + Shift + C
Open file
Ctrl/Cmd + Shift + O
Download output
Ctrl/Cmd + S
Close this dialog
Esc
Open this dialog
F1 / ?

Local data

Everything below is stored only in this browser, on this device. None of it is ever sent anywhere, and closing this dialog is not required for that to stay true.

Unsaved drafts
Tools with remembered options

Recently opened files

    No files opened yet on this device.

    Share via link

    The content is packed into the part of the link after the # sign, which browsers never send to a server. Nothing here is uploaded to cutejson.com or anywhere else.

    Shares the first input on this page. On a tool with more than one, only that one is included.

    Nothing to share yet. Paste or type something first.

    Schema

    Load from a URL

    Fetches the URL directly from your browser and loads whatever text it returns into this pane.

    Document

    Load from a URL

    Fetches the URL directly from your browser and loads whatever text it returns into this pane.

    Runs entirely in your browser. Nothing you paste is uploaded, and you can confirm that in your browser Network tab.

    About this tool

    This validator covers the subset the schema generator on this site writes, so a schema produced here is a schema this page can apply: type, enum and const, the properties, patternProperties, additionalProperties, required, propertyNames, dependentRequired and dependentSchemas keywords, length, pattern and format on strings, bounds and multiples on numbers, items and uniqueItems on arrays, the allOf, anyOf, oneOf and not combinators, if-then-else, and local references through $defs or definitions. Keywords it does not implement are treated as annotations and ignored, which is what JSON Schema permits a validator to do. A reference that names nothing in the schema, or one that points outside it, stops the whole check and says so, because reporting a result for a schema that was never fully applied would be a lie. Every other failure is reported once, with the keyword that rejected it and a JSON pointer to the value, so a problem is a path you can walk to rather than a sentence you have to decode.

    How to use

    1. Paste a schema into the left pane. Loading the sample fills both panes, so you can change the document and see what the schema rejects.
    2. Paste the document to check into the right pane.
    3. Press Validate. Each problem is listed with the keyword that rejected it and the path to the value.

    Keep reading

    How to validate JSON against a JSON Schema Read the guide