Задать вопрос
@j_KS

В каком случае корректно возвращать 422 вместо 400 при валидации JSON?

Есть REST API, принимающий JSON.
Если структура запроса корректная (валидный JSON), но одно из полей не проходит бизнес-валидацию (например, email уже существует), какой код статуса корректнее вернуть — 400 или 422?
В чем сейчас принятая практика?
  • Вопрос задан
  • 111 просмотров
Подписаться 1 Простой 3 комментария
Помогут разобраться в теме Все курсы
  • Stepik
    Практика по REST и SOAP API на тренажере «Битва покемонов»
    4 недели
    Далее
  • Нетология
    Go-разработчик с нуля + нейросети
    9 месяцев
    Далее
  • Skillbox
    Профессия PHP-разработчик с нуля до PRO
    7 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@Everything_is_bad
400 очень общий, так что для валидации данных больше подходит 422, но конкретно для "какое-либо поле уже существует" очень подходит 409
Но на самом деле, статус код это больше про конкретные соглашения между сторонами и они могу отличаться от общепринятых.

ЗЫ у меня есть проект, где ошибки реально размазаны по 4XX кода, там я никогда не помню какую когда ставить и всегда открываю специальный док с описанием, а есть, где просто выдается ошибка 400 с {'error': 'текстовое описание ошибки'}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы