Validador de JSON Schema

Valida datos JSON contra un JSON Schema. Soporta draft-07 con tipo, requerido, propiedades, enum, patrón, y más.

Cómo usar Validador de JSON Schema

  1. 1Pega tus datos JSON en el panel izquierdo.
  2. 2Pega o escribe tu JSON Schema en el panel derecho.
  3. 3Haz clic en Validate para verificar la conformidad.
  4. 4Revisa los errores de validación con rutas JSON y descripciones.
ZenovayAnalytics

Ve quién está en tu sitio ahora mismo.

  • Seguimiento de visitantes en tiempo real
  • Privacidad primero, sin aviso de cookies
  • Configurado en dos minutos
Descubre Zenovay

Preguntas frecuentes

¿Qué es JSON Schema?
JSON Schema es un vocabulario que permite anotar y validar documentos JSON. Un esquema es en sí mismo un documento JSON que describe la forma, los tipos y las restricciones de sus datos. Se usa para documentación de API (OpenAPI/Swagger), validación de configuración, contratos de pipelines de datos y validación de formularios. Esta herramienta admite un subconjunto práctico del borrador-07 de JSON Schema.
¿Qué palabras clave son compatibles?
Este validador admite las palabras clave de JSON Schema más utilizadas: type (string, number, integer, boolean, null, array, object), required (array de nombres de propiedades requeridas), properties (subesquemas por propiedad), additionalProperties (booleano o esquema), minLength / maxLength, minimum / maximum / exclusiveMinimum / exclusiveMaximum, pattern (regex), enum, const, items (esquema de elemento de array), minItems / maxItems, allOf / anyOf / oneOf y $ref (para definiciones locales).
¿Cuál es la diferencia entre allOf, anyOf y oneOf?
allOf — los datos deben ser válidos contra TODOS los subesquemas listados. Se usa para extender o componer esquemas. anyOf — los datos deben ser válidos contra AL MENOS UN subesquema. Se usa para tipos de unión. oneOf — los datos deben ser válidos contra EXACTAMENTE UN subesquema (mutuamente excluyentes). Si los datos coinciden con dos esquemas oneOf, falla. Para campos opcionales/nulables, anyOf: [{type: "string"}, {type: "null"}] es común.
¿Cómo valido un array de objetos?
Use la palabra clave items en un esquema de tipo array: {"type": "array", "items": {"type": "object", "required": ["id", "name"], "properties": {"id": {"type": "integer"}, "name": {"type": "string"}}}}. Esto valida que cada elemento del array sea un objeto con las propiedades requeridas id (entero) y name (cadena).
¿Qué es additionalProperties?
additionalProperties controla si se permiten propiedades de objeto más allá de las listadas en properties. Establézcalo en false para rechazar cualquier clave adicional: {"type": "object", "properties": {"name": {"type": "string"}}, "additionalProperties": false}. Establézcalo en un objeto de esquema para requerir que las propiedades adicionales coincidan con ese esquema. El valor predeterminado es true (se permiten propiedades adicionales). Esto se usa comúnmente para aplicar contratos estrictos de API.