当前位置: 首页 > news >正文

淘宝获取商品sku详情API接口如何调用?

以下是调用淘宝开放平台/万邦开放平台获取商品SKU详情API接口的具体步骤和示例:

一、API名称及参数

  • API名称taobao.item.sku.get
  • 主要功能:获取指定商品SKU的详细信息,包括属性、价格、库存等。
  • 关键参数
    • num_iid:商品ID(必填)
    • sku_id:SKU ID(可选,不填则返回所有SKU)
    • fields:指定返回的字段(如sku_id,price,quantity,properties
    • is_promotion:是否返回促销价(0或1)

二、调用步骤

1. 获取Access Token

通过OAuth 2.0流程获取访问令牌(需用户授权或客户端凭证):

 

python复制代码

import requests
def get_access_token(app_key, app_secret):
url = "https://oauth.taobao.com/token"
params = {
"grant_type": "client_credentials",
"client_id": app_key,
"client_secret": app_secret
}
response = requests.post(url, data=params)
return response.json().get("access_token")
2. 构造请求
 

python复制代码

def get_sku_details(app_key, app_secret, item_id, sku_id=None):
access_token = get_access_token(app_key, app_secret)
url = "https://eco.taobao.com/router/rest"
params = {
"method": "taobao.item.sku.get",
"app_key": app_key,
"session": access_token,
"num_iid": item_id,
"fields": "sku_id,price,quantity,properties,status",
"timestamp": str(int(time.time())),
"format": "json",
"v": "2.0",
"sign_method": "md5"
}
if sku_id:
params["sku_id"] = sku_id
# 生成签名(按文档规则)
sorted_params = sorted(params.items())
sign_str = "".join([f"{k}{v}" for k, v in sorted_params if k not in ["sign"]])
sign_str += app_secret
params["sign"] = hashlib.md5(sign_str.encode()).hexdigest().upper()
response = requests.get(url, params=params)
return response.json()
3. 解析响应
 

python复制代码

import json
# 示例:获取商品ID为123456的SKU详情
app_key = "your_app_key"
app_secret = "your_app_secret"
item_id = "123456"
result = get_sku_details(app_key, app_secret, item_id)
if result.get("taobao_response") and result["taobao_response"].get("code") == 200:
skus = result["taobao_response"]["item_sku_get_response"]["skus"]["sku"]
for sku in skus:
print(f"SKU ID: {sku['sku_id']}, 价格: {sku['price']}, 库存: {sku['quantity']}, 属性: {sku['properties']}")
else:
print("请求失败:", result.get("error_response", {}).get("msg"))

三、响应示例

 

json复制代码

{
"taobao_response": {
"code": 200,
"item_sku_get_response": {
"skus": {
"sku": [
{
"sku_id": 123,
"price": "200.00",
"quantity": 50,
"properties": "颜色:红色;尺码:M",
"status": "normal"
},
{
"sku_id": 456,
"price": "220.00",
"quantity": 30,
"properties": "颜色:蓝色;尺码:L",
"status": "normal"
}
]
}
}
}
}

四、注意事项

  1. 权限申请
    确保应用已申请taobao.item.sku.get权限,部分接口需提交业务场景说明。
  2. 频率限制
    遵守淘宝API的调用频率规则(如每天100万次),避免触发限流。
  3. 错误处理
    添加异常捕获逻辑(如网络错误、签名错误),确保程序健壮性。
  4. 数据安全
    敏感信息(如App Secret)需加密存储,避免泄露。
  5. 文档更新
    定期查看万邦开放平台-文档中心,适应接口规则变化。

五、常见错误码

错误码描述
50远程服务错误
11API权限不足
15签名错误
26参数缺失或格式错误

通过以上步骤,您可以成功调用淘宝API获取商品SKU详情。如需进一步开发,建议结合具体业务需求参考官方文档。

相关文章:

  • 转发和重定向
  • 每天认识一个设计模式-桥接模式:在抽象与实现的平行宇宙架起彩虹桥
  • GPT-4o图像生成功能:技术突破与隐忧并存
  • R 安装和查看历史版本 R 包指南
  • 在Vue 3 + TypeScript + Vite 项目中安装和使用 SCSS
  • 如何在 Postman 中上传图片并在请求中正确引用?
  • 蓝桥杯 班级活动
  • 【学习笔记】大模型架构设计与长上下文能力的实现
  • jmeter 工具安装及并发压测详解
  • PostgreSQL学习之一次一密口令认证(TOTP)
  • 【Git】git cherry-pick(将某个分支的 commit 改动复制到当前分支)
  • 诠视科技MR眼镜如何安装apk应用
  • 《Linux运维实战:Ubuntu 22.04使用pam_faillock实现登录失败处理策略》
  • Linux Shell 脚本使用YAD工具实现Shell图形化界面
  • CodeBrick笔记,一种支持低功耗的嵌入式操作系统
  • 【TCP/IP、HTTP等网络协议】
  • Android开发: Java文件中操作基础UI组件
  • spring security设置多个数据源和登录验证码
  • 第二届计算机网络和云计算国际会议(CNCC 2025)
  • 如何让AI套用现有ppt模板,并通过改文字批量生成新的ppt?【翻车版】
  • 旭辉控股集团:去年收入477.89亿元,长远计划逐步向轻资产业务模式转型
  • 今年4月上海一二手房成交面积同比增21%,二手房成交2.07万套
  • “译通天下·言立寰宇”:华东师大翻译家的精神传承
  • 过去24小时中美是否就关税问题进行过接触?外交部:没有
  • 牛市早报|国家发改委:将推出做好稳就业稳经济推动高质量发展若干举措
  • 光明网评论员:手机“二次放号”,需要重新确认“你是你”