Generador de esquemas JSON
Infiere un esquema JSON compatible con Draft-07 a partir de datos JSON de muestra, completamente en tu navegador.
Esquema generado
Esquema generado
- Propiedades definidas
- -
- Claves de nivel superior
- -
Cómo funciona
JSON Schema es un vocabulario para describir y validar la estructura de datos JSON. Esta herramienta inspecciona un objeto o matriz de muestra, infiere un tipo y formato para cada valor y construye un esquema compatible con Draft-07 que puedes integrar directamente en una biblioteca de validación.
- Pega JSON de muestra representativo
Incluye todos los campos que esperas, con valores de ejemplo realistas.
- Elige campos obligatorios, ejemplos y propiedades adicionales.
El esquema se actualiza al cambiar cualquier opción.
- Copia o descarga el esquema
Revisa el arreglo required y los formatos antes de usarlo en producción.
Qué detecta el generador
Cada valor se tipifica como string, integer, number, boolean, array, object o null. Los valores de cadena también se verifican contra formatos comunes: email, date, date-time, uri, uuid e ipv4, en ese orden, por lo que un valor que coincida con más de un patrón obtiene la primera coincidencia. Las matrices con elementos que comparten el mismo tipo inferido se consolidan en un único esquema de elementos; las matrices que mezclan tipos usan oneOf, combinando los ejemplos en lugar de repetirlos.
Un esquema es tan bueno como su muestra
El generador solo puede inferir lo que ve. Si un campo a veces es null y a veces una cadena, pero tu muestra solo muestra el caso de cadena, el esquema especifica cadena y omite el caso anulable. Usa una muestra que cubra cada tipo de valor, campo opcional y caso extremo que esperas en datos reales.
Preguntas frecuentes
¿Cómo genero automáticamente un JSON Schema a partir de datos JSON de muestra?
Pega un objeto o matriz JSON representativo en el área de entrada. La herramienta inspecciona cada clave y valor, infiere el tipo (cadena, número, booleano, matriz, objeto o null) y genera un JSON Schema compatible con Draft-07 mientras escribes. Opcionalmente, puedes agregar un título al esquema y elegir si requerir claves de objeto, incluir valores de ejemplo y permitir propiedades adicionales.
¿El JSON Schema generado se envía a un servidor?
No. La generación del esquema se ejecuta completamente en tu navegador usando JavaScript. Tus datos JSON y el esquema resultante permanecen en tu dispositivo. Puedes usar de forma segura datos de producción, cargas útiles de API internas u objetos de configuración confidenciales como fuente sin ninguna exposición del lado del servidor.
¿Para qué se usa JSON Schema y por qué lo necesitaría un desarrollador?
JSON Schema es un vocabulario para describir y validar estructuras de datos JSON. Los desarrolladores lo usan para validar cuerpos de solicitudes y respuestas de API, generar documentación, configurar generadores de código como quicktype u openapi-generator, aplicar contratos de datos entre servicios y configurar la validación de formularios en frameworks que admiten formularios basados en esquemas.
¿Cuál es una limitación clave de inferir un JSON Schema a partir de una sola muestra?
El generador solo puede inferir lo que ve en la muestra proporcionada. Si un campo a veces es null y a veces una cadena, pero tu muestra solo muestra el caso de cadena, el esquema especificará el tipo string y omitirá el caso anulable. Usa siempre una muestra representativa que cubra todos los tipos de valor esperados, campos opcionales y casos extremos para producir un esquema preciso.
¿Puedo usar el JSON Schema generado para validar datos en mi código?
Sí. El esquema generado es un JSON Schema Draft-07 estándar, compatible con bibliotecas de validación populares como Ajv para JavaScript y Node.js, jsonschema para Python y JSON.NET Schema para .NET. Copia la salida del esquema e intégrala con tu biblioteca de validación preferida. Revisa y ajusta el arreglo required y las restricciones de tipo antes de usarlo en producción.
¿Debería permitir propiedades adicionales que no están en mi muestra?
Por defecto, el esquema establece additionalProperties en false, por lo que un validador rechazará cualquier campo que no esté en tu muestra, lo cual es útil para detectar errores tipográficos y datos inesperados. Activa "Permitir propiedades adicionales no listadas aquí" si los datos reales tienen legítimamente campos opcionales que tu muestra no incluyó, como una respuesta de API flexible.