[英]Can't get Google Ads metrics for manager account, can't get permission for client account
我正在尝试通过 Python 客户端使用 Google Ads API 访问客户帐户的指标。
目前我正在使用get_campaign_stats_to_csv.py
示例的修改版本,查询:
import datetime
last_three_days = datetime.datetime.today() - datetime.timedelta(days=3)
query = """
SELECT
customer.descriptive_name,
metrics.cost_micros
FROM customer
WHERE
segments.date > '{last_three_days}'
AND segments.date <= '{today}'""".format(
last_three_days=last_three_days.strftime('%Y-%m-%d'),
today=datetime.datetime.today().strftime('%Y-%m-%d'))
它需要我们报告的帐户的命令行参数--customer_id=
,用法如下:
search_request.customer_id = customer_id # e.g., '--customer_id=1234567890'
问题是,当我使用我的经理帐户客户 ID 1234567890
,出现错误:
error_code {
query_error: REQUESTED_METRICS_FOR_MANAGER
}
message: "Metrics cannot be requested for a manager account. To retrieve metrics, issue
separate requests against each client account under the manager account."
}
我认为这意味着使用客户端 ID。 但是当我使用客户端 ID 0987654321
,出现错误:
error_code {
authorization_error: USER_PERMISSION_DENIED
}
message: "User doesn\'t have permission to access customer. Note: If you\'re accessing a
client customer, the manager\'s customer id must be set in the \'login-customer-id\'
header. See https://developers.google.com/google-ads/api/docs/concepts/call-structure#cid"
}
错误消息中的链接导致以下标题:
这让我回到第一个问题,当我使用经理帐户 ID 时,API 会吐出假人。
我已经检查了这个堆栈溢出问题,但我认为我们遇到了不同的问题,因为我所有的帐户旁边都有红色的“测试帐户”标志。
最后要说明的是:有两个测试客户帐户,我都使用准广告系列设置了它们。
我写了那个例子。 您可以在命令行或 YAML 文件中设置客户端 ID。 如果您使用经理帐号 ID,则无法使用。
我知道术语令人困惑,但这正是 API 所期望的。
如果您有任何其他问题,请告诉我。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.