Cómo usar: Validador JSON Schema
- Pega el JSON Schema a la izquierda y el JSON a comprobar a la derecha (YAML también funciona).
- El draft se detecta a partir de
$schema, o puedes elegirlo manualmente. - Revisa la lista de errores: la ubicación en el JSON, el problema y la regla del schema que falló.
- ¿Aún no tienes schema? Pega datos de ejemplo y haz clic en Generar schema desde datos.
¿Qué es JSON Schema?
JSON Schema es un vocabulario para describir la estructura de los datos JSON: qué propiedades existen, sus tipos, cuáles son obligatorias, los valores permitidos, los formatos de cadena, los rangos numéricos y la longitud de los arrays. Se usa para validar peticiones y respuestas de API, archivos de configuración, datos de formularios y pipelines de datos, y es la base de las definiciones de peticiones y respuestas de OpenAPI.
Cómo leer los errores
| Columna | Significado |
|---|---|
| Dónde | Un JSON Pointer al valor que falla, p. ej. /items/0/qty = el qty del primer elemento |
| Problema | Qué está mal: tipo incorrecto, propiedad obligatoria ausente, valor no permitido, propiedad inesperada… |
| Regla del schema | La ruta a la palabra clave del schema que rechazó el valor, p. ej. #/properties/items/items/properties/qty/minimum |
Drafts
JSON Schema tiene varias versiones. Draft 2020-12 es la actual (OpenAPI 3.1 la usa); draft-07 sigue siendo la más compatible con librerías y editores; draft-04 aparece en especificaciones antiguas como Swagger 2.0 y OpenAPI 3.0. El validador lee $schema para elegir las reglas correctas. Diferencias que suelen dar problemas: draft-04 usa id en lugar de $id y exclusiveMinimum booleano; 2019-09 sustituyó definitions por $defs y añadió unevaluatedProperties.
Errores comunes
- Olvidar
"additionalProperties": false: sin él, se permiten propiedades desconocidas. - Poner
requireddentro de una propiedad en lugar de en el objeto padre. - Esperar que
formatse aplique siempre: muchos validadores solo anotan los formatos si no se les pide comprobarlos. - Usar
"type": "integer"para valores como1.0, que algunos lenguajes envían como decimales.
Los schemas generados son un punto de partida: ajústalos con patrones, enums y límites. Explora documentos grandes en el visor JSON o genera tipos TypeScript con JSON a TypeScript. ¿Vas a validar una especificación de API? Usa el validador de OpenAPI.
También se busca como: validar json schema, json schema validator online, ajv online, generar json schema, json schema draft 2020-12, convertir json a schema.
Herramientas que combinan con: Validador JSON Schema
- JSON a JSON Schema — Pega uno o varios ejemplos de JSON y obtén un JSON Schema que los describe: objetos anidados, arrays de objetos fusionados en un único esquema de elemento, campos required (claves presentes en todos los ejemplos), formatos detectados como email, date-time, URI y UUID, enums opcionales, y salida en draft 2020-12 o draft-07.
- Formateador JSON — Pega el código JSON para formatearlo, minimizarlo o validarlo.
- Validador YAML — Pega un archivo de Docker Compose, un manifiesto de Kubernetes, un workflow de GitHub Actions o cualquier YAML para localizar errores, detectar trampas habituales y obtener una versión bien formateada.
- Probador de JSONPath — Escribe una consulta JSONPath y verás al instante qué selecciona, con la ruta exacta de cada coincidencia.
Preguntas frecuentes
¿Qué validador de JSON Schema usa esta herramienta?
¿Puedo generar un JSON Schema a partir de JSON?
¿Admite $ref a otros archivos?
#/$defs/...) funcionan. Las URL externas no se descargan; incluye antes esas definiciones en el propio schema.