Zoho API v2登录问题

时间:2018-06-14 06:08:32

标签: oauth oauth-2.0 zoho

我们使用Zoho OAuth API的响应来验证我们的应用(RoloCRM)中的用户。我们的方法适用于大多数帐户,但对少数用户而言却失败了。 我们列出了以下步骤,并在登录期间使用了我们的应用程序中的API。

Step1 :我们使用Zoho OAuth API的v2进行登录并获取基本详细信息。 https://www.zohoapis.com/oauth/v2/auth?scope=ZohoCRM.users.ALL,ZohoCRM.org.ALL,ZohoCRM.modules.ALL,ZohoCRM.settings.ALL&client_id=&安培;&安培; RESPONSE_TYPE =代码&安培; ACCESS_TYPE =离线&安培; REDIRECT_URI =

Step2 :一旦我们获得了访问权限&刷新令牌,我们在api下面调用以获得当前登录的用户的电子邮件和zoho-user-id。 https://www.zohoapis.com/crm/v2/users?type=CurrentUser

Step3 :我们在api下面调用以获取当前登录用户的组织ID。 https://www.zohoapis.com/crm/v2/org

在第2步中,我们收到当前登录用户的zoho-user-id。我们希望不同的zoho团队能够做到这一点。

此假设有效吗?

示例: 在我们的一个示例中,同一个用户有2个注册的zoho组织,其中包含2个不同的电子邮件ID(Email1和Email2)。

  1. 用户验证了带有zoho的email1,在第二步中我们得到了" zohouserid1"和 在第3步中,我们得到了" zohoorgid1"
  2. 用户验证了带有zoho的电子邮件2 step2我们得到" zohouserid1"在第3步中我们得到" zohoorgid1"
  3. 我们为两个不同的电子邮件获取相同的zohouserid和组织ID(属于同一用户)。

    是否可以根据登录用户的电子邮件获取实际的组织ID和用户ID?

1 个答案:

答案 0 :(得分:0)

这可能是您没有为相应的电子邮件ID使用正确的client_id,请确保在对(a)部分使用client_id时,必须部分使用相同的client_id(对于您正在使用的给定电子邮件ID) (b)。

(a)对于dwest898@test.com :两个代码中此电子邮件ID的client_id应该相同

echo "<a href='https://accounts.zoho.com/oauth/v2/auth?scope=ZohoSign.account.CREATE,ZohoSign.account.READ,ZohoSign.account.UPDATE,ZohoSign.documents.all,ZohoCRM.modules.ALL,WorkDrive.team.ALL,WorkDrive.workspace.ALL,WorkDrive.files.ALL&client_id=1000.NZAGLITT9FLS31433JQ23&response_type=code&access_type=offline&redirect_uri=http://localhost/zoho_leads/testaccesstoken.php'>Link</a>";

(b)对于dwest898@test.com

 $client_id = "1000.NZAGLITT9FLS31433JQ23";
 $client_secret = "a94365a4a0ad7f64b039709b916b73a";

(a)对于adev4314@test.com :两个代码中此电子邮件ID的client_id应该相同

echo "<a href='https://accounts.zoho.com/oauth/v2/auth?scope=ZohoCRM.modules.ALL,WorkDrive.team.ALL,WorkDrive.workspace.ALL,WorkDrive.files.ALL&client_id=1000.RORGERNX224MJSQHA5QF7Q&response_type=code&access_type=offline&redirect_uri=http://localhost/zoho_leads/testaccesstoken.php'>Link</a>";  

(b)对于adev4314@test.com

 $client_id = "1000.RORGERNX224MJSQHA5QF7Q";
 $client_secret = "8eaa1d5c89b588567490fc95f33ca15";