使用SP-API需要注册并申请两个账号:ASC(亚马逊卖家中心) 账号和 AWS(亚马逊云服务) 账号,ASC 账号一般大家都有了,我们从申请SP-API开始。
PS:本文章内网站界面语言全部为英文,如语言是中文请自行调整
一、申请SP-API
PS:申请过SP-API的朋友自行忽略此部分操作
准备一个 ASC(亚马逊卖家中心) 账号,点击此处跳转
点击顶部菜单栏的 Apps & Services,并选择 Develop Apps。
然后你会进入Developer Central(开发者中心),我们会看到 You need to complete Developer Profile 的字样。接下来我们点击 Proceed to Developer Profile。
然后我们根据Amazon要求填写表单并提交。
填写完毕后,勾选最下方的同意协议,点击 Register 申请SP-API。
Amazon会审核一段时间,审核期间我们可以去注册并申请 AWS。
二、AWS账号注册及环境搭建流程
AWS账号注册
PS:有AWS账户的朋友自行忽略此部分操作
访问 AWS 官网,点击此处跳转
点击右上角的 Complete Sign Up,我们会跳到 AWS 的登录页面。
接下来我们选择 Create a new AWS account。
根据要求填写表单信息,一路输入信息后点击 Continue 完善信息。
注册完成后。我们访问登陆页面,点击此处跳转。选择 Root user,输入你注册用的email,然后点击 Next。
接下来我们输入密码,点击 Submit。
成功之后我们会进入 AWS 的控制台界面 AWS Management Console。至此账号注册成功!
AWS环境搭建流程
- 创建 IAM User
接下来我们在上方搜索框中搜索 IAM 并点击。然后我们会跳转到 IAM dashboard 界面。
这里是 IAM dashboard 界面。
接下来我们点击左边菜单栏的 Users,然后点击 Add user。
然后在 Set user details 页面中输入你想自定义的 User name 并勾选 Programmatic access,然后点击 Next: Permissions 按钮。
然后在 Set permissions 页面中直接点击 Next: Tags 按钮。
然后在 Add tags (optional) 页面中,你可以自行选择是否需要填写 Key 和 Value,如不需填写的话点击 Next: Review 按钮。
然后在 Review 页面中检查一下你的配置信息,没有问题的话就点击 Create user 按钮就好啦。这个地方我们先忽略提示的 This user has no permissions 警告,后续我们会进行配置的。
创建之后会显示 Success,这里我们点击 Secret access key 下的 Show 以查看 Secret access key
。然后我们将 Access key ID
和 Secret access key
记住并保存下来。你可以选择点击 Download.csv 按钮来保存此信息的文件,后续调用SP-API需要此信息。
PS:Secret access key 只显示一次,丢失或遗忘则只能创建新的 User
保存完毕后我们就可以点击 Close 关闭页面了。
- 创建 IAM Policy
接下来我们点击左边菜单栏的 Policies。
如果你从没有进入过 Policies 页面,那么会弹出 Welcome to Managed Policies 页面,这里我们点击 Get Started,然后点击 Create policy 按钮。如果曾经进入过 Policies 页面的话,直接点击 Create policy 按钮就可以了。
然后在 Create policy 页面中点击 Json 标签。
将以下信息粘贴到文本框中,然后点击 Next: tags
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "execute-api:Invoke",
"Resource": "arn:aws:execute-api:*:*:*"
}
]
}
然后在 Add tag (Optional) 页面,你可以自行选择是否添加标签,点击 Next: Review。
在 Review policy 页面中,我们在必填字段 Name 中填写 SellingPartnerAPI
,可在 Description 中自选是否自定义描述信息,然后点击 Create policy 按钮。至此,IAM Policy 已经创建完毕。
- 创建 IAM Role
接下来我们点击左边菜单栏的 Roles,然后点击 Create role 按钮。
然后在 Select type of trusted entity 页面中 点击 Another AWS account。
然后我们看到需要输入必填的 Account ID,我们在右上角菜单栏中找到你的账户,然后会看到 My Account 后面有一串数字,这个就是 Account ID了。我们把它粘贴进输入框中。然后点击 Next: Permissions 按钮。
然后在 Attach permissions policies 页面中,我们在搜索框中输入步骤2中创建的 Policy 的名称 SellingPartnerAPI
,然后勾选它并点击 Next: Tags 按钮。
然后在 Add tags (optional) 页面中,你可以自行选择是否需要填写 Key 和 Value,如不需填写的话点击 Next: Review 按钮。
然后在 Review 页面中,在必填字段 Role name 中自定义你的名称,可在 Description 中自选是否自定义描述信息,然后点击 Create role 按钮。至此,IAM Role 已经创建完毕。
然后在 IAM Role 列表中,创建之后会显示 Success或者The role xxx has been created,然后选择你刚刚创建的名称的 IAM Role。
然后在 Summary 页面中,保存你的 Role ARN,后续调用SP-API需要此信息。
- 将AWS安全令牌添加到 IAM User中
接下来我们回到左边菜单栏的 Users,然后点击你之前创建的名称的 IAM User。
然后在 Summary 页面中,点击 Permissions 标签,并点击右侧的 Add inline policy。
然后在 Create policy 页面中,在下方的 Service 点击 Choose a service。
然后在搜索框中输入 STS
并点击它。
然后我们点击下方的 Actions 并点击 Write 左边的小三角显示详情信息,然后勾选 AssumeRole。
然后我们点击下方的 Resources 并点击黄色字体下方的 Add ARN。
然后在弹出的 Add ARN(s) 模态框中清空 Specify ARN for role 的信息,然后输入第3步中创建后保存下来的 Role ARN 信息,然后点击 Add 按钮。
然后模态框关闭后我们点击 Review policy 按钮。
然后在 Review policy 页面中,在必填字段 Name 中自定义你的名称,然后点击 Create policy。
至此。AWS 账户开发环境已经全部搭建好啦!注意保存住你的 Role ARN
、Access key ID
和 Secret access key
哦!
三、在ASC开发者中心内创建APP
不知道你们原先在 ASC 内申请的 SP-API 被 Amazon 审核成功没有呢?注意留意自己的邮箱吧,审核成功会给你发送消息哦!
PS:被Amazon审核通过后成为开发者才能继续接下来的操作哦
接下来我们进入开发者中心(与在步骤一中的方式一样),在页面中点击 Add new app client 按钮。如果出现如下说明需要填写相关信息,点击Proceed to Developer Profile进行填写,填写完后需要等待验证通过才可进行下一步操作。
然后在 Create your app 页面中,自定义你的 App name 并在 API Type 中选择 SP API。
选择 SP API 后会出现新的输入框和选项,我们在 IAM ARN 中输入步骤二中的第3步创建 IAM Role 生成的 Role ARN。并将 Roles 下的勾选框全部选中。然后点击 Save and exit 按钮。
PS:OAuth Login URI和OAuth Redirect URI是一种验证方式,如果希望以此种验证方式验证的话请点击右侧链接了解详情点击此处跳转
然后我们会跳转到开发者中心并在listing中会看到我们刚刚创建的APP,我们点击 View。
在弹出的模态框中将 Client identifier
和 Client secret
保存下来(这是LWA凭证,后续调用SP-API需要此信息)。然后点击 Done。
模态框关闭后我们点击右边按钮右侧的小箭头。
在按钮下方弹出的菜单栏中选择 Authorize。
然后在 Authorize application 页面中,点击 Generate refresh token 按钮。等待片刻后按钮下方的框中会出现生成的 Refresh token
。我们将其保存下来,后续调用SP-API需要此信息。
到此,SP-API开发环境已经全部搭建完毕!恭喜你!
现在你可以带着从 ASC 中保存下来的 Client identifier
、Client secret
、Refresh token
和 AWS 保存下来的 Role ARN
、Access key ID
和 Secret access key
尝试去请求SP-API吧!!