Tag Archives: adwords_api

AdWords API v201705 and v201708 sunset reminder

Both AdWords API v201705 and v201708 will be sunset on March 28, 2018. After this date, all v201705 and v201708 API requests will begin to fail. If you haven't already migrated to v201710, we recommend that you skip v201710 and migrate directly to v201802. Please migrate prior to March 28, 2018 to ensure your API access is unaffected.

We've prepared the following resources to help you with the migration: As always, if you have any questions about this migration, please contact us via the forum.

Upcoming changes to ad network type columns in AdWords API and Scripts reports

On March 19, 2018, we are updating how AdNetworkType1 and AdNetworkType2 columns report zero impression rows related to video networks.

Currently, if you request AdNetworkType1 or AdNetworkType2 columns and request zero impression rows by setting the includeZeroImpressions flag to true, you get back zero impression rows for YOUTUBE_SEARCH and YOUTUBE_WATCH values only if you target these networks in your Advertiser account. After this change, we will always return zero rows corresponding to these network types irrespective of whether you advertise on these networks. Other network types are not affected by this change.

This change makes the behavior of YOUTUBE_SEARCH and YOUTUBE_WATCH network types consistent with the behavior of other network types. Once this change goes live, you may start seeing a higher number of zero impression rows than what you see today when requesting AdNetworkType1 or AdNetworkType2 columns along with zero impression rows.

If you have any questions about these changes, post them in our developer forum.

Update to Engagement Reporting for Bumper Ads

Historically, AdWords API reporting has not included engagements for bumper ads. Bumper ads are video ads that are 6 seconds or shorter, appear at the beginning of a YouTube video, and can't be skipped.

Bumper ads support “drawer open” engagements, where a user can mouse over the ad to expand a widget with more information. These engagements were previously not included in the Engagements and EngagementRate fields in reports. Starting in mid-February 2018, we are going to be changing this behavior for all historical and future bumper ad reporting to include these engagements. This brings bumper ads in line with other types of video ads, which already reported these engagements.

This means that your historical reporting data, starting up to two years ago in January 2016, will be updated to include this statistic to bring it inline with future data.

If you have any questions about this migration, please contact us via the forum.

Upcoming sunset of review extensions in February 2018

Shortly after the release of AdWords API v201802, review extensions will be sunset from both extension settings services and feed services for all API versions.

What will happen?
For extension settings services (AdGroupExtensionSettingService, CampaignExtensionSettingService, CustomerExtensionSettingService):
  • You will not be able to create a new ReviewFeedItem using any of the extension settings services.
  • No ReviewFeedItems will be returned for get() or query() requests to any of the extension settings services.
For feed services (FeedService, FeedItemService, FeedMappingService):
  • You will not be able to pass ID 8 to placeholderType of FeedMapping when creating a new feed mapping.
  • Feeds, feed items and feed mappings related to review extensions will still be returned for get() or query() requests to FeedService, FeedItemService and FeedMappingService, respectively.
For CampaignFeedService, AdGroupFeedService and CustomerFeedService:
  • You will not be able to pass ID 8 to placeholderType of CampaignFeed, AdGroupFeed or CustomerFeed.
  • All CampaignFeed, AdGroupFeed and CustomerFeed that are associated with review extensions (have ID 8 in their placeholderTypes) will not be returned for get() or query().
Note that you can still find historical stats for your review extensions after the sunset in PLACEHOLDER_REPORT and PLACEHOLDER_FEED_ITEM_REPORT.

What should you do?
If you have code that retrieves, adds or updates review extensions using any services above, please review your code before March 1 to ensure that the changes above won’t have a negative impact on your application.

As always, if you have any questions, please post on the forum.

AdWords API v201702 sunset reminder

AdWords API v201702 will be sunset on February 14, 2018. After this date, all v201702 API requests will begin to fail. Given the upcoming sunset of v201705 and v201708 simultaneously in March of 2018, we strongly recommend that you skip v201705 and v201708 and migrate directly to v201710. Please migrate prior to February 14, 2018 to ensure your API access is unaffected.

We've prepared various resources to help you with the migration: As always, if you have any questions about this migration, please contact us via the forum.

Upcoming changes to AdWords OAuth Scope

We are making the following changes to AdWords OAuth Scopes during the week of January 8, 2018.

