Generador Visual de JSON Schema

Define los campos de tu estructura en un formulario visual y obtén al instante cuatro salidas listas para copiar: un JSON de ejemplo, el JSON Schema formal para forzar salidas estructuradas en la API de OpenAI, Claude o Gemini, el esquema de Zod para validar en TypeScript y un prompt en español.

Se usa como nombre del schema y del tipo de TypeScript.

Todavía no hay campos. Agrega el primero para ver las cuatro salidas.

Objeto de ejemplo con valores de muestra. Sirve para probar tu código antes de tener la respuesta real de la IA.

{}

¿Qué es generador visual de json schema?

Cuando le pides datos a un modelo de lenguaje, la diferencia entre una integración que funciona y una que falla a la tercera llamada es si la respuesta llega siempre con la misma forma. Las salidas estructuradas resuelven eso: le envías a la API un JSON Schema y el modelo queda obligado a responder exactamente esa estructura, sin texto de más ni propiedades inventadas.

El problema es que escribir ese schema a mano es tedioso y fácil de romper. Son llaves anidadas, comas, arrays de nombres en required y un additionalProperties en cada nivel. Esta herramienta te deja definir los campos como un formulario y se encarga de la sintaxis.

Genera las cuatro representaciones a la vez y desde la misma definición, así que no pueden desincronizarse: el ejemplo, el contrato formal, el validador de TypeScript y el prompt describen siempre la misma estructura.

Cómo funciona

  1. Pulsa «Agregar campo» y escribe el nombre de la propiedad, tal como quieres que aparezca en el JSON.
  2. Elige el tipo de dato: texto, número, booleano, lista u objeto anidado.
  3. Marca la casilla «Obligatorio» en los campos que siempre deben venir.
  4. Escribe una descripción corta explicando qué debe poner el modelo ahí. Es el campo que más influye en la calidad de la respuesta: «el correo del cliente en minúsculas» funciona mucho mejor que «email».
  5. Para anidar, elige «Objeto anidado» o una lista de objetos y añade propiedades dentro con el botón de la flecha.
  6. Copia la salida que necesites de las cuatro pestañas. Si vas a usar la API de OpenAI, marca la casilla de response_format y pégalo tal cual.

Ejemplo

Extraer datos de una factura con la API de OpenAI

numero
Texto, obligatorio
total
Número, obligatorio
cliente
Objeto anidado con nombre y email
items
Lista de objetos con sku y precio

Un schema estricto con additionalProperties en false y los cuatro campos en required

Al enviar ese schema en el response_format, el modelo devuelve siempre las cuatro propiedades con esos tipos exactos, y los objetos anidados quedan igual de cerrados que la raíz. Sin schema, el mismo prompt devuelve unas veces «total» y otras «valor_total», y la integración se rompe en producción sin que nadie cambie nada.

Ten en cuenta

  • El modo estricto no es JSON Schema a secas. Las Structured Outputs de OpenAI exigen additionalProperties en false y que todas las propiedades estén en required; los campos opcionales se declaran con tipo unión (texto o null) en vez de omitirse. La herramienta lo aplica sola al dejar la casilla marcada.
  • Desmarca el modo estricto si quieres un JSON Schema estándar, con $schema y solo los campos obligatorios en required. Es el que necesitas para validadores como Ajv.
  • La pestaña de prompt es para modelos sin salida estructurada nativa. Orienta al modelo, pero no lo obliga: valida siempre la respuesta antes de guardarla.
  • Los nombres de campo se validan como identificadores: letras, números y guion bajo, sin empezar por número. Un nombre con espacios genera un JSON válido pero imposible de desestructurar cómodamente en JavaScript.
  • Todo se genera en tu navegador. Ni los nombres de campo ni las descripciones se envían a ningún servidor.

Fuentes

Preguntas frecuentes

Herramientas relacionadas