Solicitudes por lotes

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 sola llamada al método.

El procesamiento por lotes personalizado es una buena opción en las siguientes ocasiones:

  • Recién empiezas a utilizar la API y tienes muchos datos de productos para cargar.
  • Debes sincronizar los datos locales con el servidor enviando 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 se garantiza que el orden de las entradas definidas en la solicitud sea el orden en el 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 la solicitud. Se puede usar el BatchId para correlacionar solicitudes y respuestas, ya que las respuestas pueden mostrarse fuera de secuencia.

Puedes enviar solicitudes por lotes en la API llamando al método custombatch correspondiente:

Recursos y sus métodos de procesamiento 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 subas lotes grandes, te recomendamos que limites el tamaño de las solicitudes custombatch a un máximo de 1,000 entradas. Se aplican los siguientes máximos a las solicitudes custombatch:

  • 50,000 entradas por solicitud custombatch
  • Tamaño de transferencia de 32 MB

Las llamadas que superan los máximos generan los siguientes errores request_too_large:

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