问题标签 [selling-partner-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
627 浏览

ruby - Ruby 中的 Amazon Selling Partner API 返回 MissingAuthenticationToken

我一直在尝试使用 Ruby gem 访问新的 Amazon SP-APIamz_sp_api

我已按照有关创建 IAM 用户以及获取我认为正确的令牌的所有说明进行操作。但我继续收到以下错误:

这是我正在使用的代码:

我得到回报

还有人看到这个问题吗?我经历了设置 IAM 用户和所有这些混乱的广泛的入职流程。

0 投票
3 回答
845 浏览

c# - C# Amazon SP API CreateFeedDocument 不起作用

通过 Amazon SP API 上传 Feed 有 3 个步骤,第一个是通过createFeedDocumentAPI 获取 Feed 加密信息。但我收到Bad Request以下内容的回应:

C# 代码

我怀疑我没有restRequest.AddParameter正确使用,但我不确定。

我一直在关注以下链接:
https ://github.com/amzn/ sell-partner-api-docs/blob/main/references/feeds-api/feeds_2020-09-04.md#createfeeddocument

https://github.com/amzn/ sell-partner-api-docs/blob/main/guides/en-US/use-case-guides/feeds-api-use-case-guide/feeds-api-use- case-guide-2020-09-04.md#step-1-create-a-feed-document

如何使用 .net 在 Amzon 中使用 sell-partner-api 加密和上传数据

更新 我也尝试将下面的行替换
restRequest.AddParameter("contentType", "application/xml; charset=UTF-8", ParameterType.RequestBody);

restRequest.AddJsonBody(new { contentType = "text/xml; charset=UTF-8" });

但后来我收到InvalidSignature如下错误:

注意:我已经删除了一些尾随字符并放置了......{我隐藏了它}............

0 投票
1 回答
319 浏览

node.js - 亚马逊销售伙伴 API 403 - 签名错误

我正在尝试向 Amazon Selling Partner API (node.js/Lambda) 发出请求,但我目前总是收到 403 错误。我已将相同的凭据和访问令牌插入 Postman 并且请求工作正常。我相信在计算请求的签名时一定有错误,但我看不出有什么错误。

我正在计算签名如下:

其余的功能是:

我还尝试使用多个不同的加密库来查看 HMAC 创建是否是问题,但这并没有解决任何问题。

0 投票
1 回答
530 浏览

selling-partner-api - 亚马逊销售合作伙伴 SP-API 库存 403 错误

还有其他人对 Amazon Selling Partner API 端点“摘要”有疑问吗?

我正在尝试从美国市场访问库存摘要端点。
我收到 403 Forbidden 响应。
我已检查卖家中心是否允许访问库存端点。
我的代码适用于其他端点,只是这个被拒绝。

0 投票
0 回答
220 浏览

cors - 连接到 Amazon SP-API 时出现 Cors 预检错误

我正在尝试连接到亚马逊的 Selling Partner API 以请求和检索报告。按照他们的指导,我创建并配置了 IAM 策略,注册并自行授权了我的应用程序,并且能够使用我的客户端信息和刷新令牌检索访问代码。

然后,我使用 CryptoJS 成功地对我的请求进行了哈希处理,并能够生成 aws4 签名。

但是,当我使用 fetch() 向端点发送“发布”请求时,https://sellingpartnerapi-eu.amazon.com/reports/2020-09-04/reports我收到 cors 错误:

对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。如果不透明的响应满足您的需求,请将请求的模式设置为“no-cors”以获取禁用 CORS 的资源。

如果我在请求中包含 'mode': 'no-cors',则不会在标头中发送 'x-amz-access-token'。

我无法弄清楚为什么我的 fetch() 请求可用于检索访问代码:

...但不创建报告。

此外,SP-API 文档要求在请求中发送“主机”和“用户代理”标头,但我的理解是两者都不允许。

这是 JavaScript 的限制吗?我应该寻找一种替代语言来发送这些请求吗?

对这位新手开发人员的任何帮助将不胜感激!

谢谢

[连接到销售伙伴 API] https://github.com/amzn/ sell-partner-api-docs/blob/main/guides/en-US/developer-guide/SellingPartnerApiDeveloperGuide.md#step-3-add-标头到 uri

[请求报告] https://github.com/amzn/ sell -partner-api-docs/blob/main/guides/en-US/use-case-guides/reports-api-use-case-guide/reports -api-use-case-guide-2020-09-04.md#step-1-request-a-report

[createReport] https://github.com/amzn/ sell-partner-api-docs/blob/main/references/reports-api/reports_2020-09-04.md#createreport

0 投票
1 回答
147 浏览

amazon-web-services - 亚马逊销售合作伙伴 API“活动密钥过多”

我可以使用我拥有的刷新令牌生成新的访问令牌,但是当我在对 SP-API 的请求中使用该访问令牌时,我收到 429 错误:

我在任何文档中都找不到这个错误的确切含义?在过去的 24 小时内我没有向 SP-API 发出任何请求,所以我不相信我受到了速率限制。

0 投票
1 回答
278 浏览

google-apps-script - 如何使用 Google Apps 脚本解密 AES

我正在尝试用 GAS 解密 AES。解密的目标是 Amazon Selling Partner API 检索到的文档文件。
密钥、iv和URL是通过API获取的,我想通过密钥和iv访问URL来解密下载的数据。
但是,解密后的文本要么是空的,要么是乱码。
你能告诉我下面的代码有什么问题吗?该代码使用 cCryptoGS,它是 CryptoJS 的包装库。

[输出]

0 投票
0 回答
627 浏览

c# - 错误 Amazon Selling Partner API [请求中包含的安全令牌无效]

连接到 Amazon SP API 时出现问题。我已遵循亚马逊上的指南https://github.com/amzn/ sell-partner-api-docs/blob/main/guides/en-US/developer-guide/SellingPartnerApiDeveloperGuide.md

我使用的 C# SDK 是https://github.com/amzn/ sell -partner-api-models

我已将以下内联策略添加到我的 IAM 用户

下面是我的c#源代码

回应是

0 投票
0 回答
167 浏览

node.js - 解密销售伙伴 API 报告

我正在尝试解密销售合作伙伴 api 报告,但在解密时我在 decipher.final() 附近收到此错误[Node] Error: error:0606506D:digital envelope routines:EVP_DecryptFinal_ex:wrong final block length。api 返回报告的键、iv 和 url。 销售伙伴 api 参考

我尝试了其他线程中提到的解决方案,但仍然面临问题。我检查了 key 和 iv 的长度,分别是 32 和 16。

这是代码:

0 投票
1 回答
582 浏览

amazon-web-services - Amazon SP-API 终端节点通过订单 ID 获取账单地址

我正在使用 Amazon Selling Partner API 在我的应用程序中导入订单。我正在使用 orders/v0/orders 来获取订单列表并返回我调用的 foreach 订单

  1. /orders/v0/orders/{orderId}/address 获取送货地址
  2. /orders/v0/orders/{orderId}/orderItems 按顺序获取项目
  3. /orders/v0/orders/{orderId}/buyerInfo 获取buyerEmail 和buyerName

现在,我需要做的最后一件事是获取最终的帐单地址。

我在 SP-API 文档中搜索,但没有发现任何有用的信息。

有人能帮我吗?