Коды ответа на статус

Следующие коды состояния могут быть возвращены в ответах HTTP.

HTTP-код HTTP-описание Примечания
2хх ХОРОШО Это не ошибка; вернулся с успехом. Это также следует использовать в случае сбоев бизнес-логики (например, заполняется booking_failure в CreateBookingResponse ).
400 Неверный запрос Неверный запрос/неверные аргументы (продавец, услуга, слот не найден, попытка забронировать недействительный слот, отмена бронирования, которого никогда не было).
401 Несанкционированный Неаутентифицирован (неверные учетные данные, повторите вход). В запросе нет действительных учетных данных аутентификации для операции.
403 Запрещенный Разрешение отклонено/запрещено (вызывающий абонент известен и отклонен). Этот ответ нельзя использовать для отклонений, вызванных исчерпанием какого-либо ресурса (вместо этого используйте Too Many Requests для таких ошибок). Forbidden не следует использовать, если вызывающий абонент не может быть идентифицирован (вместо этого используйте Unauthorized для таких ошибок).
404 Не найдено Не найден (ресурс не найден, неверный URL-адрес, включая недействительные RPC)
409 Конфликт Операция была прервана, как правило, из-за проблемы параллелизма, например сбоя проверки секвенсора или прерывания транзакции.
429 Слишком много запросов Какой-то ресурс исчерпан, возможно, квота на пользователя или, возможно, во всей файловой системе недостаточно места.
499 Закрытый запрос клиента Операция была отменена, как правило, вызывающей стороной.
500 Внутренняя ошибка сервера Внутренние ошибки. Это означает, что некоторые инварианты, ожидаемые базовой системой, были нарушены. Этот код ошибки зарезервирован для серьезных ошибок.
501 Не реализована Операция не реализована или не поддерживается/включена в этом сервисе.
503 Сервис недоступен В настоящее время услуга недоступна. Скорее всего, это временное состояние, которое можно исправить, повторив попытку с отсрочкой.
504 Тайм-аут шлюза Срок истек до завершения операции. Для операций, изменяющих состояние системы, эта ошибка может возвращаться, даже если операция завершилась успешно. Например, успешный ответ от сервера мог быть отложен на время, достаточное для истечения крайнего срока.

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