Как пользоваться: JSON в типы
- Вставьте образец JSON — желательно реальный ответ API с массивами из нескольких элементов — или нажмите Загрузить пример.
- Выберите язык и стиль: например, Pydantic v2 для FastAPI, records для современной Java или classes для C#.
- Задайте имя корневого типа. Вложенные объекты станут отдельными именованными типами (например,
Root,Address,OrderItem). - Скопируйте код или скачайте его с нужным расширением файла.
Как выводятся типы
- Массивы объектов объединяются — поле, которого нет в некоторых элементах, становится необязательным; поле, которое иногда равно
null, становится nullable. - Числа — целые числа превращаются в целочисленные типы (
int,int64,long,i64); значения с дробной частью — в float/double. - Даты — строки ISO 8601 вида
2026-10-26T09:30:00Zмогут статьDate,datetime,time.Time,OffsetDateTime,DateTimeOffsetилиDateTime<Utc>. - Смешанные значения — в TypeScript получается union-тип; более строгие языки используют обобщённый тип, например
Any,interface{},Objectилиserde_json::Value. - Имена — ключи, которые не являются допустимыми идентификаторами, преобразуются (snake_case для Python и Rust, PascalCase для Go и C#, camelCase для Java, Kotlin и Swift) и сопоставляются обратно через JSON-аннотации языка.
Результат для каждого языка
| Язык | Стили | Сопоставление JSON |
|---|---|---|
| TypeScript | interface, type alias | Ключи в кавычках там, где это нужно |
| Python | dataclass, TypedDict, Pydantic v2 | Field(alias=…) |
| Go | struct | `json:"name,omitempty"` теги |
| Java | record, POJO | Jackson @JsonProperty |
| C# | record, class | System.Text.Json [JsonPropertyName] |
| Kotlin | data class | kotlinx.serialization @SerialName |
| Swift | struct | Codable с CodingKeys |
| Rust | struct | serde #[serde(rename)] |
Советы
Вставляйте ответ, в каждом массиве которого есть несколько элементов — чем больше примеров, тем точнее работает определение необязательных и nullable полей. Нет тестовых данных? Создайте их с помощью генератора моков. Для настроек, специфичных только для TypeScript, например readonly и синтаксиса массивов, есть отдельный конвертер JSON в TypeScript с дополнительными параметрами. Сначала приведите неаккуратный JSON в порядок с помощью форматировщика JSON.
Также ищут как: json в typescript, json в python dataclass, json в go struct, json в java класс, json в c# класс, json в kotlin data class, json в pydantic.
Инструменты, которые хорошо сочетаются с JSON в типы
- Поиск пути в JSON — Вставьте payload webhook или ответ API, нажмите на любое значение и скопируйте его точный путь — для JavaScript, JSONPath, jq, Python, PHP, n8n и Make.
- JSON в YAML — Вставьте JSON и получите аккуратный YAML для манифестов Kubernetes, Docker Compose, GitHub Actions или любого конфигурационного файла.
- cURL в код — Вставьте команду curl из документации к API или пункт «Copy as cURL» из DevTools браузера, и вы получите готовый код для шести языков с сохранёнными заголовками, телом запроса и авторизацией.
- Валидатор JSON Schema — Вставьте схему и JSON, чтобы увидеть, какие значения нарушают какие правила, или сгенерируйте стартовую схему по примеру данных.