Google Ads Developer Blog |
AdWords API: How to migrate from Stats object to AdHoc reports Posted: 21 Oct 2013 11:17 AM PDT Starting with v201309 you'll need to run AdHoc reports in order to retrieve stats.. If you try to retrieve "Impressions", "Cost" and "Ctr" fields in CampaignService, for example, INVALID_FIELD_NAME will be returned. Instead, you need to retrieve "Impressions", "Cost" and "Ctr" fields using Campaign Performance Report. If you're not yet familiar with AdHoc reports, here are some basic facts:
Also keep in mind there are differences between services and AdHoc reports as following:
AdWords API v201306 with Stats objects // Create selector. Selector selector = new Selector(); selector.setFields(new String[] { "Id", "Name", "Impressions", "Clicks", "Cost", "Ctr"}); selector.setPredicates(new Predicate[] {new Predicate("Impressions", PredicateOperator.GREATER_THAN, new String[] {"0"})}); String oneWeekAgo = new DateTime().minusDays(7).toString("yyyyMMdd"); String yesterday = new DateTime().minusDays(1).toString("yyyyMMdd"); selector.setDateRange(new DateRange(oneWeekAgo, yesterday));Retrieving the same stats using AdHoc reports // Create selector. Selector selector = new Selector(); List<String> fields = selector.getFields().addAll(Lists.newArrayList( "Id", "Name", "Impressions", "Clicks", "Cost", "Ctr"); // Create report definition. ReportDefinition reportDefinition = new ReportDefinition(); reportDefinition.setReportName( "Campaign performance report #" + System.currentTimeMillis()); reportDefinition.setDateRangeType( ReportDefinitionDateRangeType.LAST_7_DAYS); reportDefinition.setReportType( ReportDefinitionReportType.CAMPAIGN_PERFORMANCE_REPORT); reportDefinition.setDownloadFormat(DownloadFormat.CSV); reportDefinition.setIncludeZeroImpressions(false); reportDefinition.setSelector(selector);Using AWQL you can do the same much simpler String query = "SELECT Id, Name, Impressions, Clicks, Cost, Ctr" + "FROM CAMPAIGN_PERFORMANCE_REPORT " + "WHERE Impressions > 0 DURING LAST_7_DAYS";As always, please feel free to ask any questions on the AdWords API forum or our Google+ page. |
You are subscribed to email updates from Google Ads Developer Blog To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
No comments:
Post a Comment