Google Analytics - 第三方访问帐户授权

时间:2015-11-23 13:17:10

标签: php google-analytics google-analytics-api

我正在编写一个脚本,用于查询Google Analytics,并根据其提取的信息创建报告。

我已经浏览了Google Analytics网站上的PHP快速入门指南,并设置了开发人员服务帐户并开始工作。

然而,我遇到的问题是我只能访问包含此电子邮件的帐户以及我无法添加此帐户的许多其他帐户,因为我没有权限。我们无法在这些帐户上获得开发者服务帐户,但我们确实有一封公司电子邮件,其帐户具有读取权限。

有没有办法通过公司电子邮件而不是开发者服务帐户查询Google Analytics?或者是否有其他方法可以查询Google Analytics以从我们的帐户中获取所需信息?

2 个答案:

答案 0 :(得分:3)

当您有权访问相关帐户时,或者如果帐户的所有者愿意通过将其添加为用户来授予您的服务帐户访问权限,则服务帐户可以正常运行。

如果你不能这样做那么你使用Oauth2,这将要求所有者或帐户的用户。基本上任何有访问权限的人都会进入并验证您的应用程序。 Hello Analytics API: PHP quickstart for web applications是使用Oauth2的官方文档。由于您的公司电子邮件可以访问其帐户,因此您应该能够使用该电子邮件对应用程序进行身份验证,然后再访问它。

如果您尝试自动执行此操作。您需要请求offline access才能获得刷新令牌,然后保存刷新令牌,然后您就可以随时访问该帐户以创建报告。无需重新验证应用程序。

答案 1 :(得分:0)

我认为获取此信息的最佳方式是您拥有1个主帐户下的所有子帐户,而不是完成令牌交换 使用OAuth或您可以拥有主帐户的服务帐户,该帐户将能够检索所有信息并发布您只有 查询management_accounts类

上的listManagementAccounts()方法

让您说GAClient是您的Google Analytics客户端,在这种情况下,完美的通话就像

$ accounts = $ GAClient-> management_accounts-> listManagementAccounts();

如果您无权访问或者您正在创建独立服务,那么您可以使用oAuth登录来保存令牌,然后您可以在需要时查询它。

这是相同的帮助网址。

https://developers.google.com/api-client-library/php/auth/web-app