Convertisseur JSON Schema vers TypeScript

Collez un JSON Schema (draft-07 ou 2020-12) et obtenez des interfaces TypeScript : propriétés requises et optionnelles, enums sous forme de types union, oneOf/anyOf en unions, allOf en intersections, définitions $ref en types nommés et descriptions en commentaires JSDoc.

Mis à jour le
Déclarer comme

Vos données ne quittent jamais votre ordinateur. Tout le traitement se fait localement dans votre navigateur.

Comment utiliser : JSON Schema vers TypeScript

  1. Collez votre JSON Schema, ou un objet components.schemas OpenAPI, dans la colonne de gauche.
  2. Définissez le nom du type racine et choisissez d'utiliser interface ou type.
  3. Les types TypeScript se mettent à jour pendant la saisie ; les définitions sous $defs ou definitions deviennent des types nommés distincts.
  4. Copiez le code dans un fichier .ts ou .d.ts.

Correspondance entre JSON Schema et TypeScript

JSON SchemaTypeScript
"type": "string" / number, integer / boolean / nullstring / number / boolean / null
properties + requiredinterface avec prop et prop? pour les champs optionnels
enum, constunion de littéraux : "draft" | "published"
items, prefixItemsT[], tuples [A, B]
additionalProperties (schéma)signature d'index [key: string]: T
oneOf / anyOf / allOfA | B / A | B / A & B
$ref: "#/$defs/User"le type nommé User
"type": ["string", "null"]string | null

Les mots-clés de validation seuls, comme minLength, pattern ou format, n'ont pas d'équivalent en TypeScript ; ils sont ajoutés au commentaire JSDoc lorsque JSDoc est activé. Les URL de $ref externes sont typées en unknown.

Vous partez d'exemples de données plutôt que d'un schéma ? Utilisez JSON vers TypeScript. Pour vérifier des données par rapport à un schéma, utilisez le Validateur JSON Schema.

Aussi recherché comme : json schema en typescript, générer typescript depuis json schema, json schema interface typescript, convertisseur json schema typescript, openapi schema vers typescript, json schema to typescript en ligne, types json schema.

Outils complémentaires : JSON Schema vers TypeScript

  • JSON vers JSON Schema — Collez un ou plusieurs exemples JSON et obtenez un JSON Schema qui les décrit : objets imbriqués, tableaux d’objets fusionnés en un seul schéma d’élément, champs requis (clés présentes dans chaque exemple), formats détectés comme email, date-time, URI et UUID, enums facultatifs, et sortie au draft 2020-12 ou draft-07.
  • JSON vers les types — Collez une réponse API et obtenez des modèles prêts à l'emploi dans 8 langages : TypeScript, Python (dataclass, TypedDict ou Pydantic), Go, Java, C#, Kotlin, Swift et Rust.
  • Formateur JSON — Collez votre code JSON pour le formater, le compresser ou le valider.
  • Validateur OpenAPI / Swagger — Collez une spécification d'API pour la vérifier par rapport au schéma OpenAPI officiel, repérer les références cassées et les paramètres de chemin incohérents, et voir tous vos endpoints d'un coup d'œil.

Questions fréquentes

Comment convertir un JSON Schema en TypeScript ?
Collez le schéma à gauche ; les interfaces TypeScript apparaissent à droite. Les définitions présentes dans $defs ou definitions deviennent des types nommés vers lesquels pointe $ref.
Quelles versions de JSON Schema sont prises en charge ?
Les mots-clés des versions draft-04 à draft-07 et des versions 2019-09 et 2020-12 : properties, required, enum, const, items, prefixItems, additionalProperties, oneOf, anyOf, allOf, $ref, $defs et definitions.
Puis-je l'utiliser pour des schémas OpenAPI ?
Oui : collez un seul schéma, ou l'objet components.schemas complet pour obtenir un type par schéma. Les références #/components/schemas/ sont résolues.
Mon schéma est-il envoyé sur un serveur ?
Non. La conversion s'effectue entièrement dans votre navigateur.
Puis-je installer JSON Schema vers TypeScript en tant qu’application web et l’utiliser hors ligne ?
Oui. JSON Schema vers TypeScript est une application web installable (PWA) : elle s’installe depuis votre navigateur, sans passer par une boutique d’applications. Cliquez sur « Installer l’application » en haut de cette page dans Chrome ou Edge (Windows, macOS, Linux, ChromeOS) ; sur Android, utilisez « Partager » → « Ajouter à l’écran d’accueil » sur iPhone et iPad ; ou « Fichier » → « Ajouter au Dock » dans Safari 17+ sur Mac. L’application s’ouvre alors dans sa propre fenêtre avec sa propre icône, et comme elle s’exécute entièrement dans votre navigateur, elle continue de fonctionner hors ligne. Firefox sur ordinateur de bureau ne permet pas d’installer d’applications web. Comment fonctionne l’installation.

Outils similaires