Batchanfragen

custombatch ist eine gängige Methode, mit der Sie mehrere API-Aufrufe, sogenannte „Einträge“, in einer einzigen HTTP-Anfrage gruppieren können. Jeder Eintrag verweist nur auf einen einzelnen Methodenaufruf.

Ein benutzerdefinierter Batch ist in folgenden Fällen eine gute Wahl:

  • Sie haben gerade mit der Verwendung der API begonnen und müssen viele Produktdaten hochladen.
  • Sie müssen lokale Daten mit dem Server synchronisieren, indem Sie viele Aktualisierungen und Löschungen senden.

Batchanfragen stellen

Das Senden von Batchanfragen ähnelt dem parallelen Senden von API-Aufrufen. Beachten Sie, dass es keine Garantie dafür gibt, dass die in der Anfrage definierten Einträge in der Reihenfolge ihrer Ausführung erfolgen. Wir empfehlen, keine voneinander abhängigen Aufrufe in einer einzelnen Batchanfrage zu verwenden (z. B. zum Erstellen und Aktualisieren derselben Sendung).

Ebenso können die für aufeinanderfolgenden Anfragen erhaltenen Antworten in einer anderen Reihenfolge zurückgegeben werden als die Anfrageeinträge. Mit BatchId lassen sich Anfragen und Antworten korrelieren, da die Antworten möglicherweise außerhalb der angegebenen Reihenfolge zurückgegeben werden.

Sie können in der API Batchanfragen ausführen, indem Sie die entsprechende custombatch-Methode aufrufen:

Ressourcen und ihre entsprechenden benutzerdefinierten Batchmethoden
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

Limits

Um Fehler beim Hochladen großer Batches zu vermeiden, empfehlen wir,die Größe von custombatch-Anfragen auf maximal 1.000 Einträge zu beschränken. Für custombatch-Anfragen gelten die folgenden Höchstwerte:

  • 50.000 Einträge pro custombatch-Anfrage
  • Übertragungsgröße: 32 MB

Aufrufe, die die Höchstwerte überschreiten, führen zu den folgenden request_too_large-Fehlern:

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