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."