如何使用Google Apps脚本从Google Analytics Management API请求非抽样报告?

时间:2016-04-08 00:34:31

标签: google-apps-script google-analytics google-api google-analytics-api

我做了什么:

  1. 我有Google Analytics Premium
  2. 我已按照以下说明授权OAuth2 for Apps脚本:https://github.com/googlesamples/apps-script-oauth2
  3. 我在高级Google服务和开发者控制台上启用了Google AnalyticsAPI和Drive API。
  4. 我正在尝试按照此说明请求未采样的报告:https://developers.google.com/analytics/devguides/config/mgmt/v3/mgmtReference/management/unsampledReports/insert#request
  5. 我的问题:

    我在Google Apps脚本编辑器上编写了以下代码,以请求Google AnalyticsAPI的非抽样报告。据我所知,如果它正常工作,它应该在Google Analytics界面上触发非抽样请求。但是,我没有在界面的Pending或Completed部分中看到它。当我运行代码时,没有任何事情发生。我甚至没有看到任何错误。你能帮忙解决我做错了什么吗?提前谢谢。

    这是我的代码:

    function insertView()
    var request = gapi.client.analytics.management.unsampledReports.insert(
        {
          'accountId': 'XXXXXX',
          'webPropertyId': 'UA-XXXXXX-XX',
          'profileId': 'XXXXXXXX',
          'resource': {
            'title': 'A test Report',
            'start-date': '2016-03-31',
            'end-date': '2016-04-04',
            'metrics': 'ga:itemRevenue',
            'dimensions': 'ga:date'
        
          }
        });
    return request;
    }
    }
      
      function outputToSpreadsheetNext(request) {
    
      var sheetId = '1RSkx8n-YRMq7Cnco-mvC83bJPKSnsb3QPx3BItAWmN8';  
      var sheetPrevious= SpreadsheetApp.openById(sheetId).getSheets()[0];
    
      var headerNamesPrevious = []
     for (var i = 0, header; header = request.getColumnHeaders()[i]; ++i) {
        headerNamesPrevious.push(header.getName());
      }
    
      sheetPrevious.getRange(1, 1, 1, headerNamesPrevious.length)
          .setValues([headerNamesPrevious]);
    
        // Print the rows of data.
      sheetPrevious.getRange(2, 1,request.getRows().length,headerNamesPrevious.length)
          .setValues(request.getRows()); 
    
    }
    }

    我已在此处写了关于如何执行此操作的说明:http://sophearychiv.com/how-to-pull-and-automate-unsampled-reports-from-google-analytics-into-google-spreadsheet/

0 个答案:

没有答案