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."