2017-08-16 48 views
1

我已经完成了此处显示的步骤https://developer.intuit.com/docs/0100_quickbooks_online/0100_essentials/000300_your_first_request/first_request_with_postman#/Configuring_the_Postman_Authorization_header-1500以使用Postbook的Quickbook API集合。当为邮递员使用Quickbooks在线API集时我收到验证错误

在邮差,我成功地能够获得一个新的访问令牌。我还将{{baseurl}}更新为“sandbox-quickbooks.api.intuit.com”,并将{{companyid}}(又名“RealmId”)更新为适当的值显示在开发者网站的“管理沙箱”页面(即https://developer.intuit.com/v2/ui#/sandbox)中。

但是当我点击“发送”上的“以客户为ReadById”查询(或集合中的任何其他查询),我得到以下验证错误:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<IntuitResponse xmlns="http://schema.intuit.com/finance/v3" time="2017-08-16T11:52:00.611-07:00"> 
    <Fault type="AuthenticationFault"> 
     <Error code="100"> 
      <Message>General Authentication Error</Message> 
      <Detail>AuthenticationErrorGeneral: SRV-110-Authentication Failure , statusCode: 401</Detail> 
     </Error> 
    </Fault> 
</IntuitResponse> 

我的下一个步骤是验证我可以使用开发人员网站上的OAuth 2.0 Playground工具来查询我的沙箱,我确实可以这样做。

我的问题是:为什么我在邮差中得到这个验证错误?我错过了一步吗?或者在Quickbooks Online API中有一些尚未记录的更改内容?

编辑:我已经设法解决了我自己的问题,经过大量的反复试验后,以及基于Quickbooks在线帮助区域中的响应提示。

对于那些可能觉得有用的人,我的解决方案是请求一个新的访问令牌(单击Postman中的“获取新访问令牌”),并更新“范围”部分以包含“openid”,使得空格分隔列表阅读: com.intuit.quickbooks.accounting OpenID的个人资料的电子邮件地址,电话

使用这个新的令牌与更新的范围让我得到想要的结果。

回答

0

我有同样的问题,但我解决它不同。我的问题是,在所请求的令牌中,“添加令牌到”的默认值是URL,但似乎API要求令牌位于授权标头中。将此更改为“标题”就是这样。

对于“Customer-ReadById”端点,唯一需要的范围是com.intuit.quickbooks.accounting。我的猜测是你在试错时将它改为Header。

相关问题