Коды ошибок
Коды ошибок
На большинство веб-сокет запросов в случае какой-либо ошибки будет отправляться ответ следующего вида:
{
"type": 2,
"id": 1,
"payload": {
"errorCode": 200
}
}Стоит учесть, что HTTP-сервер, кроме статуса 400 Bad Request, в теле возвращает и код ошибки из списка ниже.
Пример:
{
"error": 310,
"error_description": "No task found for request_id: 052b0c6a-da5d-4f72-a408-6d1cb7dcad72"
}Ошибки протокола
Тип ошибок, связанный с форматом и валидностью сообщений WebSocket: нарушение
правил конверта (уникальность и монотонность id) или несоответствие payload
ожидаемому формату.
| Код | Название | Описание |
|---|---|---|
| 2 | INVALID_REQUEST_ID | id запроса был уже использован |
| 399 | WRONG_PAYLOAD_FORMAT | Неверный формат payload |
Сетевые ошибки
Тип ошибок, возникающий на сетевой уровне, например, не было установлено сетевое соединение из-за TLS-сертификата (102) или произошел таймаут (100).
| Код | Название | Описание |
|---|---|---|
| 100 | CONNECTION_ERROR | Ошибка соединения |
| 101 | CONNECTION_TIMEOUT | Истекло время ожидания соединения |
| 102 | TLS_ERROR | Ошибка TLS/SSL |
| 103 | UNSUPPORTED_PROTOCOL | Неподдерживаемый протокол |
| 104 | ROUTE_NOT_FOUND | Маршрут не найден |
Ошибки авторизации
Такой тип ошибок зачастую связан с запросом auth. При этом, если ваш токен был просрочен вы получите ошибку с кодом 203. В таком случае, нужно заново получить токен, заново установить соединение и авторизоваться.
| Код | Название | Описание |
|---|---|---|
| 200 | NOT_AUTHORIZED | Не авторизован |
| 201 | INVALID_CREDENTIALS | Неверные учётные данные |
| 202 | USER_DISABLED | Пользователь отключён |
| 203 | CREDENTIALS_EXPIRED | Учётные данные устарели |
| 204 | UNSUPPORTED_CREDENTIALS | Неверный тип токена |
Ошибки чатов
Такие ошибки возникают при взаимодействии с чатами, например, при удалении чата вы можете получить код 304, если был указан неверный chatId или чат не был найден на сервере.
| Код | Название | Описание |
|---|---|---|
| 300 | INTERNAL_ERROR | Внутренняя ошибка сервера |
| 301 | TIMEOUT | Таймаут операции |
| 302 | ACCESS_DENIED | Доступ запрещён |
| 303 | NOT_ENOUGH_RIGHTS | Недостаточно прав |
| 304 | CHAT_NOT_FOUND | Чат не найден |
| 305 | USER_IS_NOT_CHAT_PARTICIPANT | Пользователь не является участником чата |
| 306 | MESSAGE_NOT_FOUND | Сообщение не найдено |
| 307 | UNKNOWN_MESSAGE | Неизвестное сообщение |
| 308 | FILE_NOT_FOUND | Файл не найден |
| 309 | USER_IS_ALREADY_CHAT_PARTICIPANT | Пользователь уже состоит в чате |
| 310 | FILE_UPLOAD_FAILED | Ошибка загрузки файла на сервер |
| 311 | FILE_NOT_READY | Файл еще не готов |
| 312 | ROLE_NOT_FOUND | Роль не найдена |
Ошибки файлов 5.5.6+
Такие ошибки возникают при передаче файлов на сервер. Ранее при любой неуспешной загрузке возвращалась общая ошибка 310 (FILE_UPLOAD_FAILED). Теперь сервер возвращает более конкретный код, позволяющий точнее определить причину сбоя, например, 406, если размер файла превышает допустимый лимит, или 402, если указано некорректное имя файла.
| Код | Название | Описание |
|---|---|---|
| 400 | UNKNOWN | Неизвестная ошибка файла |
| 401 | NOT_ENOUGH_SPACE | Недостаточно места на сервере |
| 402 | BAD_FILE_NAME | Некорректное имя файла |
| 403 | FILE_UPLOAD_FORBIDDEN | Загрузка файла запрещена |
| 404 | FILE_NOT_FOUND | Файл не найден |
| 405 | FILE_NOT_READY | Файл ещё не готов |
| 406 | MAX_FILE_SIZE_EXCEEDED | Превышен максимальный размер файла |
| 407 | UPLOAD_TASK_NOT_FOUND | Задача загрузки не найдена |
| 408 | INVALID_FILE | Некорректный файл |