使用oauth2的Quickbooks在线API

时间:2017-08-04 14:19:54

标签: php api oauth-2.0 quickbooks

我需要使用Quickbooks在线API在我的系统和我们客户在quickbooks上的帐户之间同步数据。

我需要知道是否可以完成oauth2授权流程并在没有人工交互的情况下进行API调用(无需与Intuit的身份验证和授权窗口进行交互)?

我在:https://developer.intuit.com/docs/0100_quickbooks_online/0100_essentials/000500_authentication_and_authorization/connect_from_within_your_app

上阅读了Intuit的文档

第一步,我向GET请求:

https://appcenter.intuit.com/connect/oauth2?client_id=MY_ID&scope=com.intuit.quickbooks.accounting&redirect_uri=https%3A%2F%2FMY_NGROK_URL.ngrok.io%2FOAuth2PHPExample.php&response_type=code&state=RandomState#/Authorize/COMPANY_ID

然后,Intuit的身份验证和授权窗口打开,我需要输入我的用户名和密码,然后单击授权按钮以获取授权代码。

有没有办法获得授权代码而无需进行身份验证和授权?

我需要自动执行此任务,以便使用PHP在后端进行API调用。

谢谢, 马塞洛。

1 个答案:

答案 0 :(得分:1)

  

有没有办法获得授权代码而无需进行身份验证和授权?

不......但请阅读以下内容。

  

我需要自动执行此任务,以便使用PHP在后端进行API调用。

您误解了OAuth(1或2)的工作原理。

首次连接时,系统将提示您验证/授权访问QuickBooks Online数据。

然后,您将获得刷新令牌(或访问令牌,具体取决于您是否使用OAuth2与OAuth1)。

然后存储该刷新令牌(或OAuth1的访问令牌),并且可以使用该令牌继续无人值守地发出请求,而无需用户参与。

关键外卖:您只需要用户参与您连接的第一时间,然后再也不需要。