如何通过SP API Python获取非自Listing商品的库存数量?
能否通过SP API获取非自有Listing的商品库存?
可以,但你当前使用的Inventories API仅能查询自身店铺的库存数据,无法获取非自有Listing的库存。要实现需求,需使用亚马逊SP API的Product Pricing API,具体操作如下:
核心说明
非自有Listing没有你店铺的SKU,必须以商品的ASIN作为查询标识,通过Product Pricing API获取竞品的库存状态或数量。
操作步骤
- 确认权限:确保你的SP API账号已开通
Product Pricing权限(在开发者后台的权限管理模块申请) - 调用对应接口:使用
get_competitive_pricing_for_asins接口查询指定ASIN的竞品库存信息 - 解析返回结果:从接口响应中提取库存状态(部分站点会返回具体可售数量)
示例代码(基于sp-api-python库)
from sp_api.api import ProductPricing from sp_api.base import Marketplaces # 初始化ProductPricing客户端 pricing_client = ProductPricing(credentials=credentials, marketplace=Marketplaces.FR) # 查询目标ASIN的库存信息 result = pricing_client.get_competitive_pricing_for_asins( asins=["TARGET_ASIN"], # 替换为你要查询的商品ASIN marketplaceIds=["A13V1IB3VIYZZH"] ) # 解析并输出库存数据 for entry in result.payload['payload']: asin = entry['asin'] if 'offers' in entry: for offer in entry['offers']: avail_status = offer['availability']['availabilityStatus'] avail_quantity = offer['availability'].get('availableQuantity') print(f"ASIN: {asin} | 库存状态: {avail_status} | 可售数量: {avail_quantity or '未返回具体数量'}")
注意事项
- 部分亚马逊站点仅返回库存状态(如
InStock/OutofStock),不会提供具体数量 - 接口会返回该ASIN下所有在售卖家的库存信息,需根据业务需求筛选目标数据
- 调用需遵守SP API的调用频率限制,避免触发限流
内容的提问来源于stack exchange,提问作者Melisa
相关产品推荐
相关产品推荐

