Google AnalyticsAPI - 与Symfony2集成

时间:2015-04-07 11:25:53

标签: api symfony google-analytics integration

我正尝试通过OAuth2访问Google AnalyticsAPI。

我做了什么:

  1. 打开开发者控制台> API和Auth>凭证

  2. 创建新的客户ID

  3. 生成p12键

  4. 复制服务器上的密钥

  5. 打开Goog​​le Analytics分析页>管理员>帐户>用户管理

  6. 从生成的客户端ID添加电子邮件,例如:xxxxxxxx-xxxxxxxxxxxxxxx@developer.gserviceaccount.com

  7. 点击此电子邮件阅读并分析权限

  8. 然后当我回到开发者控制台>允许。新电子邮件将添加到具有“编辑权限”的服务帐户

  9. 重新检查Google Analytics是否已启用且数据是否已进入。

  10. 现在我已经安装了widop / google-analytics-bundle并配置了捆绑包:

    widop_google_analytics:
        client_id:        "xxxxxxxx-xxxxxxxxxxxxxxx@developer.gserviceaccount.com"
        profile_id:       "ga:12345678"
        private_key_file: "mykey.p12"
        http_adapter:     "widop_http_adapter.curl"
    

    我尝试创建的查询是:

            $profileId = 'ga:12345678';
            $query = new Query($profileId);
    
            $query->setStartDate(new \DateTime('-2months'));
            $query->setEndDate(new \DateTime());
    
            $query->setMetrics(array('ga:visits' ,'ga:bounces'));
            $query->setDimensions(array('ga:browser', 'ga:city'));
    
            $query->setSorts(array('ga:country', 'ga:browser'));
    
            $query->setFilters(array('ga:browser=~^Firefox'));
    
            $query->setSegment('gaid::10');
    
            $query->setStartIndex(1);
            $query->setMaxResults(10000);
            $query->setPrettyPrint(false);
            $query->setCallback(null);
    
            $clientId = 'xxxxxxxx-xxxxxxxxxxxxxxx@developer.gserviceaccount.com';
            $privateKeyFile = 'mykey.p12';
            $httpAdapter = new CurlHttpAdapter();
    
            $client = new Client($clientId, $privateKeyFile, $httpAdapter);
            $token = $client->getAccessToken();
    
            $service = new Service($client);
            $response = $service->query($query);
    
            return $response;
    

    作为回复,我收到了这个错误:

    User does not have sufficient permissions for this profile.
    

    当我打开开发者控制台>概述> 1小时(标签)

    我注意到请求正在进行中。

    从所有这些 - 我认为身份验证和查询是正常的,但用户无权获取任何类型的数据,这是奇怪的,因为我已授予读取和分析权限 xxxxxxxx-xxxxxxxxxxxxxxx@developer.gserviceaccount.com

    该异常的原因是什么?

1 个答案:

答案 0 :(得分:1)

我不知道你是否已经解决了这个问题。 对我而言,解决方案是在分析帐户中使用视图ID而不是帐户ID。 视图ID位于Google Analytics管理面板设置的第三列。

抱歉我的英文。