【发布时间】:2018-06-29 08:29:58
【问题描述】:
我拥有 Adwords 经理帐户,我在其中为每个客户创建子帐户。 我想通过执行此过程与我的客户分析帐户共享这些 Adwords 帐户:
1 - 我的客户将我的 API 帐户电子邮件 (services@project.gserviceaccount.com) 添加到他们的分析帐户中作为管理员用户。
2 - 我要求他们给我 Analytics accountId 和 webPropertyId
3 - 我将此请求与我的 Adwords 帐户的 ID 一起用于 customerId:
credentials = ServiceAccountCredentials.from_json_keyfile_name(
KEY_FILE_LOCATION, 'https://www.googleapis.com/auth/analytics.edit')
analytics = build('analytics', 'v3' , credentials=credentials)
analytics.management().webPropertyAdWordsLinks().insert(
accountId='123456',
webPropertyId='UA-123456-1',
body={
'adWordsAccounts': [
{
'customerId': '123-456-7890'
}
],
'name': 'AdWords Link'
}).execute()
我收到了这个错误:
googleapiclient.errors.HttpError: <HttpError 403 when requesting https://www.googleapis.com/analytics/v3/management/accounts/177372348/webproperties/UA-121121420-1/entityAdWordsLinks?alt=json returned "User does not have sufficient permissions for this account.">
我做错了什么?
【问题讨论】:
-
鉴于您遇到授权错误,您确定这种方法实际上是 Google 支持的吗? GA 支持链接到 AdWords (support.google.com/adwords/answer/…)。我不知道您是否可以连接到多个 AdWords 帐户,但我猜他们可能希望此链接到位,并成为您用于连接数据的特定机制。
-
实际上我可以手动完成这个过程(我要求我的客户在他的分析中将我的谷歌帐户添加为管理员用户,然后我可以为他创建受众并在我的个人 Adwords 帐户中使用这些受众) 但我无法通过 API 找到方法。我认为问题在于我的分析的 Api 客户端 oAuth 和我的 adwords 帐户没有关联(因为它不是同一个人)。我可以在 adwords api 和 analytics api 中使用相同的 API 密钥吗?
-
不知道,抱歉。
标签: google-analytics google-api google-analytics-api google-ads-api