Générateur de modèles Pydantic depuis JSON

Générez des classes de modèle Pydantic v2 à partir d’un exemple JSON instantanément dans votre navigateur. Votre JSON reste sur votre appareil.

Votre JSON est analysé et converti en modèles Pydantic entièrement dans votre navigateur, il reste donc sur votre appareil et rien n’est téléversé vers un serveur.

Besoin de types Go, Rust ou TypeScript ? Essayez JSON vers Code.

À propos de JSON vers Pydantic

Ce générateur json vers pydantic transforme un objet ou tableau JSON d’exemple en classes de modèle Pydantic v2 prêtes à l’emploi en quelques secondes. Collez une vraie réponse d’API et il infère le type de chaque champ, str, int, float et bool, marque les champs nullables comme Optional, unifie les tableaux en types list[...] et promeut chaque objet imbriqué en son propre BaseModel référencé par son nom. Les clés qui ne sont pas des identifiants Python valides sont conservées via Field(alias=...) pour que le modèle analyse toujours votre charge utile d’origine. Il est conçu pour les développeurs Python et FastAPI qui préfèrent générer des modèles pydantic depuis json plutôt que de les écrire à la main en câblant un client typé. Tout s’exécute localement dans votre navigateur, le JSON que vous collez est traité sur votre appareil et rien n’est téléversé vers un serveur.

Fonctionnalités

Comment utiliser JSON vers Pydantic

  1. Collez votre objet ou tableau JSON dans la zone de saisie.
  2. Définissez le nom du modèle racine pour correspondre à votre schéma, ou laissez Model.
  3. Examinez les classes Pydantic générées dans le panneau de sortie.
  4. Copiez le résultat ou téléchargez-le sous forme de fichier .py.

Exemple

Entrée

{ "id": 1, "name": "Ada", "address": { "city": "London" } }

Sortie

from pydantic import BaseModel


class Address(BaseModel):
    city: str


class Model(BaseModel):
    id: int
    name: str
    address: Address

Un objet imbriqué devient son propre BaseModel, la classe racine en dernier.

Erreurs courantes et dépannage

Foire aux questions

Génère-t-il des modèles Pydantic v2 ?
Oui. La sortie vise la syntaxe Pydantic v2 : chaque modèle est une classe qui hérite de BaseModel, avec des champs annotés et Field(alias=...) là où une clé JSON n’est pas un identifiant Python valide.
Comment les objets imbriqués sont-ils gérés ?
Chaque objet imbriqué devient sa propre classe BaseModel, nommée en PascalCase à partir de la clé qui le contient, et le parent le référence par son type. Les classes sont émises dans l’ordre des dépendances, le modèle racine en dernier.
Comment mappe-t-il les types JSON vers les types Python ?
Les chaînes deviennent str, les nombres entiers int, les décimaux float, les booléens bool, null produit Optional, les tableaux deviennent list[...] avec un type d’élément unifié, et les objets deviennent des BaseModels imbriqués.
Que se passe-t-il avec les clés qui ne sont pas des noms Python valides ?
Une clé comme first-name ou 2fa, ou un mot réservé comme class, est exposée sous un attribut snake_case sûr et la clé d’origine est préservée avec Field(alias="...") pour que le modèle analyse toujours votre charge utile.
Comment les tableaux et les tableaux vides sont-ils convertis ?
Les tableaux deviennent list[...] avec le type unifié de leurs éléments, y compris un BaseModel imbriqué pour les tableaux d’objets. Un tableau vide n’a aucun type d’élément à inférer, il devient donc list[Any].
Mon JSON est-il envoyé quelque part lorsque je génère des modèles Pydantic ?
Non. La conversion JSON vers Pydantic s’exécute entièrement dans votre navigateur, les données que vous collez sont traitées localement et ne quittent jamais votre appareil.

Outils associés

Tous les outils ArrayKit