如何使用 Google 管理 API 删除待处理的未抽样报告?



我们有Google Analytics Premium。

我想删除谷歌表单/谷歌脚本中未采样的报告。

我一直在使用管理API获取未采样的报告,网址为:https://developers.google.com/apis-explorer/#p/analytics/v3/analytics.management.unsampledReports.get

我可以使用获取和安排未采样的报告

GET https://www.googleapis.com/analytics/v3/management/accounts/12345/webproperties/33243423/profiles/12345/unsampledReports/?access_token=[access_token]

然而,就我的一生而言,我不能删除报告使用:(不断获得用户没有前提条件)

https://developers.google.com/apis-explorer/#p/analytics/v3/analytics.management.unsampledReports.delete

DELETE https://www.googleapis.com/analytics/v3/management/accounts/12345/webproperties/33243423/profiles/12345/unsampledReports/?key={YOUR_API_KEY}

我还可以使用对报告进行排队

function deleteAllReports() {
  var logger = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Unsampled Report Logs');
  var lastRow = logger.getLastRow();
  var unsampledReportsArray = logger.getRange(2, lastRow+1, 1, 1).getValues();
   var request = Analytics.Management.UnsampledReports.Delete({
      'accountId': '123456',
      'webPropertyId': 'UA-123456-1',
      'profileId': '7654321',
      'unsampledReportId': '1112223334111222333411'
    });
}

编辑:

我当前正在从获取访问令牌https://accounts.google.com/o/oauth2/token使用我的client_id、clientsecret和refresh_token。

大致:

var uri = "https://accounts.google.com/o/oauth2/token";
  var payload =
      {
        'client_id' : 'XXXXX',
        'client_secret' : 'XXXXX',
        'grant_type' : 'refresh_token',
        'content_type' : 'application/x-www-form-urlencoded',
        'refresh_token' : 'XXXXX'
      };
  var options = 
      { "method" : "POST",
       "muteHttpExceptions" : false,
       "payload" : payload
      };

您收到的特定错误消息"User does not have sufficient permissions for this XXXX"表明您的代码可能出现以下两个问题之一:

  1. 您已被验证为对该特定XXXX没有编辑权限的用户
  2. 您未识别帐户ID、属性ID、视图ID或未采样报告ID,具体取决于错误消息中的XXXX

更多资源

  • 未采样报告参考文档
  • 《未抽样报告开发人员指南》

相关内容

  • 没有找到相关文章

最新更新