バッチ リクエスト

custombatch は、複数の API 呼び出し(「エントリ」と呼ばれる)を 1 つの HTTP リクエストにまとめることができる一般的なメソッドです。各エントリは 1 つのメソッド呼び出しのみを参照します。

カスタム バッチは、次のような場合に適しています。

  • API の使用を開始したばかりで、アップロードする商品データが大量にある。
  • 更新や削除の呼び出しを大量に送信してローカルデータとサーバー間で同期させる必要がある。

バッチ リクエストを行う

一括リクエストの送信は、API 呼び出しを並行して送信する操作に似ています。リクエストで定義されたエントリの順序が、実行される順序になるとは限りません。1 つのバッチ リクエストで相互依存する呼び出し(同じ配送の作成と更新など)を使用しないことをおすすめします。

同様に、バッチ リクエストで受信したレスポンスは、リクエスト エントリとは異なる順序で返される場合があります。レスポンスは順序が乱れて返される可能性があるため、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."