Validate JSON data with schemas, types, required fields, formats, composition, and API contracts.
Lessons
Allow null alongside another type cleanly.
Nullable Values is easiest to learn by reading the example, changing it, and observing the result.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://example.com/schemas/lesson.json",
"title": "Lesson",
"type": "object",
"required": ["slug", "title"],
"properties": {
"slug": { "type": "string", "pattern": "^[a-z0-9-]+$" },
"title": { "type": "string", "minLength": 3, "maxLength": 80 },
"minutes": { "type": "integer", "minimum": 1 },
"level": { "type": "string", "enum": ["beginner", "advanced"] },
"tags": { "type": "array", "items": { "type": "string" }, "uniqueItems": true }
},
"additionalProperties": false
}Practice the Nullable Values example in a small scratch file, then explain what changed and why.