问题描述
我是第一次使用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
类型,而且不确定如何去做这个。我以为Webproperty
是Webproperty
变量类型,但是目前我不确定下一步该怎么做。在线进行研究时,我找不到关于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
中的request
从iansedano's comment直接返回值。这样您就可以看到类似var request = Analytics.Management.Webproperties.insert(resource,accountID);
和console.log(request)
的值。