API
API BoxHero позволяет разработчикам интегрировать наши возможности управления запасами со сторонними приложениями для эффективного получения данных и взаимодействия с ними.
Справочник API
Для подробной документации по конечным точкам, пожалуйста, посетите: https://rest.boxhero-app.com/docs/api
Конечная точка
Все запросы API должны направляться на следующий базовый URL: https://rest.boxhero-app.com
Аутентификация
Все запросы API должны включать Authorization заголовок с токеном Bearer:
Чтобы получить API-токен:
Войдите в свою учетную запись BoxHero на Desktop (Web).
Перейдите к
Настройки>Интеграции.Сгенерируйте новый API-токен.
Выполнение запросов
Вот пример запроса API для получения товаров.
Ограничения частоты запросов
Чтобы обеспечить стабильность системы, мы вводим следующие ограничения частоты запросов:
5 запросов в секунду для каждой конечной точки.
Если вы достигнете лимита запросов, вы увидите сообщение об ошибке со следующим:
X-Ratelimit-Limit- Максимальное количество запросов в минутуX-Ratelimit-Remaining- Осталось запросовX-Ratelimit-Reset- Время (в секундах), оставшееся до сброса счетчика запросов
Ответы
Успех
Ответы со статус-кодами HTTP в диапазоне 200 указывают на успешную обработку API.
Ошибка
Статус-коды в диапазоне 400 или 500 указывают на сбой запроса API:
Диапазон 400: ошибка на стороне клиента из-за информации, предоставленной с запросом (например, отсутствуют обязательные параметры).
Диапазон 500: ошибка на стороне сервера.
Пример ответа с ошибкой:
id : Уникальный идентификатор для определения ошибки.
type : Код в виде URL, который идентифицирует тип ошибки.
title : Предоставляет содержание ошибки в удобочитаемом виде.
correlation_id : Указывает на ID запроса, связанного с ошибкой.
others : Могут быть включены дополнительные поля для предоставления дополнительной информации, такой как "given" в примере.
Распространенные типы ошибок
/errors/not-found
Запрошенный ресурс не найден (например, товар с определенным ID не существует).
/errors/invalid-request
Недопустимые параметры в запросе.
/errors/invalid-team-mode
Запрошенный запрос не может быть обработан в текущем режиме команды (например, использование локации API поиска в Базовом режиме).
/errors/tokens/required
Отсутствует API-токен.
/errors/tokens/invalid
Недействительный API-токен (например, срок действия API-токена истек).
/errors/too-many-requests
Превышен лимит запросов.
/errors/unhandled
Необработанная ошибка на стороне сервера.
/errors/core/usage-limit-exceeded
Достигнут лимит использования. Требуется обновление плана.
Пагинация
Для конечных точек, возвращающих большие наборы данных (например, списки товаров, списки транзакций), API представления списка ограничивает количество элементов, возвращаемых в одном запросе, с помощью пагинации. Мы используем пагинацию на основе курсора:
Чтобы определить, требуется ли пагинация, проверьте, присутствуют ли в теле запроса конечной точки параметры, связанные с пагинацией, в документации API.
Параметры пагинации
has_more: Булево значение, которое указывает, есть ли данные за пределами текущей страницы.cursor: Предоставляет значение курсора для получения следующей страницы.
Получение следующей страницы
Проверьте,
has_moreявляется лиtrue. Это означает, что доступна еще одна страница.Если
true, отправьте еще один запрос, включивcursor={received cursor value}в параметры. Это вернет последующие данные.Повторяйте, пока
has_moreявляется лиfalseне будет достигнуто, чтобы получить полный список.
Поддержка и обратная связь
Если вы столкнетесь с проблемами или вам потребуется дополнительная функциональность API, пожалуйста, свяжитесь с нашей службой поддержки. Мы будем рады вашим отзывам по улучшению API и запросам на новые функции.
Последнее обновление