Validate JSON against a schema

Check a JSON value against a JSON Schema and return every error with its path. Does not change the data (use repair-json for that).

CHF 0.001 / callCall itTry it
Platen printing press, patent model, 1850
Platen printing press, patent model1850

Details

Schema keywords: type, properties, required, additionalProperties, items, prefixItems, enum, const, minimum/maximum, exclusive ranges, multipleOf, minLength/maxLength, pattern, format (date, date-time, email, uri, uuid), min/maxItems, uniqueItems, min/maxProperties, anyOf, oneOf, allOf, not, $ref to $defs.

Limits: 1 MB of data.

Price: CHF 0.001 per call (first 100 calls per day free).

Example: {"data":{"age":-1},"schema":{"type":"object","required":["name"],"properties":{"age":{"type":"integer","minimum":0}}}} → valid: false, 2 errors.

Call it

REST
curl -X POST https://api.tausendwerk.xyz/v1/validate-json \
  -H "Content-Type: application/json" \
  -d '{"data":{"age":-1},"schema":{"type":"object","required":["name"],"properties":{"age":{"type":"integer","minimum":0}}}}'
MCP tool name
validate_json

After the free 100 calls per day, add a key: Authorization: Bearer tw_live_…. Pricing

Try it

Runs against the live API with the free allowance.

Input schema JSON Schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "data",
    "schema"
  ],
  "properties": {
    "data": {
      "description": "Any JSON value."
    },
    "schema": {
      "type": "object"
    }
  },
  "examples": [
    {
      "data": {
        "age": -1
      },
      "schema": {
        "type": "object",
        "required": [
          "name"
        ],
        "properties": {
          "age": {
            "type": "integer",
            "minimum": 0
          }
        }
      }
    }
  ]
}

More in JSON