Generatore classe Python → JSON Schema

Input Codice Python

Caricamento editor…

Output JSON Schema

Impostazioni

Scegli quale classe, dataclass o BaseModel usare come root del JSON Schema.

Il parsing avviene interamente nel tuo browser. Il sorgente non lascia mai la pagina.

Incolla classi Python per produrre un JSON Schema istantaneamente.

Supporta dataclass, BaseModel, enum, TypedDict e sintassi moderna di type hint.

Come convertire dataclass, modelli Pydantic e TypedDict Python in JSON Schema – guida passo‑passo

Questo convertitore online classe Python → JSON Schema ti aiuta a generare JSON Schema da modelli reali (DTO, struct e classi) per validare payload, condividere contratti e generare JSON mock.

  1. Passo 1 – Incolla il sorgente Python

    • Incolla i modelli che vuoi documentare nell’editor di sinistra.
    • Includi i tipi referenziati nello stesso snippet in modo che lo schema possa generare le definizioni.
    • Usa il pulsante Esempio per caricare un esempio e vedere il formato atteso.
  2. Passo 2 – Seleziona il Modello root (se necessario)

    • Se vengono rilevate più definizioni, scegli la root che corrisponde al payload della tua API.
    • Lo schema di output è costruito attorno alla root selezionata e può includere definizioni aggiuntive per i tipi referenziati.
  3. Passo 3 – Controlla l’output JSON Schema

    • Verifica tipi, campi richiesti vs opzionali e strutture annidate di oggetti/array.
    • Cerca definitions e $ref quando i tuoi modelli fanno riferimento ad altri modelli.
    • Copia o scarica lo schema per validazione, documentazione o sviluppo schema‑first.
  4. Passo 4 – Valida o genera JSON mock

    • Fai clic su Genera dati mock per aprire il generatore di mock con lo schema pre‑caricato.
    • Valida payload reali rispetto allo schema per intercettare breaking change in anticipo.
    • Se usi composizione avanzata dello schema (ad esempio anyOf/oneOf/allOf), verifica il risultato con un validatore completo come Ajv.

Nota sul supporto delle keyword dello schema

Gli schemi generati possono includere $ref e possono essere modificati per includere anyOf, oneOf, o allOf. Per schemi complessi, usa un validatore JSON Schema completo e dereferenzia prima della generazione dei mock se necessario.

Strumenti correlati per JSON Schema e generazione di codice

Usa questi strumenti per validare schemi, generare payload mock, formattare esempi JSON e mantenere allineati codice e contratti.

Domande frequenti

Quali strutture Python sono supportate?

Il convertitore comprende classi normali, dataclass, classi Pydantic BaseModel e definizioni TypedDict. Legge annotazioni dei campi, valori di default, hint Optional/Union, valori Literal e subclass Enum per costruire JSON Schema accurati senza caricare il tuo codice.

Come funziona il rilevamento dei tipi in Python?

Type hint come list[str], dict[str, Any], Optional[int], tuple[float, float] e classi o enum custom vengono mappati automaticamente a primitivi/array/oggetti/reference nello schema. Quando mancano annotazioni, lo strumento fa una semplice inferenza dai default ed emette avvisi per indicarti cosa correggere.

Posso usarlo con versioni e framework Python diversi?

Sì. Sintassi moderne come PEP 585, union PEP 604 (str | None) e decorator come @dataclass(frozen=True) o @validator sono supportate. Gestisce anche hint classici typing.Optional/typing.List, quindi funziona con codice Python 3.7+.

Come creo JSON mock dallo schema?

Dopo aver generato lo schema, usa la scorciatoia "Genera dati mock" per aprire il Mock Generator con lo schema pre‑caricato. Configura locale, numero elementi array e crea subito payload di esempio per documentazione o test.

Generatore classe Python → JSON Schema | JSONSwiss