← All Tools

✅ JSON Schema Validator

Validate JSON data against a practical JSON Schema subset locally.

Schema validation checks · Supported subset · utilito.schema-contract.v1

Validates object, array, primitive, required, enum, const, length, item-count, pattern, numeric-bound, and additional-property rules with exact JSON paths. Unsupported keywords remain visible as warnings.

Runs in your browser

Validation runs locally. Debug payloads omit inputs unless you explicitly include them.

What this tool does

JSON Schema Validator checks JSON data against a practical JSON Schema subset and reports validation errors.

Why it is useful

It helps developers catch API contract mismatches, configuration mistakes, and structured-data issues before data reaches production systems.

How it works

The browser parses the schema and JSON input, validates supported rules, and reports paths that do not match.

Best input

Use valid JSON for both the schema and sample data. Keep schemas small enough to inspect comfortably.

API tip

Validate both success and failure examples so schema rules are not accidentally too loose.

Privacy note

Validation happens locally in your browser.

Important limitation

Schema dialects and validator behavior vary. This tool covers a practical subset and is not a replacement for production CI validators.

Quick answers

Does this support every JSON Schema draft?

No. It focuses on common structural checks and reports unsupported dialect limitations clearly.

Can I use it with the API?

Yes. The examples below show curl, JavaScript, and Python requests to /api/run.

API examples

Call the same deterministic core through Utilito’s compact API router. Send only data you intentionally submit to the server-side endpoint.

Try in API playground →Schema →
Validate JSON against a schema with curl
curl
curl -X POST https://utilito.dev/api/run \
  -H "Content-Type: application/json" \
  -d '{"tool_id":"json-schema-validator","input":{"schema":"{"type":"object","required":["email"],"properties":{"email":{"type":"string"},"active":{"type":"boolean"}}}","data":"{"email":"[email protected]","active":true}"}}'
Validate JSON against a schema from JavaScript
javascript
const res = await fetch('https://utilito.dev/api/run', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({
    tool_id: 'json-schema-validator',
    input: { schema: '{"type":"object","required":["email"],"properties":{"email":{"type":"string"},"active":{"type":"boolean"}}}', data: '{"email":"[email protected]","active":true}' }
  })
});
const data = await res.json();
console.log(data.result.output || data.result.report);
Validate JSON against a schema from Python
python
import requests
payload = {
    "tool_id": "json-schema-validator",
    "input": {"schema": "{"type":"object","required":["email"],"properties":{"email":{"type":"string"},"active":{"type":"boolean"}}}", "data": "{"email":"[email protected]","active":true}"},
}
result = requests.post("https://utilito.dev/api/run", json=payload).json()["result"]
print(result.get("output") or result.get("report"))

Common Use Cases

Check API contracts

Validate sample responses before wiring them into clients or tests.

Debug configuration files

Find missing required properties and type mismatches in structured configs.

Document expected data shapes

Share a schema plus passing example when handing off data requirements.

Config Formatter Workbench workflow

Move between JSON, YAML, TOML, XML, config conversion, JSON path inspection, and schema validation while keeping snippets local to the browser.

{}JSON Formatter🧾YAML Formatter / Validator⚙️TOML Formatter / Validator🧾XML Formatter⚙️Config Format Converter🎯JSON Path Tester
View all in Code →