custombatch
es un método común que te permite agrupar varias llamadas a la API, conocidas como "entradas", en una sola solicitud HTTP. Cada entrada solo hace referencia a una única llamada al método.
Los lotes personalizados son una buena opción en las siguientes situaciones:
- Recién comienzas a usar la API y tienes muchos datos de productos para subir.
- Si necesitas sincronizar datos locales con el servidor, debes enviar muchas actualizaciones y eliminaciones.
Realiza solicitudes por lotes
Enviar solicitudes por lotes es similar a enviar llamadas a la API en paralelo. Ten en cuenta que no hay garantía de que el orden de las entradas definido en la solicitud esté en el orden en que se ejecutan. Te recomendamos que no uses llamadas interdependientes en una sola solicitud por lotes (como crear y actualizar el mismo envío).
Del mismo modo, las respuestas recibidas para las solicitudes por lotes pueden mostrarse en un orden diferente al de las entradas de solicitud. Se puede usar BatchId
para correlacionar las solicitudes y respuestas, ya que las respuestas se pueden mostrar desordenadas.
Puedes agrupar solicitudes en la API llamando al método custombatch
adecuado:
Recursos y sus métodos por lotes personalizados correspondientes | |
---|---|
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 |
Límites
Para evitar errores cuando se suben lotes grandes, recomendamos limitar el tamaño
de las solicitudes custombatch
a un máximo de 1,000 entradas. Se aplican los siguientes valores máximos a las solicitudes custombatch
:
- 50,000 entradas por solicitud
custombatch
- Tamaño de transferencia de 32 MB
Las llamadas que superen los valores máximos generarán los siguientes errores request_too_large
:
"Too many requests in a batch."
"Request payload size exceeds the limit: %d bytes."