Пакетные запросы

custombatch — это распространенный метод, который позволяет группировать несколько вызовов API, известных как «записи», в один HTTP-запрос. Каждая запись ссылается только на один вызов метода.

Изготовленная на заказ партия является хорошим выбором, когда:

  • Вы только начали использовать API и вам нужно загрузить много данных о продуктах.
  • Вам необходимо синхронизировать локальные данные с сервером, отправляя множество обновлений и удалений.

Делайте пакетные запросы

Отправка пакетных запросов аналогична параллельной отправке вызовов API. Обратите внимание, что нет никакой гарантии, что порядок записей, определенный в запросе, будет соответствовать порядку их выполнения. Мы рекомендуем не использовать взаимозависимые вызовы в одном пакетном запросе (например, при создании и обновлении одной и той же поставки).

Аналогичным образом, ответы, полученные на пакетные запросы, могут быть возвращены в порядке, отличном от порядка записей запроса. BatchId можно использовать для корреляции запросов и ответов, поскольку ответы могут возвращаться вне последовательности.

Вы можете пакетировать запросы в API, вызвав соответствующий метод custombatch :

Ресурсы и соответствующие им пользовательские пакетные методы.
Accounts accounts.custombatch
Accountstatuses accountstatuses.custombatch
Accounttax accounttax.custombatch
Datafeeds datafeeds.custombatch
Datafeedstatuses datafeedstatuses.custombatch
Localinventory localinventory.custombatch
Liasettings liasettings.custombatch
Pos pos.custombatch
Products products.custombatch
Productstatuses productstatuses.custombatch
Shippingsettings shippingsettings.custombatch

Пределы

Чтобы избежать ошибок при загрузке больших пакетов, мы рекомендуем ограничить размер запросов custombatch максимум 1000 записей. К запросам custombatch применяются следующие максимальные значения:

  • 50 000 записей на запрос custombatch
  • Размер передачи 32 МБ

Вызовы, превышающие максимальные значения, приводят к следующим ошибкам request_too_large :

  • "Too many requests in a batch."
  • "Request payload size exceeds the limit: %d bytes."