Batchanfragen

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

Der benutzerdefinierte 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öschvorgänge senden.

Batchanfragen stellen

Das Senden von Batchanfragen ähnelt dem parallelen Senden von API-Aufrufen. Es gibt keine Garantie dafür, dass die in der Anfrage definierten Einträge in der Reihenfolge ihrer Ausführung liegen. Wir empfehlen, keine voneinander abhängigen Aufrufe in einer einzelnen Batchanfrage zu verwenden (z. B. dieselbe Sendung zu erstellen und zu aktualisieren).

Analog dazu können die für Batchanfragen empfangenen Antworten in einer anderen Reihenfolge als die der Anfrageeinträge zurückgegeben werden. BatchId kann zum Korrelieren von Anfragen und Antworten verwendet werden, da die Antworten möglicherweise außerhalb der Reihenfolge zurückgegeben werden.

Sie können Anfragen in der API als Batch verarbeiten, 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

Einschränkungen

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

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

Aufrufe, die die Maximalwerte überschreiten, führen zu den folgenden request_too_large-Fehlern:

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