JSON Schema Validator
Check a JSON document against its schema. See which instance paths fail, which schema rule was applied, and whether a format or required property needs attention.
$ref works; external schemas are not fetched.Need a starting schema? JSON Schema Generator →| Instance path | Keyword | Schema path | Message |
|---|
$ref URLs and project files are never fetched.Validate data against supported JSON Schema drafts
Use automatic dialect detection or choose a draft explicitly. Error paths point to the affected instance location and schema keyword.
Draft 2020-12Supports modern keywords including prefixItems, unevaluated properties and dynamic references within the supplied schema.Draft 2019-09 and Draft 7Auto mode reads a recognized $schema URI. If none is present, it defaults to Draft 2020-12.FormatsChecks common formats such as date, date-time, email, hostname, URI, IP address and UUID using a self-hosted formats plugin.Multiple errorsCollect all errors is enabled by default; turn it off for a first-error, quicker result on complex data.Local validation, without remote schema loading
JSON data and the schema are parsed and validated in a local Web Worker with self-hosted Ajv 8.20.0 and format checks. The tool does not upload or save either input, fetch remote $ref resources, or apply schema defaults or type coercion.
Each input is limited to 512 KiB and both together to 1 MiB. At most 200 validation issues are displayed; if more exist, the report indicates how many were omitted. Custom keywords and remote formats are not loaded.
Ajv and the bundled formats plugin are distributed under the MIT License. The self-hosted vendor folder includes their license and third-party notices.
Frequently Asked Questions
Draft 2020-12, 2019-09 and Draft 7. Auto mode follows a recognized $schema URI and defaults to 2020-12 when none is present.
No. References within the supplied schema are supported; external schemas are not fetched. Include needed definitions in the same schema.
No. Values are not coerced, and schema defaults are not inserted. Validation only reports whether the JSON satisfies the schema.
Large documents can produce many validation messages. The report is capped for display and tells you how many additional errors were omitted.
No. Validation runs locally in a browser worker; the data and schema are not uploaded or saved by this tool.