Conversor de JSON Schema a TypeScript

Pega un JSON Schema (draft-07 o 2020-12) y obtén interfaces de TypeScript: propiedades requeridas y opcionales, enums como tipos unión, oneOf/anyOf como uniones, allOf como intersecciones, definiciones $ref como tipos con nombre y descripciones como comentarios JSDoc.

Actualizado el
Declarar como

Tus datos nunca salen de tu ordenador. Todo se procesa localmente en tu navegador.

Cómo usar: JSON Schema a TypeScript

  1. Pega tu JSON Schema, o un objeto components.schemas de OpenAPI, en el panel izquierdo.
  2. Define el nombre del tipo raíz y si quieres usar interface o type.
  3. Los tipos de TypeScript se actualizan mientras escribes; las definiciones de $defs o definitions se convierten en tipos con nombre propio.
  4. Copia el código en un archivo .ts o .d.ts.

Cómo se traduce JSON Schema a TypeScript

JSON SchemaTypeScript
"type": "string" / number, integer / boolean / nullstring / number / boolean / null
properties + requiredinterface con prop y prop? opcional
enum, constunión de literales: "draft" | "published"
items, prefixItemsT[], tuplas [A, B]
additionalProperties (schema)índice de firma [key: string]: T
oneOf / anyOf / allOfA | B / A | B / A & B
$ref: "#/$defs/User"el tipo con nombre User
"type": ["string", "null"]string | null

Las palabras clave solo de validación, como minLength, pattern o format, no tienen equivalente en TypeScript; si JSDoc está activado, se añaden al comentario JSDoc. Las URLs de $ref externas se tipan como unknown.

¿Partes de datos de ejemplo en lugar de un schema? Usa JSON a TypeScript. Para comprobar datos contra un schema, usa el validador de JSON Schema.

También se busca como: json schema a ts, generar typescript desde json schema, interface json schema, convertir json schema a typescript online, openapi schema a typescript, tipos json schema, conversor json schema.

Herramientas que combinan con: JSON Schema a TypeScript

  • JSON a JSON Schema — Pega uno o varios ejemplos de JSON y obtén un JSON Schema que los describe: objetos anidados, arrays de objetos fusionados en un único esquema de elemento, campos required (claves presentes en todos los ejemplos), formatos detectados como email, date-time, URI y UUID, enums opcionales, y salida en draft 2020-12 o draft-07.
  • De JSON a tipos — Pega una respuesta de la API y obtén modelos listos para usar en 8 lenguajes: TypeScript, Python (dataclass, TypedDict o Pydantic), Go, Java, C#, Kotlin, Swift y Rust.
  • Formateador JSON — Pega el código JSON para formatearlo, minimizarlo o validarlo.
  • Validador OpenAPI / Swagger — Pega una especificación de API para comprobarla contra el esquema oficial de OpenAPI, detectar referencias rotas y parámetros de ruta inconsistentes, y ver todos los endpoints de un vistazo.

Preguntas frecuentes

¿Cómo convierto JSON Schema a TypeScript?
Pega el schema en el panel izquierdo; las interfaces de TypeScript aparecen a la derecha. Las definiciones en $defs o definitions se convierten en tipos con nombre a los que apunta $ref.
¿Qué versiones de JSON Schema son compatibles?
Desde draft-04 hasta draft-07, y las palabras clave de 2019-09 y 2020-12: properties, required, enum, const, items, prefixItems, additionalProperties, oneOf, anyOf, allOf, $ref, $defs y definitions.
¿Puedo usarlo con schemas de OpenAPI?
Sí. Pega un solo schema o el objeto components.schemas completo para obtener un tipo por cada schema. Las referencias #/components/schemas/ se resuelven.
¿Se sube mi schema a algún servidor?
No. La conversión se ejecuta por completo en tu navegador.
¿Puedo instalar JSON Schema a TypeScript como aplicación web y utilizarla sin conexión?
Sí. JSON Schema a TypeScript es una aplicación web instalable (PWA): se instala desde el navegador, no se descarga desde una tienda de aplicaciones. Haz clic en «Instalar aplicación» en la parte superior de esta página en Chrome o Edge (Windows, macOS, Linux, ChromeOS) o, en Android, utiliza «Compartir» → «Añadir a la pantalla de inicio» en iPhone y iPad, o «Archivo» → «Añadir al Dock» en Safari 17+ en un Mac. A continuación, se abrirá en su propia ventana con su propio icono y, como se ejecuta íntegramente en tu navegador, seguirá funcionando sin conexión. Firefox en el ordenador de sobremesa no permite instalar aplicaciones web. Cómo funciona la instalación.

Herramientas relacionadas