在 Google Apps 脚本中使用 Adwords API (MccApp)
Posted
技术标签:
【中文标题】在 Google Apps 脚本中使用 Adwords API (MccApp)【英文标题】:Use Adwords API (MccApp) in Google Apps Script 【发布时间】:2015-01-19 18:03:48 【问题描述】:我有一个用 GAS(Google Apps 脚本)编写的自定义 API,并希望在其中使用 Adwords API。
有时与 MccApp 一起使用,该服务可从 Adwords 脚本本身(我的客户中心 > 脚本)中轻松获得。
例如:
function account(client)
var result =
'id': null,
'campaigns':
result.id = client.getCustomerId()
var currentAct = AdWordsApp.currentAccount()
MccApp.select(client)
var campaignIterator = AdWordsApp.campaigns().get()
while (campaignIterator.hasNext())
var campaign = campaignIterator.next()
result.campaigns[campaign.getName()] = campaign.getId()
MccApp.select(currentAct)
return result
但是,此 API 在 Google Apps 脚本中并不容易使用。我尝试在“资源 > 高级 Google 服务”和开发者控制台下启用它,但 UI 没有提供我可以看到的选项。
问题:是否可以在 Google Apps 脚本中启用 AdwordsApp 和 MccApp 以便上述代码 sn-p 可以在 GAS 中运行?
如果没有,我知道已经有两种解决方法:
只需使用 Adwords 脚本
与来自 GAS 的 API 进行通信,就好像它是一个外部服务一样(即......使用 SOAP、REST 等......)
【问题讨论】:
那么,您已经知道UrlFetchApp.fetchApp(the url)
了吗? Google Documentation - UrlFetchApp Class
是的,但我希望有一种方法可以在 GAS 中使用 Adwords API,就像在 Adwords 脚本中使用它一样。
【参考方案1】:
经过大量研究,确实没有办法添加 MccApp 和 AdwordsApp 服务以在 Google Apps 脚本中使用。最接近的解决方案是与 API 进行通信,就好像它是外部的一样,或者只是使用 Adwords 脚本。
【讨论】:
developers.google.com/apps-script/guides/services/external 结账了吗? 这是一个旧线程,所以自从我上次问这个问题以来事情可能已经改变了。【参考方案2】:您似乎可以通过 Management API 访问 AdWord API:
请参阅概念概述部分:
AdWords 链接可以在网络媒体资源级别构建。
Google Developer Guide - What Is The Management API - Overview
您可以使用 Google Analytics API 访问 Management API。
引用:
分析服务允许您使用 Google Analytics Apps 脚本中的管理 API 和报告 API
Google Documentation - Google Analytics API
因此,您需要使用 RESOURCES 菜单,选择 ADVANCED GOOGLE SERVICES,然后打开 Google Analytics API。
使用 Google Analytics API,您可以访问 Management API。
【讨论】:
该死...我认为这可能是答案,但那里没有 Adwords 链接。以上是关于在 Google Apps 脚本中使用 Adwords API (MccApp)的主要内容,如果未能解决你的问题,请参考以下文章
在 Google Apps 脚本中使用 BigQuery 连接到 Google 电子表格
Google 表单 - 使用 Google Apps 脚本在项目中添加自定义按钮“更多信息”
如何在 Google Apps 脚本中使用服务帐户对 Google 表格进行身份验证
使用 Google Apps 脚本在 Blogger 中创建帖子