JSON Schema Validator
Validate a JSON document against a JSON Schema. Draft auto-detected from the schema's $schema key — override if absent. Every error includes its data path, the failing keyword, expected vs actual, and a one-sentence explanation.
Paste schema and data.
How to validate
- Paste Schema in the top panel and Data in the bottom panel (or vice versa — use Swap).
- The draft is auto-detected from the schema's
$schemakey; override under Draft if missing. - The verdict appears as a coloured banner. For invalid input, every error is listed with: path in the data, keyword that failed (
type,required,pattern, …), expected, actual, and a one-sentence English explanation. - All errors vs First error toggle controls verbosity.
- Copy errors as Markdown for ticket-friendly reports.
FAQ
Why does Ajv reject my schema?
The most common cause is a draft mismatch. If you wrote a 2019-09 schema and have draft-07 keywords (oneOf with sibling fields, etc.), it fails. Set the draft explicitly.
What about external $ref?
The validator doesn't fetch external $ref URLs (browser CORS would block them anyway). Inline the referenced schema, or use $defs.
Will it work offline?
Yes — Ajv is cached after first load.