我试图使用GoCardless API沙箱创建一个客户,但只得到一个403禁止的错误。
{"error": {
"message": "Forbidden request",
"errors": [ {
"reason": "forbidden",
"message": "Forbidden request"
}],
"documentation_url": "https://developer.gocardless.com/api-reference#forbidden",
"type": "invalid_api_usage",
"request_id": "8b870491-e8ca-436c-a602-bb613bba7d96",
"code": 403
}}我使用OAuth来获取一个无记名令牌,这是我在沙箱url上的帖子。
https://api-sandbox.gocardless.com/customers使用此url和承载令牌,我可以获取客户并通过沙箱客户端门户手动更新客户端。如果我故意使令牌成为无效值,我将得到一个401错误,因此我确信令牌是正确的。
错误类型"invalid_api_usage“的文档如下
这是您提出的请求中的一个错误。它可能是一个无效的URL,身份验证头可能丢失,无效,或授予的权限不足,您可能已经达到了速率限制,或者您的请求的语法可能不正确。这些错误将给出更多具体问题的细节。
事实上,我可以更新一个客户,我相信跨越了这些潜在问题的清单。
现在,我正在使用GoCardless API示例中确切的post正文内容来创建客户,以验证语法是否正确。
{
"customers": {
"email": "user@example.com",
"given_name": "Frank",
"family_name": "Osborne",
"address_line1": "27 Acer Road",
"address_line2": "Apt 2",
"city": "London",
"postal_code": "E8 3GX",
"country_code": "GB",
"metadata": {
"salesforce_id": "ABCD1234"
}
}
}我是从SoapUI而不是我的应用程序运行这些请求的,所以我可以确定我发送的正是我期望发送的内容。
从API文档中,我了解到我的应用程序必须有经过批准的支付页面才能在活动环境中创建客户,但是这是以沙箱环境中不受限制的声明为前缀的。
限制 虽然在沙箱环境中可以访问整个GoCardless API,但在活动中存在以下限制。 付款页面限制 除非您的支付页面已被我们的赞助银行批准为符合计划规则,否则您必须使用重定向流API来创建客户、银行帐户和授权。 因此,以下端点受到限制:
在我看来,如果在沙箱环境中限制Customer,则403禁止的响应正是我所能得到的,但是API文档明确指出,情况并非如此。
我的问题基本上是我做错了什么?也许有人能发现一些我忘了的东西或者是误会。
发布于 2016-10-20 08:49:07
答案是沙箱和活动环境一样受到的限制。
API文档的措辞似乎表明沙箱是不受限制的,但事实并非如此。
要删除沙箱环境中的限制,您需要联系GoCardless支持并请求它。
https://stackoverflow.com/questions/40127058
复制相似问题