JSON
JSON Schema Validator
Перевірка JSON-даних на відповідність JSON Schema (стиль draft-07) — з точним шляхом і поясненням для кожного порушення.
JSON Schema описує очікувану структуру JSON-документа — які поля обовʼязкові, якого вони типу, які обмеження на значення. Інструмент перевіряє конкретні дані проти такої схеми й показує точний шлях до кожного порушення.
Як користуватися
- Вставте JSON Schema в одне поле, дані для перевірки — у друге.
- Результат показує кожне порушення окремо: точний шлях до проблемного поля та зрозуміле пояснення, чому воно не відповідає схемі.
- Валідні дані одразу позначаються як такі, що повністю відповідають схемі.
Типові сценарії
- Перевірка відповіді API стороннього сервісу заявленій документації перед інтеграцією.
- Налагодження власної JSON Schema — чому валідні на перший погляд дані відхиляються.
- Валідація конфігураційного файлу проти схеми перед деплоєм.
Що варто памʼятати
JSON Schema має кілька версій (draft-07, 2019-09, 2020-12) з невеликими відмінностями в синтаксисі — перевіряйте, яку версію очікує ваш валідатор у продакшн-коді.
required перевіряє лише наявність поля, а не його значення — порожній рядок чи null усе одно вважається «наявним» полем, якщо тип це дозволяє.
Стаття про цей інструмент: JSON Schema: як описати й перевірити структуру JSON
Часті запитання
Що означає помилка валідації?
Це означає, що значення за вказаним шляхом порушує якесь правило зі схеми: неправильний тип, відсутнє обов’язкове поле, невідповідність шаблону (pattern) або значення поза дозволеним діапазоном. Для кожної помилки показано точний шлях і пояснення.
Яку версію JSON Schema підтримує інструмент?
Валідація орієнтована на стиль draft-07 — найпоширеніший набір ключових слів (type, required, properties, pattern, minimum/maximum, enum тощо).
Чи безпечно перевіряти тут дані з продакшену?
Так, і схема, і дані обробляються повністю локально у браузері на JavaScript, без відправки на сервер.
Що робить additionalProperties: false?
За замовчуванням об’єкт може містити будь-які поля понад описані в properties. additionalProperties: false забороняє зайві поля — корисно, щоб зловити одруку в назві ключа чи випадково залишене debug-поле.
Чи можна описати поле, яке допускає кілька типів?
Так, через масив у type, наприклад "type": ["string", "null"], якщо поле може бути рядком або null. Для складніших варіантів використовують ключові слова oneOf, anyOf чи allOf.