adwords api和MCC帐户以及如何在报告中添加客户ID

时间:2014-03-22 04:55:20

标签: python google-adwords

我正在使用python adwords api v201402。

我有一个mcc帐户。

        report_downloader = self.client.GetReportDownloader(version='v201402')
        # Create report definition.
        report = {
            'reportName': 'Last 7 days CRITERIA_PERFORMANCE_REPORT',
            'dateRangeType': 'LAST_7_DAYS',
            'reportType': 'CRITERIA_PERFORMANCE_REPORT',
            'downloadFormat': 'CSV',
            'selector': {
                'fields': ['CampaignId', 'AdGroupId', 'Id', 'CriteriaType',
                           'Criteria', 'Impressions', 'Clicks', 'Cost']
            },
            # Enable to get rows with zero impressions.
            'includeZeroImpressions': 'false'
        }

If I dont add a customer ID I get the below error:
    output, return_money_in_micros)
  File "/usr/local/lib/python2.7/dist-packages/googleads-1.0.1-py2.7.egg/googleads/adwords.py", line 406, in _DownloadReport
    raise self._ExtractError(e)
googleads.errors.AdWordsReportBadRequestError: Type: AuthenticationError.CLIENT_CUSTOMER_ID_INVALID
Trigger: <null>
Field Path: None

如何添加客户ID?我尝试添加&#39; clientCustomerId&#39;:&#34; xxx-xxx-xxx&#34;在哈希,但我得到以下:

  File "/usr/local/lib/python2.7/dist-packages/suds_jurko-0.6-py2.7.egg/suds/mx/core.py", line 71, in append
    if self.start(content):
  File "/usr/local/lib/python2.7/dist-packages/suds_jurko-0.6-py2.7.egg/suds/mx/literal.py", line 86, in start
    raise TypeNotFound(content.tag)
suds.TypeNotFound: Type not found: 'clientCustomerId'

3 个答案:

答案 0 :(得分:1)

{API}客户端对象中设置了clientCustomerId

根据您的目标,您应该在配置文件或client方法中设置此值。

答案 1 :(得分:1)

这有点晚了,但希望这可能有助于其他人绊倒这个问题。

如果您有多个客户,您需要在yaml之外明确设置clientCustomerId,在您有一个MCC但有多个客户端的情况下,您可以执行以下操作:

self.client = AdWordsClient.LoadFromStorage()
self.client.SetClientCustomerId(<client_customer_id>)

之后,您可以根据需要使用报告下载程序,并根据需要重新分配客户ID。

答案 2 :(得分:0)

确保您的Googleads.yaml文件已正确配置并位于您的主目录中。我得到了类似的错误并修复了它。