Генератор JSON Schema

Автоматически создайте JSON Schema (Draft-07) из любого примера JSON. Вставьте JSON и получите валидную схему мгновенно — без регистрации.

Отступ:

Входной JSON

Сгенерированная схема

Здесь появится ваша JSON Schema

Share this tool

Help others discover JSON Schema Generator

О генераторе JSON Schema

Как это работает

  • Вставьте или введите валидный JSON в левую панель
  • Инструмент рекурсивно анализирует каждый ключ и значение
  • Типы определяются автоматически: string, number, integer, boolean, object, array, null
  • Все присутствующие ключи перечисляются в массиве "required"
  • Полученная схема Draft-07 отображается справа

Типичные сценарии использования

  • Создание документации API и схем OpenAPI
  • Валидация JSON-пейлоадов в бэкенд-сервисах
  • Генерация типов TypeScript с помощью json-schema-to-typescript
  • Создание строгих контрактов данных между микросервисами
  • Документирование форматов конфигурационных файлов

Часто задаваемые вопросы

Что такое JSON Schema?

JSON Schema — это словарь, позволяющий аннотировать и проверять документы JSON. Он описывает структуру, типы и ограничения данных JSON, упрощая валидацию входных данных, создание документации и обмен контрактами данных между сервисами.

Какой черновик JSON Schema генерирует этот инструмент?

Инструмент генерирует JSON Schema Draft-07 — наиболее широко поддерживаемую версию. Draft-07 совместим с большинством валидаторов, редакторов и инструментов API, включая VS Code, Postman и OpenAPI 3.x.

Как работает вывод схемы?

Инструмент рекурсивно проверяет каждое значение в JSON. Для каждого ключа определяется тип JSON (string, number, integer, boolean, array, object или null), собираются все уникальные ключи объектов и помечаются как обязательные. Данные не отправляются на сервер.

Все ли ключи помечаются как обязательные?

По умолчанию каждый ключ, присутствующий в примере JSON, добавляется в массив "required". Если реальные данные могут содержать необязательные поля, просто удалите эти ключи из массива required в сгенерированной схеме.

Что происходит со значениями null?

Если значение в примере JSON равно null, инструмент генерирует тип "null". Если поле может содержать и другие типы, измените тип вручную на массив, например ["string", "null"].

Можно ли генерировать схему из массива JSON на корневом уровне?

Да. Если ваш JSON является массивом верхнего уровня, сгенерированная схема будет иметь тип "array" с подсхемой "items", выведенной из первого элемента.

Отправляются ли мои данные JSON на сервер?

Нет. Вся обработка происходит в вашем браузере на стороне клиента. JSON никогда не передаётся на наши серверы, поэтому конфиденциальные данные остаются в безопасности.

Можно ли использовать сгенерированную схему в спецификациях OpenAPI / Swagger?

Да. OpenAPI 3.x использует расширенное подмножество JSON Schema Draft-07, поэтому результат этого инструмента можно вставить прямо в раздел "schema" компонента OpenAPI с незначительными правками.

Что если в JSON есть глубоко вложенные объекты?

Инструмент полностью поддерживает произвольно вложенные структуры JSON. Каждый вложенный объект получает собственный блок "properties" с правильными аннотациями типов.

В чём разница между "number" и "integer" в JSON Schema?

JSON Schema различает "integer" (целые числа: 1, 42, -7) и "number" (любое числовое значение, включая десятичные: 3.14). Инструмент автоматически использует "integer", если значение не имеет дробной части.

Можно ли настроить схему после генерации?

Безусловно. Результат — это редактируемый текст. Распространённые настройки: добавление полей "description", ограничение строк с помощью "minLength"/"maxLength" или "pattern", добавление массивов "enum" и изменение списка "required".

Что делает опция "additionalProperties: false"?

Когда включена, в каждый объект схемы добавляется "additionalProperties: false". Это указывает валидаторам отклонять ключи, не перечисленные явно в "properties". Полезно для строгих API-контрактов.

Share ToolsZone

Help others discover these free tools!

Поделиться страницей

Генератор JSON Schema — вывод схемы из JSON онлайн