Ошибки

Обрабатывайте ошибки API и коды ответов

Обработка ошибок

WebAsk API использует стандартные HTTP коды состояния для индикации успеха или неудачи запросов. Все ошибки возвращаются в едином формате JSON.

Формат ошибок

Структура ответа об ошибке

Все ошибки возвращаются в едином формате с кодом ошибки, сообщением и дополнительной информацией.

Пример ошибки
{
  "success": false,
  "error": {
    "code": "validation_error",
    "message": "Поле 'title' обязательно для заполнения",
    "details": {
      "field": "title",
      "value": null,
      "constraint": "required"
    },
    "request_id": "req_1234567890",
    "timestamp": "2024-01-15T10:30:00Z"
  }
}

HTTP коды состояния

Успешные ответы

Код Описание Использование
200 OK Успешный GET, PUT запрос
201 Created Успешный POST запрос
204 No Content Успешный DELETE запрос

Ошибки клиента (4xx)

Код Описание Причина
400 Bad Request Некорректные параметры запроса
401 Unauthorized Отсутствует или неверный токен
403 Forbidden Недостаточно прав доступа
404 Not Found Ресурс не найден
422 Unprocessable Entity Ошибки валидации данных
429 Too Many Requests Превышен лимит запросов

Ошибки сервера (5xx)

Код Описание Действие
500 Internal Server Error Повторите запрос позже
502 Bad Gateway Временная недоступность сервиса
503 Service Unavailable Сервис временно недоступен

Коды ошибок API

Ошибки аутентификации

unauthorized

Неверный токен авторизации

{
  "status": false,
  "error": {
    "code": "unauthorized",
    "message": "Неверный токен авторизации"
  }
}

token_expired

Токен истек, требуется обновление

access_denied

Нет доступа к ресурсу

access_denied_to_folder

Нет доступа к папке

Ошибки валидации

validation_error

Ошибка валидации данных

{
  "success": false,
  "error": {
    "code": "validation_error",
    "message": "Ошибки валидации",
    "details": {
      "errors": [
        {
          "field": "title",
          "message": "Поле обязательно для заполнения"
        },
        {
          "field": "questions",
          "message": "Должен содержать хотя бы один вопрос"
        }
      ]
    }
  }
}

invalid_question_type

Неподдерживаемый тип вопроса

Ошибки ресурсов

not_found

Ресурс не найден

answer_not_found

Ответ не найден

workspace_not_found

Рабочее пространство не найдено