API широко использует информирование при помощи HTTP кодов ответов.
При каждой ошибке, помимо кода ответа, в теле ответа выдаётся дополнительная информация, позволяющая понять причину ошибки.
Все ошибки платформы выдаются в формате:
{
"type": "...",
"value": "...",
"description": "..."
}
В случае невозможности найти запрашиваемый ресурс вернётся ответ 404 Not Found и объект:
{
"type": "not_found",
"value": "doctor",
"description": "Доктор не найден"
}
При ошибке в параметрах запроса в ответ придёт 400 Bad Request и объект:
{
"type": "bad_argument",
"value": "doctor_id",
"description": null
}
В случае непредвиденной ситуации API вернёт 500 и объект:
{
"type": "internal_server_error",
"description": "В данный момент сервер не может обработать ваш запрос"
}
В редких случаях ошибки с 5** кодами могут возвращаться с телом не содержащим валидный json. Приложение должно в таких случаях ориентироваться только на код ответа.
Код | Тип | Описание |
---|---|---|
400 | bad_argument | Некорректное значение параметра запроса |
400 | limit_exceeded | Выполнение операции приведёт к превышению лимита |
402 | insufficient_funds | Недостаточно средств для выполнения операции |
403 | oauth | Ошибка авторизации |
403 | forbidden | Доступ запрещён |
404 | not_found | Запрашиваемый ресурс не найден |
409 | conflict | Выполнение операции приводит к конфликту |
500 | internal_server_error | Выполнение операции приводит к ошибке сервера |