Genere un JSON Schema (draft-07) a partir de datos JSON de ejemplo, o valide cualquier documento JSON contra cualquier esquema con mensajes de error precisos. También: Formateador JSON | Evaluador de JSONPath | Todas las herramientas JSON. Todo el procesamiento se realiza en local en su navegador: no se sube nada.
Generar esquemaValidar datos
Pegue abajo un objeto JSON (o una matriz de objetos: las propiedades se combinan y required se une). El esquema se infiere; edítelo después si necesita reglas más estrictas.
Incluir la cabecera $schema: añade al principio la declaración de draft-07 para que los validadores sepan qué dialecto usa el esquema. Ejemplo: "$schema": "http://json-schema.org/draft-07/schema#"
Marcar las claves required: añade a la lista de obligatorias cada clave que aparece en el JSON de ejemplo. Ejemplo: "required": ["name", "price", "inStock"]
Agrupar los conjuntos de valores pequeños en enum: cuando una matriz de escalares tiene de 2 a 8 valores únicos, su tipo de elemento se restringe a un enum. Ejemplo: "tags": ["sale", "new", "sale"] → "tags": {"type": "array", "items": {"type": "string", "enum": ["sale", "new"]}}
Detectar formatos de cadena habituales: reconoce fechas ISO, fechas con hora, UUID, correos electrónicos y URL, y añade format. Ejemplo: "createdAt": {"type": "string", "format": "date-time"}
Los esquemas se interpretan como draft-07. La validación admite type, enum, required, properties, patternProperties, additionalProperties, items, límites numéricos, longitud y patrón de cadenas, matrices y allOf/anyOf/oneOf/not.
Entrada: JSON de ejemplo
Esquema generado (editable)
Esquema (draft-07)
Datos a validar
Resultado
Notas del generador: los números enteros se convierten en "integer"; las cadenas solo ganan format cuando la casilla de formato está activa; varios objetos JSON de una matriz se combinan (las claves del mismo tipo conservan el primer tipo, y los tipos mixtos pasan a una matriz type; required es la unión de todas las muestras). Con Validar datos, cada regla que falla se informa con su ruta de puntero JSON (p. ej., .items[0].price) para ir directamente al valor incorrecto.
JSON Schema: un contrato, no un sistema de tipos
Un JSON Schema describe qué debe parecer un documento válido: qué claves son obligatorias, qué tipos tienen los valores, rangos y patrones. La validación comprueba los datos frente a ese contrato; no transforma nada. Los esquemas se versionan por draft: esta página genera draft-07, el dialecto más ampliamente soportado; 2020-12 es el actual.
Un esquema generado es una suposición a partir de muestras: ajuste a mano required, enum y format.
🔷 Herramientas JSON
Genere esquemas JSON a partir de ejemplos y valide datos JSON contra esquemas draft-07.