批次處理要求

custombatch 是一種常見方法,可讓您將多個 API 呼叫 (稱為「項目」) 分組為單一 HTTP 要求。每個項目只會參照單一方法呼叫。

在下列情況下,自訂批次是個不錯的選擇:

  • 你剛開始使用 API,需要上傳大量產品資料。
  • 您需要傳送大量更新和刪除內容,將本機資料與伺服器同步。

發出批次要求

傳送批次要求與平行傳送 API 呼叫類似。請注意,系統不保證會按照要求中定義的順序執行項目。建議您不要在單一批次要求中使用相互依存的呼叫 (例如建立及更新同一批貨件)。

同樣地,批次要求收到的回應順序,可能與要求項目的順序不同。由於回應可能會依序傳回,因此 BatchId 可用於關聯要求和回應。

如要在 API 中批次處理要求,請呼叫適當的 custombatch 方法:

資源和對應的自訂批次方法
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

限制

為避免上傳大量批次時發生錯誤,建議您將 custombatch 要求的項目數量上限設為 1,000 個。以下上限適用於 custombatch 要求:

  • 每個 custombatch 要求 50,000 個項目
  • 32 Mb 的傳輸大小

如果呼叫次數超過上限,就會導致下列 request_too_large 錯誤:

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