Envía varias solicitudes a la vez

En la Content API for Shopping, una solicitud por lotes puede tener varias entradas, y cada entrada puede ser cualquier método (insertar, actualizar, borrar o personalizado) definido en el recurso.

La API de Merchant no ofrece métodos de lotes personalizados. En su lugar, puedes organizar la ejecución en paralelo de solicitudes individuales.

Con la biblioteca cliente

Si usas la biblioteca cliente, considera este código de la API de Shopping Content.

ProductsCustomBatchResponse batchResponse =
        content.products().custombatch(batchRequest).execute();

Escribe el equivalente de la API de Merchant de la siguiente manera.

List<ApiFuture<ProductInput>> futures;

for (InsertProductInputRequest request : requests) {
    futures.add(productInputsServiceClient.insertProductInputCallable().futureCall(request));
}

List<ProductInput> responses;

for (ApiFuture<ProductInput> future : futures) {
    responses.add(future.get());
}

Sin la biblioteca cliente

Si no usas la biblioteca cliente, realiza el procesamiento por lotes como se explica en Cómo procesar solicitudes por lotes.

Por ejemplo, considera una publicación de la API de Shopping Content como la siguiente.

POST https://shoppingcontent.googleapis.com/content/v2.1/products/batch

{
  "entries": [
    {
      "method": "insert",
      "product": { … }
    } … ]
}

Con la API de Merchant, se escribiría algo como lo siguiente.

POST https://merchantapi.googleapis.com/batch
Content-Length: content_length
content-type: multipart/mixed; boundary="================="

--=================
Content-Type: application/http
Content-Transfer-Encoding: binary

POST v1beta/accounts/123/productInputs:insert
Content-Type: application/json
accept: application/json

{...}
--=================
…