Generador de JSON Schema
Pega un ejemplo JSON y obtén un JSON Schema draft-07 que describe su forma, tipos y campos obligatorios.
Cómo funciona
La herramienta recorre tu JSON analizado de forma recursiva. Los objetos se convierten en
type: "object" con una entrada properties por clave y cada clave
presente listada en required. Los arrays se convierten en
type: "array" con un esquema items construido infiriendo y
combinando el tipo de cada elemento. Los valores primitivos se mapean directamente:
cadenas, números (los enteros reciben "integer" en lugar de
"number" cuando todos los valores de muestra son enteros), booleanos y null.
Esto pasa por JSON.parse, el analizador nativo de tu navegador, y luego por
un pequeño recorrido recursivo, ambos en el propio JavaScript de esta página. No se sube
nada.
Preguntas frecuentes
¿Qué versión de JSON Schema genera?
Draft-07, la versión más ampliamente soportada por validadores como ajv, jsonschema (Python) y la mayoría de herramientas de IDE. La salida es JSON plano, así que puedes editarla a mano después si necesitas las palabras clave de un draft más reciente.
¿Cómo se tratan los arrays?
La herramienta inspecciona cada elemento del array y combina sus tipos inferidos. Si todos los elementos comparten la misma forma, obtienes un único esquema items; si los tipos difieren entre elementos, recurre a un esquema más amplio para que nada de tu ejemplo quede sin representar.
¿Marca los campos como obligatorios?
Sí, cada clave presente en un objeto se añade a la lista required de ese objeto, ya que apareció en tu ejemplo. Elimina claves del array required del esquema generado si en realidad son opcionales en tus datos reales.