Проверка JSON ответа API, типов и вложенных полей
Checkcraft — программа для проверки API и логов без кода, есть бесплатная версия. Скачать без регистрации →
Вчера amount был числом, сегодня стал строкой. Визуально ответ почти не изменился, но клиент может перестать его обрабатывать. Проверка одного текста значения этого не всегда выявляет.
В учебном контракте amount должен быть целым числом не меньше нуля. Строка oops не проходит, а дополнительное поле debug обнаруживается белым списком.

Выбрать источник и путь
«JSON поле ответа» работает с ответом HTTP-запроса. «Поле JSON/источника логов» удобно для текущего разобранного JSON и вставленных данных. Для вложенного объекта путь может выглядеть как payment.orderId. Для всех элементов массива нужен обход, а не путь к нулевому элементу.
Различать число и строку
Тип is_integer подходит целым числам, is_float используется для соответствующей числовой проверки, is_string для строки, is_boolean для JSON true и false, is_uuid для UUID. Выбирайте тип из требований своего поля. Значения 100 и "100" не следует молча считать одним контрактом.
{"amount":100,"active":true,"payment":{"orderId":"ORDER-42"}}Различать null и отсутствующее поле
Отсутствующий ключ, null, пустая строка и пустой массив имеют разный смысл в контракте. Явно опишите, какой вариант разрешён. Не превращайте null в строку "null". Проверка notEmpty отвечает на вопрос о заполненности и не является универсальной проверкой различия всех этих случаев. При генерации из одного примера AI не узнает, какие варианты допустимы, если этого нет в требованиях.
Сопоставить связанные поля
В приложенном примере переменных шаг «Извлечь в переменную» берёт order.id в orderId. Следующий шаг сверяет payment.orderId с %orderId%. Так проверяется связь внутри ответа без жёстко заданного номера заказа.

Если API возвращает XML
Для XML есть отдельные шаги тегов, обхода узлов и XML Whitelist. JSONPath нельзя механически перенести в XML-проверку. Отдельное руководство по XML содержит собственные данные и тест-кейс.
Повторить на готовых данных
Быстрый опыт ниже выполняется в редакторе тест-кейса. На снимках показан подробный отчёт из HTTP-прогона или Log-прогона. Для HTTP-прогона верните учебный JSON или XML из локального мока, выполните импортированный тест-кейс и откройте «Анализ результатов», «Детально», «Со структурами». Для Log-прогона загрузите учебные данные в источник логов, включите «Без запроса», выполните проверку и откройте «Детально», «Подробно».
Здесь лежит учебный тест-кейс для Checkcraft, правильный JSON и вариант с намеренной ошибкой. Файлы доступны без регистрации. Это данные для упражнения, а не доступ к чужому API.
Если приложение уже открыто
Создайте коллекцию, конструктор проверки и тест-кейс через контекстное меню дерева. В редакторе нажмите «Импорт» и выберите файл тест-кейса. Откройте добавленный тест. Скопируйте содержимое правильного JSON и нажмите «Вставить данные для анализа». Затем «Запустить тест-кейс» и вкладку «Результат».
Повторите те же действия с испорченным JSON, сохранив правила. В первом запуске ожидается успешная проверка, во втором ошибка. Если результат отличается, сравните импортированный тест, источник данных и текст отчёта.
Сверить с полученными при подготовке страницы отчётами можно по файлам успешного прогона и прогона с ошибкой. Примеры проверены 14 сентября 2026 года на текущем исходном коде приложения.
Валидный JSON ещё не означает правильный ответ
Синтаксическая проверка отвечает на вопрос, можно ли разобрать документ. Проверка структуры и типов отвечает на вопрос, соответствуют ли поля требованиям. Бизнес-проверка дополнительно сверяет смысл. Документ {"total":2500} синтаксически корректен, но сумма может быть неверной. В Checkcraft задайте отдельное правило по ожидаемому значению или расчёту. Это руководство не обещает выполнение произвольной JSON Schema.
Что выбрать для файла, структуры и массива
Для отсутствующих и лишних полей откройте проверку состава JSON. Для каждого объекта в items используйте проверку массива. Суммы и округление разобраны в примере расчётов. При ручной проверке документа используйте чек-лист с ожидаемыми значениями.
JSON Schema и проверка конкретных значений
Валидатор JSON Schema и сохранённое правило проверки поля решают связанные, но разные задачи. Здесь описаны правила Checkcraft для ответа. Произвольная схема JSON Schema не считается автоматически исполненной после импорта OpenAPI. Для отдельного типа API есть разбор ответа GraphQL, а для сравнения с хранилищем проверка БД в Pro.
Посмотреть, как это работает на ваших данных
Можно начать с учебного файла на этой странице, увидеть найденную ошибку и затем заменить данные своим обезличенным примером. Для Windows и Linux доступна Free без ограничения срока.
Скачать FreeКак получить и запустить приложениеСкачивание без регистрации и почты, архив готов за пару минут. Состав бесплатной версии опубликован на странице тарифов.