JSON Schema Validator checks whether a JSON document conforms to a JSON Schema and pinpoints every failure. Instead of a single pass/fail, it lists each violation with a JSON Pointer path and a human-readable reason, so debugging a large payload is quick. It implements the core validation keywords shared by draft-07 and draft 2020-12, and runs entirely in your browser.
How it works
Validation walks the schema and the data together, starting at the root with the JSON Pointer "". At each node the validator applies the keywords present in the schema:
- type / enum / const — checks the value’s JSON type or membership in a fixed set.
- Numeric —
minimum,maximum,exclusiveMinimum,exclusiveMaximum. - String —
minLength,maxLength, andpattern(a regular expression). - Object —
required,properties,additionalProperties,minProperties,maxProperties. Each property recurses with its key appended to the pointer. - Array —
items(applied to every element, with the index appended to the pointer),minItems,maxItems,uniqueItems. - Combinators —
allOf,anyOf,oneOf, andnotaggregate sub-results.
Every failure pushes an entry holding the pointer and the reason, and the collected list is shown at the end.
Tips and notes
Because the validator does not fetch remote $ref targets, inline the full schema for complete coverage — this keeps the tool offline and your data private. The type keyword follows the JSON model: integer demands a whole number, null is its own type, and arrays are not objects. Try the bundled example, then tweak the document to see the pointer paths update as new errors appear.