如何使用谷歌广告词api获取所有活动的详细信息


How to get all campaigns details with google adwords api?

我可以使用谷歌广告词api(带有测试帐户)获得活动列表,我想使用api获得每个活动的所有详细信息(印象、点击、预算、成本、cpc…),如何做到这一点?尝试这个:

  // Get the service, which loads the required classes.
  $campaignService = $user->GetService('CampaignService', ADWORDS_VERSION);
  // Create selector.
  $selector = new Selector();
  $selector->fields = array('Id', 'Name','Impressions', 'Clicks');
  $selector->ordering[] = new OrderBy('Name', 'ASCENDING');
  // Create paging controls.
  $selector->paging = new Paging(0, AdWordsConstants::RECOMMENDED_PAGE_SIZE);
  do {
    // Make the get request.
    $page = $campaignService->get($selector);
    // Display results.
    if (isset($page->entries)) {
      foreach ($page->entries as $campaign) {
        printf("Campaign with name '%s' and ID '%s' and Impressions %s was found.'n",
            $campaign->name, $campaign->id,$campaign->impressions);
      }
    } else {
      print "No campaigns were found.'n";
    }
    // Advance the paging index.
    $selector->paging->startIndex += AdWordsConstants::RECOMMENDED_PAGE_SIZE;
  } while ($page->totalNumEntries > $selector->paging->startIndex);

但是得到这个错误:

An error has occurred: [SelectorError.INVALID_FIELD_NAME @ serviceSelector; trigger:'Impressions', SelectorError.INVALID
_FIELD_NAME @ serviceSelector; trigger:'Clicks']

谢谢。

对于印象、点击和转换等性能数据,您必须使用ReportingService。(您无法通过CampaignService查询这些信息)对于ReportingService,您必须使用CAMPAIGN_PERFORMANCE_REPORT。

https://developers.google.com/adwords/api/docs/appendix/reports/campaign-performance-report

我建议将AWQL用于查询,因为它与SQL非常相似。因此,如果您熟悉SQL,就很容易理解。

https://developers.google.com/adwords/api/docs/guides/awql

PHP示例(CriteriaReport):https://github.com/googleads/googleads-php-lib/blob/master/examples/AdWords/v201509/Reporting/DownloadCriteriaReportWithAwql.php