JSON vers schéma Zod
JSON to Zod Schema
Construit un schéma Zod à partir d’un échantillon JSON, avec déduction des champs nuls, facultatifs et des énumérations.
Transforme un document JSON d'exemple en schéma Zod — la vérification à l'exécution que les types TypeScript ne peuvent pas vous donner. La sortie est un jeu de consts `z.object` dans l'ordre de déclaration, plus un type inféré pour la racine : un seul collage vous donne à la fois l'analyseur et le type.
JSON d’exemple
Déposez un fichier .json
Lu dans cet onglet. Rien n’est envoyé.
Donnez-lui tous les éléments dont vous disposez. Chaque enregistrement supplémentaire resserre la déduction : un champ absent de l’un d’eux est précisément ce qui le rend facultatif.
TypeScript
Comment s’en servir
Collez autant d'enregistrements que vous en avez
Chaque élément de chaque tableau est lu et fusionné, pas seulement le premier. Trois enregistrements en disent bien plus qu'un seul, car un champ absent de l'un d'eux est précisément ce qui rend ce champ facultatif.
Nommez le type racine
Les objets imbriqués sont nommés d'après la clé qui les porte, mise au singulier pour les tableaux : `users` donne donc un `User`. Seule la racine attend un nom de votre part.
Lisez les décomptes sous la sortie
Types, champs facultatifs, unions et nombre d'enregistrements fusionnés. Un décompte d'unions supérieur à zéro signifie qu'un champ portait deux sortes de valeurs différentes dans votre échantillon — cela vaut la peine d'y regarder avant de coller le résultat dans une base de code.
Collez-le et analysez avec
Les blocs sont émis enfants d'abord, ce qui compte en Zod : un `z.object` qui référence une const déclarée plus loin lève une erreur au moment de l'import au lieu d'échouer au typage. Gardez l'ordre tel qu'il est généré.
Questions fréquentes
Pourquoi le schéma ne correspond-il pas à mon contrat d'API ?
Parce qu'il décrit l'échantillon, pas le contrat. Un champ marqué facultatif était simplement absent de l'un des enregistrements que vous avez collés ; un champ marqué obligatoire peut rester facultatif dans une API dont vous n'avez pas assez vu. Traitez la sortie comme un premier jet à resserrer à la main.
Y a-t-il des affinements — email, uuid, longueur minimale ?
Aucun. Tout est `z.string()`, `z.number()` ou `z.boolean()`, avec `.int()` quand tous les nombres de l'échantillon étaient entiers. Ajouter `.email()` parce qu'une chaîne contenait une arobase serait deviner, et un affinement erroné rejette des données valides en production.
Que devient un tableau vide ?
Il devient `z.array(z.unknown())`, car un tableau vide ne dit rien du type de ses éléments. Collez un enregistrement où le tableau n'est pas vide et le schéma se complète tout seul.
Pour quelle version de Zod est-ce prévu ?
Les appels émis sont ceux qui sont identiques en Zod 3 et en Zod 4 — `z.object`, `z.array`, `z.union`, `.nullable()`, `.optional()` et `z.record(z.string(), z.unknown())` dans sa forme à deux arguments. Rien de spécifique à une version n'est utilisé.
À alimenter depuis
JSON vers TypeScript
JSON to TypeScript
Déduit des interfaces ou des types TypeScript à partir d’un échantillon JSON, en fusionnant les champs facultatifs et les unions.
JSON vers JSON Schema
JSON to JSON Schema
Déduit un JSON Schema à partir d’un ou plusieurs échantillons, en réunissant les formes rencontrées.
Formateur et validateur JSON
JSON Formatter & Validator
Met en forme, minifie et valide du JSON en désignant la ligne et la colonne exactes de l’erreur de syntaxe.
Formateur et validateur YAML
YAML Formatter & Validator
Réindente le YAML de façon cohérente, le valide et signale les tabulations et les ancres qui font échouer les analyseurs.
Ensuite
Ces outils acceptent ce que celui-ci produit : le résultat peut y aller directement.
Validateur JSON Schema
JSON Schema Validator
Valide un document contre un JSON Schema et rapporte chaque échec avec le chemin exact dans l’instance.
JSON vers JSON Schema
JSON to JSON Schema
Déduit un JSON Schema à partir d’un ou plusieurs échantillons, en réunissant les formes rencontrées.
JSON vers TypeScript
JSON to TypeScript
Déduit des interfaces ou des types TypeScript à partir d’un échantillon JSON, en fusionnant les champs facultatifs et les unions.
Encodeur et décodeur Base64
Base64 Encoder & Decoder
Encode et décode en Base64 et en Base64URL, pour du texte comme pour des fichiers, avec un traitement correct de l’UTF-8.
curl vers code
curl to Code
Traduit une commande curl en fetch, axios, requests Python, Go, PHP ou PowerShell.
Hachage de texte
Text Hash
Calcule le MD5, le SHA-1, le SHA-256, le SHA-384, le SHA-512 et le CRC-32 d’une chaîne, avec sortie en majuscules ou en Base64.