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

Google Analytics - 3rd party access to account authorisation

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

我已经阅读了 Google Analytics 网站上的 PHP 快速入门指南,并设置并运行了开发者服务帐户。

然而,我遇到的问题 运行 是我只能访问拥有此电子邮件的帐户以及许多其他帐户,因为我没有权限而无法将其添加到其中。我们无法将开发人员服务帐户连接到这些帐户,但我们确实有一个公司电子邮件,对他们的帐户具有读取权限。

有什么方法可以通过公司邮箱而不是开发者服务帐号查询Google Analytics?或者是否有其他方式查询 Google Analytics 以从他们的帐户中获取我需要的信息?

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

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

如果您正在尝试将其自动化。您将需要请求 offline access 以获取刷新令牌,然后保存刷新令牌,您将能够随时访问该帐户以创建报告。无需重新验证应用程序。

我认为获取此信息的最佳方式是您拥有 1 个主账户下的所有子账户,然后完成令牌交换 使用 OAuth,或者您可以拥有主帐户的服务帐户,该服务帐户将能够检索您只有的所有信息和 post 通过 management_accounts class

查询 listManagementAccounts() 方法

假设您 $GAClient 是您的 Google Analytics 客户端,在这种情况下,完美的调用可以像

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

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

这是相同的帮助 url。

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