淘宝平台未开放 “获取店铺所有商品” 的公共 API,开发者需通过阿里妈妈开放平台的淘宝联盟 API(属于阿里妈妈体系)获取商品信息,但需满足以下条件:
1. 成为淘宝联盟开发者并创建应用;
1. 通过`adzone_id`(推广位 ID)关联店铺,且只能获取店铺中参与淘宝客推广的商品;
1. 遵守平台接口调用规范和频率限制。
淘宝联盟 API 获取店铺商品的 Curl 示例
以下是通过`taobao.tbk.shop.get`接口获取店铺基本信息,结合`taobao.tbk.item.info.get`批量获取商品的 Curl 命令(需替换实际参数)。
1. 获取店铺参与推广的商品 ID 列表
# 替换参数说明: # app_key:你的应用appkey # sign:按阿里妈妈签名规则生成的签名 # seller_id:目标店铺的卖家ID(从店铺URL提取,如shop123456的seller_id为123456) # timestamp:当前时间戳(格式:yyyy-MM-dd HH:mm:ss) curl -X GET "https://eco.taobao.com/router/rest?\ app_key=你的appkey&\ method=taobao.tbk.shop.get&\ format=json&\ v=2.0&\ sign=生成的签名&\ timestamp=2024-08-22 15:30:00&\ seller_id=目标店铺seller_id&\ fields=user_id,shop_title,shop_type,item_ids"
2. 批量获取商品详情(需先获取 item_ids)
# 替换参数说明:# num_iids:从第一步获取的商品ID列表(逗号分隔,如123456,789012)# 其他参数同上述要求curl -X GET "https://eco.taobao.com/router/rest?\ app_key=你的appkey&\ method=taobao.tbk.item.info.get&\ format=json&\ v=2.0&\ sign=生成的签名&\ timestamp=2024-08-22 15:31:00&\ num_iids=123456,789012&\ fields=num_iid,title,pict_url,price,zk_final_price,commission_rate"
响应数据格式说明(JSON)
{
"tbk_item_info_get_response": {
"results": {
"n_tbk_item": [
{
"num_iid": "123456",
"title": "示例商品标题",
"pict_url": "https://img.alicdn.com/xxx.jpg",
"price": "99.00",
"zk_final_price": "79.00",
"commission_rate": "1500" // 15%(单位:千分比)
},
{
"num_iid": "789012",
"title": "另一商品标题",
"pict_url": "https://img.alicdn.com/yyy.jpg",
"price": "199.00",
"zk_final_price": "159.00",
"commission_rate": "1000" // 10%
}
]
},
"total_results": 2
}}关键说明
1. **签名生成**:必须按阿里妈妈规则生成`sign`(参数 ASCII 升序 +`appsecret`+MD5 加密),否则请求会被拒绝;
1. **权限限制**:只能获取店铺中 “加入淘宝客推广” 的商品,未参与推广的商品无法通过该接口获取;
1. **频率限制**:单 IP QPS 限制为 10,每日调用次数受应用权限限制;
1. **合规性**:需遵守《淘宝联盟 API 使用规范》,禁止用于不正当竞争或侵权用途。
若需获取全店商品(包括未参与推广的),需联系店铺商家通过淘宝开放平台的商家 API(如淘宝)授权,个人开发者无此权限。