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 请求的大小限制为不超过 1000 个条目。以下上限适用于 custombatch 请求:
- 每个 custombatch请求 50,000 个条目
- 32Mb 传输大小
超出上限的调用会导致以下 request_too_large 错误:
- "Too many requests in a batch."
- "Request payload size exceeds the limit: %d bytes."