Shopee Open API 为开发者提供了丰富的功能和接口,帮助商家更好地管理和运营自己的店铺。本文将详细介绍 Shopee Open API V1 版本的授权方法,为开发者提供参考和指引。
在开始接入 Shopee Open API 之前,建议先查看平台相关介绍和 API 功能,以评估您预期使用的功能是否可以通过 API 实现。如果在接入过程中遇到问题,可以先查阅常见问题 FAQ,如果仍无法解决,可以发送邮件至 openapi@support.shopee.com 或联系您的客户经理,提供以下信息:
问题描述
使用的环境
使用的 API 接口
请求 body 及所属站点
调用接口后获得的 req_id 和返回信息(错误码和错误信息)
为了保护 Shopee Open Platform 免受潜在漏洞的影响,并更好地保护开发者的机密性,Shopee Open API 2.0(V2)引入了更新的授权和验证方法。V2 方法只能应用于 V2 API,而 V1 方法只能应用于 V1 API。可通过调用网址来判断该 API 是 V1 还是 V2,如下表所示:
| 调用网址 | API 版本 |
| --- | --- |
| https://partner.shopeemobile.com/api/v1/item/add | V1 |
| https://partner.shopeemobile.com/api/v2/shop/cancel_auth_partner | V2 |
本文主要介绍 V1 授权方法,后续会有专门的文章介绍 V2 授权方法。
开发者需按照以下规则生成授权链接,并提供给卖场运营人员进行授权。授权完成后,即可通过 API 对店铺进行操作。开发者应使用 Partner ID、Key 提供的测试凭据和测试环境信息来模拟此过程。
授权链接组成需包含一个固定的授权 URL 和必要的参数,具体如下:
授权网址
正式环境: https://partner.shopeemobile.com/api/v1/shop/auth_partner
测试环境: https://partner.uat.shopeemobile.com/api/v1/shop/auth_partner
取消授权网址
正式环境: https://partner.shopeemobile.com/api/v1/shop/cancel_auth_partner
测试环境: https://partner.uat.shopeemobile.com/api/v1/shop/cancel_auth_partner
授权使用参数
id: Partner ID,可在 Console 中的 APP List 查看
token: 由 Partner key 和 redirect url 经 SHA256 加密得到
redirect: 授权成功后跳转的页面,可以是公司网站或者店铺网址
具体生成 token 的步骤如下:
1. 将 Partner key 和 redirect url 拼接成字符串
2. 使用 SHA256 算法对该字符串进行加密,得到最终的 token
例如:
Partner key + redirect url: 815d97b3a582e2e39957545a0c8c3da63d2466b902a32956ddd7a784badccdb
加密后的 token: 8e23ec43c9ef372d998797c029b48545a21b01e876a58b51b02ad1759c8bc4d
最终组成的授权网址如下:
```
https://partner.shopeemobile.com/api/v1/shop/auth_partner?id=70148\u0026token=8e23ec43c9ef372d998797c029b48545a21b01e876a58b51b02ad1759c8bc4d\u0026redirect=https://www.baidu.com
```
通过浏览器进入卖场授权网址后,您将会被重新导向到一个随机数生成的网址。这个随机数生成的网址需要在 3 分钟内完成授权或取消授权操作,否则会得到 `operation overtime` 的错误,需要重新进入授权网址,无法直接刷新使用随机数生成的网址登录。
在调用 API 时,需要使用加密的授权验证。具体步骤如下:
1. 建立签名基础字符串
API URL | Request 基础字符串产生规则如下:
2. 使用正确的通讯协议
请确保使用 `https://` 或 `http://` 协议
3. 构建 HTTP 请求
HTTP 请求格式应使用 raw,HTTP header 使用 `Content-Type: application/json`
4. 准备 API 密钥
密钥是调用 API 的关键,请勿随意对外泄露
5. 加密签名
将第 1 步生成的基础字符串和密钥传递给 HMAC-SHA256 哈希算法进行加密签名,即可用于调用 API
Q1: 如何获取 Partner ID 和 Partner Key?
A1: 您可以登录 Shopee 开发者后台,在 Console -> APP List 中查看并复制相应的 Partner ID 和 Partner Key。
Q2: 授权网址中的 redirect 参数可以填写任何网址吗?
A2: 是的,redirect 参数可以填写任何有效的网址,比如公司官网或店铺网址。该网址将在授权成功后跳转到指定页面。
Q3: 如何解决 "operation overtime" 的错误?
A3: 遇到 "operation overtime" 错误,需要重新进入授权网址,无法直接刷新使用随机数生成的网址登录。这是因为授权网址的有效期只有 3 分钟,超过时间后需要重新生成授权链接。
Q4: 如何确保 API 密钥的安全性?
A4: API 密钥是调用 API 的关键,开发者需要妥善保管,不可随意对外泄露。您可以定期更换密钥,并限制密钥的使用权限,以确保 API 调用的安全性。
希望本文对您的 Shopee Open API 接入有所帮助。如有其他问题,欢迎随时与我们联系。