Come usare Da JSON a tipi
- 1
Incolla gli esempi JSON
Incolla una risposta, un array di record o più risposte una dopo l'altra; l'esempio mostra due utenti uniti.
- 2
Scegli il linguaggio
Scegli TypeScript, Zod, Go, Python, Java, C#, Kotlin, Swift o Rust e le opzioni di stile relative.
- 3
Dai un nome al tipo radice
Imposta il nome del tipo di primo livello, per esempio User o OrderResponse.
- 4
Genera e copia
Premi Genera tipi, poi copia il codice o scaricalo; le modifiche lo rigenerano automaticamente.
Limiti e Pro
Gratis e senza registrazione: 9 linguaggi di output con 3 stili Python, un numero qualsiasi di esempi uniti e file fino a 20 MB, con la generazione che si interrompe dopo 30 secondi.
Pro elimina la pubblicità; il generatore è lo stesso in ogni piano. Scopri Pro
Informazioni su Da JSON a tipi
Scrivere a mano i tipi per la risposta di un'API è lento e soggetto a errori, soprattutto quando il payload è annidato su tre livelli. Incolla uno o più esempi JSON e questo generatore ricava la struttura e scrive definizioni pronte da incollare in nove varianti: interfacce o type alias TypeScript, TypeScript con schemi Zod per la validazione a runtime, struct Go con tag json, dataclass, TypedDict o modelli Pydantic v2 per Python, record Java con annotazioni Jackson, classi C# per System.Text.Json, data class Kotlin per kotlinx.serialization, struct Swift Codable e struct Rust per serde.
Un solo esempio raramente mostra tutti i campi, quindi il generatore unisce tutti quelli che gli dai. Puoi incollare più documenti uno dopo l'altro o in formato JSON Lines, oppure un array di oggetti: una chiave assente in alcuni oggetti diventa opzionale, una chiave a volte null diventa nullable, un intero che a volte è decimale diventa float e i valori davvero misti diventano un'unione o il tipo JSON dinamico del linguaggio. Gli oggetti annidati ottengono tipi con nome proprio – orders diventa Order, addresses diventa Address – e le strutture identiche vengono generate una sola volta e riutilizzate. Gli oggetti le cui chiavi sono numeri, UUID o date vengono trasformati in mappe.
I nomi dei campi sono convertiti secondo la convenzione di ciascun linguaggio e le chiavi JSON che differiscono, come first-name o class, vengono ricollegate con l'annotazione, l'alias o i CodingKeys corretti. Commenti e virgole finali nell'esempio sono tollerati.
L'output descrive gli esempi che fornisci: il generatore non può conoscere campi o valori che non compaiono nei tuoi esempi, quindi confrontalo con la documentazione della tua API prima di usarlo.
Privacy
Gli esempi vengono analizzati e il codice viene generato da un Web Worker in questa scheda, quindi le risposte delle API con dati personali o interni non vengono mai caricate. Le opzioni di linguaggio e di nomi sono salvate nella memoria locale; il JSON che incolli non viene conservato.
Funzionalità
Unisce molti esempi
Le chiavi mancanti diventano opzionali e i valori null nullable in tutti gli esempi che incolli.
9 linguaggi
TypeScript, Zod, Go, Python, Java, C#, Kotlin, Swift e Rust con nomi nello stile di ciascun linguaggio.
Mappatura delle chiavi inclusa
Tag json, alias, @SerialName, @JsonProperty e CodingKeys mantengono i nomi JSON originali.