如何仅使用管理帐户从 Adwords API 获取点击效果报告?
Posted
技术标签:
【中文标题】如何仅使用管理帐户从 Adwords API 获取点击效果报告?【英文标题】:How can I get a Click Performance Report from the Adwords API with just a Management account? 【发布时间】:2018-06-11 09:13:20 【问题描述】:这是我第一次使用 Adwords API,我正在尝试设置一个调用来下载一个帐户的点击效果帐户。我得到了
“CUSTOMER_SERVING_TYPE_REPORT_MISMATCH”
我拨打电话时出错,这似乎是因为该帐户是经理帐户,根据文档here 无法生成报告。到目前为止,我找到的所有帮助都说要使用 CustomerService 获取可用帐户的列表,然后使用其中一个非经理帐户来提出报告请求。但是,当我尝试此操作时,我找不到其他帐户 - 请参见下面的代码:
Dim adw As New AdWordsUser
Dim service As CustomerService = CType(adw.GetService(AdWordsService.v201806.CustomerService), CustomerService)
Dim responses As New List(Of ReportResponse)
Dim customers As Customer() = service.getCustomers()
For Each c As Customer In customers
Dim config As New AdWordsAppConfig() With .ClientCustomerId = c.customerId.ToString
Dim user As New AdWordsUser(config)
Dim report As New ReportUtilities(user, definition)
responses.Add(report.GetResponse())
Next
当我进入 For 循环时,“客户”只有一个成员 - 经理帐户。我觉得我对帐户的工作方式有些误解 - 经理帐户无法生成报告似乎很奇怪。
我在这里错过了一些基本的东西吗?
编辑:我正在使用 Adwords v201806
【问题讨论】:
您似乎需要一个与该经理帐户 (support.google.com/adwords/answer/7456530?hl=en-GB) 关联的个人帐户。您能否进一步研究您的客户树? 【参考方案1】:有点解决了,希望我的经验可以对遇到同样问题的人有所帮助:
最终,我通过登录 Adwords 网站并在其中获取相关帐户的 clientID,将其硬编码,并使用使用该 clientID 实例化的 User 对象进行 API 调用,从而解决了这个问题。
Vivek 的回答帮助我理解了为什么经理帐户无法进行报告调用,但我仍然不明白为什么我的原始代码只能找到经理帐户,而不是我可以看到的任何广告客户帐户在 Adwords 网站上
【讨论】:
【参考方案2】:您无法从经理帐户下载报告。
原因
首先您需要了解什么是经理帐户?
它用于管理广告客户帐户以便于访问、合并帐单、关联帐户的仪表板。 它不用于制作任何广告,而仅用于管理 adwords 帐户。由于没有与经理帐户关联的广告,您无法查询相同的报告,而是查询广告客户帐户的报告,
因此,您将收到 CUSTOMER_SERVING_TYPE_REPORT_MISMATCH
错误,指示使用经理帐户来获取报告。
解决方案
使用Customer
中的canManageClients
标志来验证帐户是否为经理帐户。 api文档link
关联广告客户帐户和查询报告。
(参考官方文档here)
【讨论】:
@Sam 的原始帖子清楚地表明,他知道对经理帐户的限制。问题更侧重于如何从经理帐户获取报告(即如何访问可以获取报告的帐户)... @oliver-clare 是的,您对@Sam 的问题是正确的,但是您无法使用经理帐户的凭据获取报告,除非您已将任何帐户与至少具有报告访问权限的帐户相关联我的回答证明了为什么不能使用Just
Manager Account 下载报告。
您说得很对,我没有否决您的答案,因为它仍然有效且有用。以您提到的方式链接帐户是否是一个简单的过程?也许如果您包含一些步骤来实现这一点,那么您的将是这里的最佳答案。以上是关于如何仅使用管理帐户从 Adwords API 获取点击效果报告?的主要内容,如果未能解决你的问题,请参考以下文章
通过 adwords API 从 MCC adwords 帐户获取所有客户 ID
Google Adwords API with OAuth2 如何获取授权用户的电子邮件?
如何使用 google adwords api 获取所有广告系列详细信息?