Invalid OAuth scopes will no longer be supported
One mistake that developers make when obtaining an OAuth2 access or refresh token for AdWords API is to use the service URL prefix (e.g. https://adwords.google.com/api/adwords/cm/v201708, https://adwords.google.com/api/adwords/reportdownload/v201708) as OAuth2 scope. When we switched to OAuth2, this was a common source of confusion for AdWords API users, so we allowed developers to use these scopes. Since most users are now using the new scope, we are sunsetting these old scopes. Any refresh tokens authorized with the old scopes will stop working with an invalid_scope error. If this error occurs, you will have to re-authorize your users with the proper AdWords scope (https://www.googleapis.com/auth/adwords) to continue making API calls.

Change to permitted OAuth 2.0 scopes when creating Location Extension feeds
When creating a Feed for Location Extensions, make sure you set the OAuthInfo object’s httpRequestUrl field to the AdWords API scope (https://www.googleapis.com/auth/adwords). In the past, we also supported using the Google My Business scope (https://www.googleapis.com/auth/plus.business.manage) for this field; we are sunsetting support for this scope. Similarly, the httpAuthorizationHeader field must have an access token that is authorized for the AdWords API scope.

While we don’t expect most users to be affected by these changes, make sure you review your code and make necessary changes if needed. As always, if you have any questions, let us know on the AdWords API forum.

Changes to AdWords Express campaigns in AdWords API reports

If you use AdWords API reports to retrieve performance statistics for AdWords Express campaigns, please read on as these changes will affect you.

What's changing?
In preparation for upcoming improvements, an ongoing migration process is modifying campaigns managed by AdWords Express.

Currently, when you enable an AdWords Express promotion, it creates up to two AdWords campaigns:
  • A Search Network campaign with:
    • AdvertisingChannelType = SEARCH (appears as Search)
    • AdvertisingChannelSubType = SEARCH_EXPRESS (appears as Search Express)
  • A Display Network campaign with:
    • AdvertisingChannelType = DISPLAY (appears as Display)
    • AdvertisingChannelSubType = DISPLAY_EXPRESS (appears as Display Express)
As part of the migration, the two campaigns above will be paused and replaced by a single AdWords campaign with:
  • AdvertisingChannelType = EXPRESS (appears as Express)
  • AdvertisingChannelSubType = UNKNOWN (appears as an empty string)
After the campaigns for a promotion are migrated, performance statistics for the AdWords Express promotion will be available in reports as follows:
  • Performance statistics for dates prior to the migration will be attributed to the original campaigns with SEARCH / SEARCH_EXPRESS and DISPLAY / DISPLAY_EXPRESS.
  • Performance statistics for dates after the migration will be attributed to the new campaign with EXPRESS / UNKNOWN. The new campaign will only appear in the CAMPAIGN_PERFORMANCE_REPORT.
For example, assume an AdWords Express promotion manages the following two AdWords campaigns today:

Campaign ID Campaign Status Advertising Channel Type Advertising Channel Sub Type
1000 ENABLED SEARCH SEARCH_EXPRESS
2000 ENABLED DISPLAY DISPLAY_EXPRESS

After the migration, the account will contain the following campaigns for the AdWords Express promotion:

Campaign ID Campaign Status Advertising Channel Type Advertising Channel Sub Type Performance statistics
1000 PAUSED SEARCH SEARCH_EXPRESS Before the migration
2000 PAUSED DISPLAY DISPLAY_EXPRESS Before the migration
3000 ENABLED EXPRESS UNKNOWN After the migration

What should you do?
Ensure that your application properly handles all three combinations of AdvertisingChannelType and AdvertisingChannelSubType. For example:
  • If your application inspects AdvertisingChannelType or AdvertisingChannelSubType to handle AdWords Express campaigns, please adjust the logic to handle the new combination of EXPRESS / UNKNOWN.
  • If you use predicates on AdvertisingChannelType or AdvertisingChannelSubType to include or exclude AdWords Express campaigns, make sure that your predicate takes the new combination into account.
Reminder: The AdWords API only supports AdWords Express campaigns in reports. You cannot modify AdWords Express entities in your account using the AdWords API.

If you have any questions about this change, please contact us via the forum.

Search impression share data will be updated more frequently

Starting mid-November, we’ll be updating AdWords API impression share reporting data more frequently. As a result, you'll be able to get the previous day's data by 12 PM (your local time). Previously, you might have had to wait up to 48 hours for the previous day’s data. This change affects the following reporting fields:
  • SearchBudgetLostImpressionShare
  • SearchExactMatchImpressionShare
  • SearchImpressionShare
  • SearchRankLostImpressionShare
With this change, you may see data fluctuate for report definitions that contain any of the above fields along with one of the following date ranges:
  • YESTERDAY, TODAY, LAST_7_DAYS, THIS_MONTH, ALL_TIME, LAST_14_DAYS, LAST_30_DAYS, THIS_WEEK_SUN_TODAY, THIS_WEEK_MON_TODAY
  • CUSTOM_DATE that includes the current date or the day before the day when you make a report request
This change allows for more real-time monitoring of search impression share. If you prefer to see more stable values, make sure the date range in your request doesn’t include the current date or yesterday if it’s not yet 12 PM in your time zone.

As always, if you have any questions, please post on the forum.

KeywordOptimizer: Call For Feature Requests

The KeywordOptimizer open-source app demonstrates the exciting possibilities of using the Targeting Idea Service in the AdWords API to identify new keyword suggestions. The app shows how, in combination with estimated traffic volume, to generate new keyword targeting ideas for AdWords using an evolutionary approach. We think that there is a lot more that the tool could do to demonstrate these and other features so we’re asking for your ideas to help shape the future development of the app.

If you’re interested in using KeywordOptimizer or are already using it, we would like to hear your ideas on how we can improve the app. Please submit your suggestions via the GitHub issues page.