Код состояния HTTP для частичного успешного запроса

У меня есть приложение, которое отправляет сообщения пользователям. В почтовом запросе передается строка XML, содержащая всех пользователей, которые должны получить это конкретное сообщение. Если какой-либо из пользователей в списке не существует, я возвращаю список пропавших без вести клиенту для дальнейшей оценки.

Теперь я спрашиваю себя, каков будет правильный код статуса для приложения, говорящего, что запрос был принят, но были вещи, которые нельзя было сделать.

Проблем можно было бы избежать, если бы не было разрешено включать отсутствующих пользователей в список. Тогда при отправке будет просто ошибка 4xx. Но так формировать API нет смысла. С другой стороны, я мог бы рассматривать состояние ошибки как чисто конкретное приложение. Но посылать 200 кажется неправильным. И было бы неплохо дать клиенту подсказку, когда нужно внимательно изучить ответ об ошибке. например чтобы избежать отправки сообщений этим пользователям снова и снова

96
задан Norbert Hartl 12 December 2011 в 10:33
поделиться