Устранение распространённых ошибок REST API
При работе с API Wrike ошибки неизбежны. Они могут возникать по разным причинам, таким как недостаточные права пользователя, ограничения лицензии аккаунта или неправильное форматирование. В этой статье мы рассмотрим самые распространённые ошибки API и предложим шаги по устранению неполадок, которые помогут быстро выявить и исправить проблемы.
Важно
Всегда перепроверяйте документацию по API.
Коды статусов
Возможная причина
Неверный базовый URL.
Шаги по устранению неполадок
Проверьте, что ваш базовый URL указан правильно.
Wrike хранит данные клиентов в нескольких дата-центрах, расположенных в США и Европейском союзе. Чтобы получить доступ к своим данным, используйте соответствующий базовый URL в зависимости от их расположения. Вы можете определить свой базовый URL, посмотрев на адресную строку браузера при открытии аккаунта Wrike.
Возможная причина
- Неверный тип запроса по протоколу HTTP, важные данные запроса отсутствуют или искажены (напр., отсутствует вложение).
- Заголовок отсутствует.
- Недопустимое имя параметра запроса.
- Параметр запроса не поддерживается для данной конечной точки.
Пример: пользователь пытается использовать параметр 'firstName' в вызове GET/contacts
Шаги по устранению неполадок
- Проверьте документацию API, чтобы убедиться, что ваш запрос сформирован правильно: все параметры должны быть допустимыми и поддерживаться данной конечной точкой.
- Убедитесь, что в запрос включены все необходимые заголовки.
Возможная причина
- Отсутствует обязательный параметр.
- Значение параметра указано или отформатировано неверно.
Шаги по устранению неполадок
- Перепроверьте документацию и убедитесь, что в вашем вызове присутствуют все параметры, отмеченные как обязательные.
- Убедитесь, что значение параметра корректно и соответствует формату, описанному в документации.
Возможная причина
Используется неверный метод API.
Пример: пользователь пытается отправить вызов PUT/tasks, который не поддерживается.
Шаги по устранению неполадок
Убедитесь, что используемый вами метод поддерживается для этой конечной точки и указан корректно.
Возможная причина
Запрошенное действие недоступно из-за ограничений лицензии/квоты и т. д.
-
У пользователя нет необходимых разрешений для выполнения запрошенного действия.
Пример: пользователь с тарифом Business Plus subscription вызывает метод GET/data_export.
- У аккаунта нет необходимой лицензии для выполнения операции.
Пример: Collaborator пытается изменить название папки. - Невозможно выполнить операцию.
Пример: пользователь пытался создать уже существующую зависимость.
Шаги по устранению неполадок
- Проверьте права пользователя в настройках аккаунта Wrike. Убедитесь, что у пользователя есть необходимые права для доступа к запрашиваемому ресурсу.
- Проверьте лицензию аккаунта. Для использования этого метода API может потребоваться обновление лицензии.
- Проверьте, может ли пользователь выполнить ту же операцию в интерфейсе.
Возможная причина
Превышен лимит частоты запросов с одного IP-адреса (5000/мин) или на одного пользователя (400/мин). Первые 400 запросов в минуту обрабатываются, все последующие возвращают статус 429.
Шаги по устранению неполадок
- Если вы получаете ответ 429 HTTP, попробуйте использовать повторные запросы с экспоненциальной задержкой.
- Распределите нагрузку между несколькими пользователями.
- Если проблема сохраняется, свяжитесь с нашей службой поддержки
Возможная причина
Превышен лимит запросов
Шаги по устранению неполадок
Возможная причина
- Сервер столкнулся с непредвиденным условием, которое помешало выполнить запрос.
- У пользователя нет доступа к запрашиваемому ресурсу
Шаги по устранению неполадок
- Проверьте страницу статуса Wrike, чтобы узнать, есть ли массовые проблемы.
- Если массовых сбоев нет, свяжитесь с нашей службой поддержки для дальнейшего изучения.
Возможная причина
Вы пытаетесь получить ресурс, который не существует.
Пример: пользователь отправляет запрос для получения задач из пустой папки с помощью вызова GET/folders/{folderId}/tasks
Шаги по устранению неполадок
Убедитесь, что ресурс (например, задача/папка/проект и т. д.) существует в аккаунте.
Полезные советы
Определение аккаунта, к которому принадлежит ваш токен
У вас несколько аккаунтов Wrike, и вы не уверены, к какому из них привязан ваш токен? Не переживайте, определить это очень просто. Просто выполните вызов GET/account, чтобы убедиться.
Определение владельца вашего токена
Если вы тестировали API под несколькими пользователями и хотите определить владельца конкретного токена, это можно сделать просто и напрямую. Получите данные профиля пользователя, отправив запрос GET/contacts?me=true.
Если трудности сохраняются, пожалуйста, свяжитесь с нашей Службой поддержки, и мы будем рады помочь вам.
Чтобы ускорить решение проблемы, укажите следующую информацию:
- Вашу цель при выполнении вызова API.
- Полный API-запрос, который вы отправили.
- Ответ, который вы получили.
-
[В случае проблем с разрешениями или токеном]
Среднюю часть токена, чтобы мы могли декодировать его со своей стороны.
Ниже приведён пример токена доступа. Нам понадобится часть между двумя точками (выделена жирным), а части до и после точек отправлять не нужно:eyJ0dCI6InAiLCJhbGciOiJIUzI1NiIsInR2IjoiMSJ9.eyJkIjoie1wiYVwiOjM5MjA2MDIsXCJpXCI6NzIyMzMxOCxcImNcIjo0NjIwNzcwLFwidVwiOjY5NzA4NjcsXCJyXCI6XCJVU1wiLFwic1wiOltcIldcIixcIkZcIixcIklcIixcIlVcIixcIktcIixcIkNcIixcIkRcIixcIk1cIixcIkFcIixcIkxcIixcIlBcIl0sXCJ6XCI6W10sXCJ0XCI6MH0iLCJpYXQiOjE1OTk5MDk0MzV9.q3qOJs2swWSCgZl1ueKYsUyhME4RBD4cl53vZ0pwDccВажно
Никогда не отправляйте весь токен! Передача вашего постоянного токена равносильна передаче пароля от аккаунта Wrike.