概述
本篇文章将介绍截止于2024年7月,亚马逊电商Selling Partner API(简称“SP-API”)的新对接流程。对于2023年10月2日之后注册SP-API的开发人员,无需使用Amazon IAM进行签名验证。要使用SP-API,首先需要注册成为销售伙伴API开发者,然后才能注册您的销售伙伴API应用程序,具体请参阅下方链接。
注册您的销售伙伴API应用程序
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/registering-your-application
亚马逊SP-API介绍
以前亚马逊电商平台为卖家提供Marketplace Web Service API(MWS API)以程序化的方式管理营运店铺,为了进一步提高数据安全性和易用性,2020年10月亚马逊电商正式推出一套全新的Selling Partner API即SP-API。SP-API是一种基于REST的API,可帮助亚马逊销售合作伙伴以编程方式访问他们在订单、发货、付款等方面的亚马逊数据。使用SP-API的应用程序可以提高销售效率,减少人工需求,并改善对客户的响应时间,从而帮助销售合作伙伴发展他们的业务。
1. 主要功能
使用销售合作伙伴API,您可以:
设置OAuth授权工作流,销售合作伙伴可以从销售合作伙伴应用商店详情页或您自己的网站发起。
生成一个SDK,可以帮助您进行LWA Token交换和身份验证。
通过调用沙箱环境来测试您的应用程序。
2. 全球应用程序
您只需在选择的区域和市场注册一次开发者,即可创建一个SP-API应用程序,供任何区域或市场的销售合作伙伴授权。
3. 合规政策
使用SP-API需要满足以下政策,请查看可接受使用政策(AUP)、数据保护政策(DPP)和亚马逊开店服务API开发者协议要求。
发布新的亚马逊SP-API应用程序
一个完整的Amazon SPCN (Seller Central Partner Network)的应用发布流程如下。
Amazon SPCN
https://sellercentral.amazon.com/partnernetwork
了解SP-API开发者类型
使用SP-API,您必须先注册为销售伙伴API开发者,然后才能注册您的销售伙伴API应用程序。在注册SP-API开发者前, 您需要先了解开发者类型,以注册适合您场景的开发者类型。
注册为不同开发者类型的过程略有不同,具体取决于您计划创建的应用程序的类型。
私人卖家应用程序:仅适用于您组织且经过自我授权的卖家应用程序。- 私人开发者
私人供应商应用程序:仅适用于贵组织且经过自我授权的供应商应用程序。- 私人开发者
公共卖方和供应商应用程序:公开可用且由卖家或供应商使用OAuth授权的应用程序。按照亚马逊开店服务API开发者协议,公共开发者必须在亚马逊销售伙伴应用商店中发布其应用程序。- 公共开发者
私人卖家应用程序
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/register-as-a-private-developer
私人供应商应用程序
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/register-as-a-private-vendor
公共卖方和供应商应用程序
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/register-as-a-public-developer
亚马逊开店服务API开发者协议
https://sellercentral.amazon.com/mws/static/agreement
登录卖家中心/供应商中心/公共开发者中心
登录私人卖家中心。
登录卖家平台。有关区域URL,请参阅卖家平台URL。
打开菜单,选择“Partner Network”,然后选择“Develop Apps”。
卖家平台URL
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/seller-central-urls
注意:只有专业卖家账户才能注册开发或集成SP-API。个人账户不符合资格。您可以随时将账户升级为专业计划。您可以在账户信息的“您的服务”下查看您的销售计划类型和市场信息。
登录私人供应商中心。
前往您所在商城的Vendor Central。有关各商城的URL列表,请参阅Vendor Central URL。
使用您希望应用程序访问的供应商组的Vendor Central账户凭证登录。有关供应商组的详细信息,请参阅关于供应商组。
从“集成”菜单中,选择 “API集成”。
登录公共开发者中心。
登录开发者中心平台。
创建亚马逊账户,并登录开发者中心。
注册成为开发者
1. 选择前往“开发者资料”,填写开发者注册表。
2. 在“联系信息”下填写完整的开发者信息。
3. 在“数据访问”中, 选择注册的开发者类型。
详情请阅读上文(了解SP-API开发者类型 ),确定注册的开发者类型。
4. 在“安全控制”中,按照使用情况填写,并详述您的信息使用情况。
5. 在“角色”中, 勾选适用于您的应用程序的角色。
角色或职权是销售伙伴API用于确定开发者或应用程序是否有权进行操作或访问资源的一种机制。如果是开发者,您必须请求特定职权并获取相应资格,否则您将无法进行或访问该职权下分组的操作和资源。有关角色定义的更多信息,请参阅下方链接。
销售合作伙伴API中的角色
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/roles-in-the-selling-partner-api
“个人身份信息”(PII)是指可单独使用或与其他信息一起使用的信息,用于识别、联系、在语境中识别亚马逊买家或授权用户或者确定其位置。它包括但不限于买家或授权用户的姓名、地址、电子邮件地址、电话号码、礼品信息内容、调查回复、付款详情、购买信息、Cookie、数字指纹(例如浏览器、使用者设备)、IP地址、地理位置、九位数邮政编码或互联网连接的设备商品编码。
“受限”角色意味着该角色需要处理敏感信息,可能包括个人身份信息(PII)。您需要提供关于数据使用和安全控制措施的更多信息。
6. 在“使用案例”中,详述您的差异化使用场景,便于后台对您应用以及权限审核。
7. 确认您已阅读并同意亚马逊开店服务API开发者协议、可接受使用政策和数据保护政策。提交等待后台, 等待完成审核。
可接受使用政策
https://sellercentral.amazon.com/mws/static/policy?documentType=AUP&locale=en_US
数据保护政策
https://sellercentral.amazon.com/mws/static/policy?documentType=DPP
8. 在开发者中心的横幅中,查看开发者注册申请状态。
等待后续步骤。案例更新将发送到存档的管理员电子邮件地址。如果有工作人员与您联系并确认更多信息,请您在五天内回复,以防案例关闭。
注册应用程序
1. 在开发者中心,点击“+添加新的App客户端”。
2. 填写“应用名称”,并选择“API类型”后,选择应用程序类型。
沙盒:可供您在不影响生产数据、不触发真实事件的前提下测试应用程序。
生产:生产应用程序的创建需要开发者资格的批准。
3. 查看应用程序信息和凭证
此时将显示您的LWA客户端标识符和该应用程序的客户端密钥。您将需要这些证书来请求LWA访Token。有关更多信息,请参阅申请 “用亚马逊账户登录” 访问Token(创建生产应用程序能正常获取数据的前提条件是需要确保开发者申请获得批准)。
授权SP-API应用程序
亚马逊销售合作伙伴API的授权模型基于亚马逊的OAuth 2.0实现Login with Amazon。在此模型中,您的应用程序通过与亚马逊显示的页面以及您的网站进行交互而获得授权。
Web浏览器充当用户代理,在每个销售合作伙伴操作中在您的网站和亚马逊之间传递参数。要实现OAuth授权,您必须配置您的网站以:
(1)接受和处理亚马逊传递给它的参数;
(2)重定向Web浏览器并将参数传递给亚马逊。
Login with Amazon
https://developer.amazon.com/docs/login-with-amazon/documentation-overview.html
授权流程:
面向卖家的公共应用程序:公开提供并由卖家授权的应用程序。可以使用以下方法对这些应用程序进行授权:
销售伙伴应用商店授权工作流程从卖家伙伴应用商店详情页面启动的OAuth授权工作流程。
网站授权工作流程从您自己网站启动的OAuth授权工作流程。
面向供应商的公共应用程序:公开可用并由供应商授权的应用程序。可以使用以下方法对这些应用程序进行授权:
网站授权工作流程从您自己网站启动的 OAuth 授权工作流程。
面向卖家或供应商的私人应用程序:仅适用于贵组织的应用程序。这些可以是卖家或供应商应用程序。可以使用以下方法对这些应用程序进行授权:
自我授权。
详情请参阅授权SP-API应用程序。
销售伙伴应用商店授权工作流程
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/selling-partner-appstore-authorization-workflow
网站授权工作流程
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/website-authorization-workflow
网站授权工作流程
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/website-authorization-workflow
自我授权
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/self-authorization
授权限制:
在SP-API中,除了Grantless操作,其余的操作均需要显示获得Authorization授权完成API Call。
目前Private Developer的非公开应用可以通过自授权方式来完成调用,但是有10个自授权数量的限制。如果需要超过10个授权,则需要将应用转为Public Developer Application 。
Public Developer Application的授权需遵循OAuth Workflow,目前有两种方式。分别为SCPN 授权,以及第三方登录页授权。如果您的应用没有在SCPN 进行刊登的情况下,则有25个OAuth授权的限制,直至您将您的应用在SCPN完成刊登。您可以通过修改您的Developer Profile来改变您的开发者类别。
Grantless
https://developer-docs.amazon.com/sp-api/docs/grantless-operations
SCPN
https://sellercentral.amazon.com/partnernetwork
Developer Profile
https://sellercentral.amazon.com/developer/register
调用SP-API
测试SP-API端点:
销售合作伙伴API(SP-API)提供了沙箱环境,您可以在其中测试SP-API 端点而不会影响生产数据。您可以将调用指向SP-API 沙箱端点,发出静态请求以获取模拟响应。通过使用沙箱, 您可以练习发出调用所需的步骤,了解请求和响应格式,练习验证应用程序凭据,并尝试使用API端点而不会影响生产数据。
请查阅下方链接了解生成了LWA访问Token,对沙盒端点的SP-API进行调用。
Tutorial: Test Selling Partner API Endpoint
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/tutorial-test-selling-partner-api-endpoints
使用SDK:
SDK将多个步骤捆绑在一起,例如请求访问Token和请求安全Token,以无缝调用SP-API。选择SDK后,您必须生成您的SDK并将其连接到销售合作伙伴API。
C# SDK教程:使用C# SDK教程自动化您的SP-API调用,通过亚马逊登录(LWA)Token交换和身份验证,使用C# SDK自动化您的SP-API调用。
Java SDK教程:使用Java SDK教程自动化您的SP-API调用,通过亚马逊登录(LWA)Token交换和身份验证,使用Java SDK自动化您的SP-API调用。
Node.js的JavaScript SDK教程:使用Node.js的JavaScript SDK教程自动化您的SP-API调用,通过亚马逊登录(LWA)Token交换和身份验证,使用Node.js的JavaScript SDK自动化您的SP-API调用。
Python SDK教程:使用Python SDK教程自动化您的SP-API调用,通过亚马逊登录(LWA)Token交换和身份验证,使用Python SDK自动化您的SP-API调用。
使用C# SDK教程
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/automate-your-sp-api-calls-using-the-c-sdk
使用Java SDK教程
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/automate-your-sp-api-calls-using-java-sdk
使用Node.js的JavaScript SDK教程
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/tutorial-automate-your-sp-api-calls-using-javascript-sdk-for-node-js
使用Python SDK教程
https://developer-docs.amazon.com/sp-api/lang-zh_CN/docs/tutorial-automate-your-sp-api-calls-using-python-sdk
附录
1.注册亚马逊开发者平台
http://developercentral.amazon.com/
2.SP-API开发文档:
https://developer-docs.amazon.com/sp-api/docs/welcome
3.Last version:https://aws.amazon.com/cn/blogs/china/how-to-connect-with-amazon-e-commerce-selling-partner-api/
本篇作者
张司雨
亚马逊云科技解决方案架构师,负责亚马逊云科技云计算方案咨询和设计。同时致力于数据库和大数据方面的研究和推广,在电商行业各种场景解决方案有丰富的经验。
于涛
亚马逊云科技解决方案架构师,负责亚马逊云科技云计算方案咨询和设计。目前主要专注在现代化应用改造和机器学习领域的技术研究和实践。积累了丰富的跨境电商和快消行业项目经验。
星标不迷路,开发更极速!
关注后记得星标「亚马逊云开发者」
听说,点完下面4个按钮
就不会碰到bug了!
点击阅读原文查看博客!获得更详细内容!