custombatch
は、「エントリ」と呼ばれる複数の API 呼び出しを 1 つの HTTP リクエストにグループ化できる一般的なメソッドです。各エントリは 1 つのメソッド呼び出しのみを参照します。
カスタムバッチは次のような場合に適しています。
- API を使い始めたばかりで、アップロードする商品データが大量にある。
- 多数の更新と削除を送信して、ローカルデータをサーバーと同期する必要があります。
バッチ リクエストを行う
バッチ リクエストの送信は、API 呼び出しの並列送信に似ています。リクエストで定義されているエントリの順序が、実行順序と同じになるとは限りません。1 つのバッチ リクエストで相互に依存する呼び出しを使用しないことをおすすめします(同じ配送の作成や更新など)。
同様に、一括処理されたリクエストで受信したレスポンスは、リクエスト エントリとは異なる順序で返される場合があります。レスポンスは順不同で返されることがあるため、BatchId
を使用してリクエストとレスポンスを関連付けることができます。
適切な custombatch
メソッドを呼び出して、API でリクエストをバッチ処理できます。
リソースとそれに対応するカスタム バッチメソッド | |
---|---|
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."