Solicitações em lote

custombatch é um método comum que permite agrupar várias chamadas de API, conhecidas como "entradas", em uma única solicitação HTTP. Cada entrada faz referência a uma única chamada de método.

O lote personalizado é uma boa opção quando:

  • Você acabou de começar a usar a API e tem muitos dados de produtos para fazer upload.
  • Você precisa sincronizar os dados locais com o servidor enviando várias atualizações e exclusões.

Fazer solicitações em lote

Enviar solicitações em lote é semelhante a enviar chamadas de API em paralelo. Não há garantia de que a ordem das entradas definidas na solicitação será a mesma em que elas serão executadas. Recomendamos não usar chamadas interdependentes em uma única solicitação em lote, como criar e atualizar o mesmo envio.

Da mesma forma, as respostas recebidas para solicitações em lote podem ser retornadas em uma ordem diferente da das entradas de solicitação. O BatchId pode ser usado para correlacionar solicitações e respostas, já que elas podem ser retornadas fora de sequência.

É possível agrupar solicitações na API chamando o método custombatch adequado:

Recursos e os métodos de lote personalizados correspondentes
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

Limites

Para evitar erros ao fazer upload de lotes grandes, recomendamos limitar o tamanho das solicitações custombatch a um máximo de 1.000 entradas. Os máximos a seguir se aplicam a solicitações custombatch:

  • 50.000 entradas por solicitação custombatch
  • Tamanho da transferência de 32 MB

As chamadas que excedem os máximos resultam nos seguintes erros request_too_large:

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