Generador de TypeScript a JSON Schema

Entrada Código TypeScript

Cargando editor…

Salida JSON Schema

Configuración

Elige qué interface/type se trata como raíz del JSON Schema.

El parseo ocurre completamente en tu navegador. Tu código nunca sale de esta página.

Pega tus tipos TypeScript para producir JSON Schema al instante.

Soporta interfaces, type aliases, campos públicos, opcionales/readonly y union types.

Cómo convertir interfaces, types y clases de TypeScript a JSON Schema — guía paso a paso

Este convertidor en línea (TypeScript → JSON Schema) te ayuda a generar JSON Schema desde modelos reales (DTOs, structs y classes) para validar payloads, compartir contratos y generar mock JSON.

  1. Paso 1 – Pega tu fuente TypeScript

    • Pega los modelos que quieres documentar en el editor izquierdo.
    • Incluye tipos referenciados en el mismo snippet para que el esquema pueda generar definitions.
    • Usa el botón Ejemplo para cargar un ejemplo y ver el formato esperado.
  2. Paso 2 – Selecciona el Tipo raíz (si hace falta)

    • Si se detectan múltiples definitions, elige la raíz que coincide con tu payload de API.
    • El esquema de salida se construye alrededor de la raíz seleccionada e incluye definitions para tipos referenciados.
  3. Paso 3 – Revisa la salida de JSON Schema

    • Comprueba tipos, campos requeridos vs. opcionales y estructuras anidadas de objetos/arrays.
    • Busca definitions y $ref cuando tus modelos referencien otros modelos.
    • Copia o descarga el esquema para validación, documentación o desarrollo schema-first.
  4. Paso 4 – Valida o genera mock JSON

    • Haz clic en Generar datos mock para abrir el generador de mock con tu esquema precargado.
    • Valida payloads reales contra tu esquema para detectar cambios incompatibles temprano.
    • Si dependes de composición avanzada del schema (por ejemplo anyOf/oneOf/allOf), verifica el resultado con un validador completo como Ajv.

Nota sobre soporte de keywords

Los esquemas generados pueden incluir $ref y puedes editarlos para añadir anyOf, oneOf, o allOf. Para esquemas complejos, usa un validador completo de JSON Schema y haz dereference antes de generar mock si es necesario.

Herramientas relacionadas de JSON Schema y generación de código

Usa estas herramientas para validar schemas, generar payloads mock, formatear ejemplos JSON y mantener código y contratos sincronizados.

Preguntas frecuentes

¿Qué sintaxis TypeScript está soportada?

Se parsean interfaces, type aliases y clases con campos públicos. Se manejan opcionales, readonly, claves string-literal, union types, arrays, Record, y referencias anidadas. Se ignoran comentarios y decorators para que puedas pegar DTOs directamente.

¿Cómo funciona el mapeo de tipos?

Tipos primitivos (string, number, boolean, bigint, Date) se mapean a primitivos de JSON Schema con formats apropiados. Arrays (Foo[] o Array<Foo>), Record<string, T> y diccionarios se convierten en arrays/objects. Uniones con null/undefined marcan el campo como opcional.

¿Funciona para clases además de interfaces?

Sí. Mientras la clase defina campos públicos (o propiedades readonly) con anotaciones de tipo, se convierte a JSON Schema. Todo corre en tu navegador, así que tu código no sale de tu máquina.

¿Cómo obtengo mock JSON desde el schema?

Después de generar el schema, haz clic en "Generar datos mock" para abrir el Generador de Mock con el schema precargado. Configura locales, tamaños de arrays y campos opcionales para producir payloads al instante.

Generador de TypeScript a JSON Schema | JSONSwiss