GoogleJsonResponseException:必填字段名称 发件人:收件人:注意:参考:

问题描述

我是第一次使用Google Analytics(分析)API,并且正在尝试创建新的媒体资源。我在Google App脚本中写了一个JS函数

function insertproperty() {
  var resource = 
      {
        //  "accountId": "177832616","resource":{
          "name": "Test Property 7",//  "dataRetentionResetonNewActivity": false,"websiteUrl": "https://www.test.com"
        }
      }
  var accountID = '177832616';
  var request = Analytics.Management.Webproperties.insert(resource,accountID);
    
 // request.execute(function (response) { console.log(property.id) });
}

这是API引发的错误

GoogleJsonResponseException:对analytics.management.webproperties.insert的API调用失败,并显示以下错误:必填字段名。 (第56行,文件代码”)

insert()方法似乎有两个参数:insert(Webproperty resource,string accountId);

由于无法识别我添加name的{​​{1}}键/值,因此我猜测我没有将变量声明为resource类型,而且不确定如何去做这个。我以为WebpropertyWebproperty变量类型,但是目前我不确定下一步该怎么做。在线进行研究时,我找不到关于API { }的任何信息,因此任何上下文/信息都将有所帮助。

解决方法

根据您的问题,我可以理解Google Analytics API与Google Apps脚本的高级Google服务一起使用。在这种情况下,new_df = (df.assign(total=df[['VacationHours','SickLeaveHours']].sum(axis=1)) .assign(lambda df: df.groupby(['ManagerID','JobTitle'])['total'].transform('sum')) ) 中的resource可以直接使用“ Web属性:插入”方法的请求正文。我认为您的错误原因是由于此。因此,请进行如下修改,然后再次进行测试。

发件人:

Analytics.Management.Webproperties.insert(resource,accountId)

收件人:

var resource = 
    {
      //  "accountId": "177832616","resource":{
        "name": "Test Property 7",//  "dataRetentionResetOnNewActivity": false,"websiteUrl": "https://www.test.com"
      }
    }

注意:

  • 如果var resource = { "name": "Test Property 7","websiteUrl": "https://www.test.com" } 不正确,则会发生错误。请注意这一点。
  • 在这种情况下,accountId中的requestiansedano's comment直接返回值。这样您就可以看到类似var request = Analytics.Management.Webproperties.insert(resource,accountID);console.log(request)的值。

参考: