JSON Schema Validator
Validate a JSON document against a JSON Schema and see every violation with its path.
What is a JSON Schema Validator?
A JSON Schema validator checks a real JSON document against a JSON Schema — the same kind of schema produced by our JSON Schema Generator — and reports exactly which fields violate which rules. This is the natural next step after generating or writing a schema: confirm that a real API response, config file, or test fixture actually conforms to it.
This tool uses Ajv, the most widely used JSON Schema validator in the JavaScript ecosystem, and supports both Draft-07 and 2020-12 — it reads the $schema field on your schema and picks the matching engine automatically, defaulting to Draft-07 when the field is missing.
Every violation is reported with a JSON pointer path (e.g. /address/zip) pointing to the exact location in your document, and a human-readable message describing what went wrong — not just the first failure, but every one at once. A malformed schema and a malformed document are treated as separate, clearly labeled error states, so it's always obvious which side of the comparison broke.
Everything runs locally in your browser. Neither your schema nor your document is ever uploaded to a server.
Why Validate Against a Schema?
API Contract Testing
Confirm a real API response matches the documented contract before it reaches consumers or breaks a downstream integration.
CI Validation
Check fixtures, sample payloads, or exported data against a schema as part of a review, without writing custom assertion code.
Debugging Bad Data
When something downstream chokes on a payload, validate it against the expected schema to see precisely which field is the problem.
Schema Review
After writing or generating a schema, run a few known-good and known-bad documents through it to confirm the rules behave the way you intended.
Example
A schema requiring id, name, and email, checked against a document with three separate problems — a wrong type, a missing required field, and a value outside its allowed range.
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"id": { "type": "integer" },
"name": { "type": "string" },
"email": { "type": "string", "format": "email" },
"age": { "type": "integer", "minimum": 0 }
},
"required": ["id", "name", "email"]
}{
"id": "42",
"name": "Ada Lovelace",
"age": -5
}Features
Draft-07 & 2020-12
Detects the draft from your schema's $schema field and validates with the matching Ajv engine.
Full Violation List
Every failing rule is reported, not just the first — each with its JSON pointer path.
Distinct Error States
A broken schema, a broken document, and a failing validation are labeled differently.
Nested Path Reporting
Violations inside nested objects and arrays point to the exact field, e.g. /address/zip.
Fast, Client-Side
Ajv compiles your schema into a validator function, so even large documents stay smooth.