Tag Archives: adwords_api

Google Ads API Policy Notes

In our recent blog post we announced the launch of Google Ads API v1. Since the Google Ads API and AdWords API can both be used in production systems, we'd like to clarify a couple of policy items.

Terms and Conditions
You will need to accept our updated Terms and Conditions to access production-ready versions of the Google Ads API. If you attempt to access v1 without accepting the new terms, your request will fail with the error AuthorizationError.MISSING_TOS. Existing AdWords API users will not be required to re-accept the new Terms and Conditions to access the legacy API. For instructions on how to accept the new terms, please take a look at this blog post.

Rate Limits
All Google Ads API rate limits are independent of a developer's use of the AdWords API. If a developer token with Basic Access sends a request to one Ads API, the daily request limit for the other API will not be affected.

Furthermore, daily limits for Basic Access developer tokens are different in the Google Ads API than in the AdWords API. They have been set to accommodate the new GoogleAdsService, which is the unified object retrieval and reporting service. Developer tokens with Basic Access can issue 15,000 requests per day. GoogleAdsService.Search requests with the page_token field set, will not count towards the Basic Access limit.

  • Note: All developer tokens are subject to the daily limit of 1,000 get requests.
Required Minimum Functionality (RMF)
Standard Access tools will continue to be subject to RMF policies. As these tools migrate their functionalities off of the legacy API, they can achieve RMF compliance by using either the AdWords API, Google Ads API or a combination of the two. Required features that are available in both APIs will be documented on both developer sites.

The Google Ads API RMF guide will contain the most up to date RMF list. This list will be made up of RMF items available in the AdWords API as well as new required functionalities that will be made available only in the Google Ads API. RMF due dates for new features will take into account migration efforts from the AdWords API to the Google Ads API.

For more information on these policy updates, please take a look at the following Google Ads API resources: If you have any questions or need help, please contact us via the forum.

AdWords API v201806 sunset reminder

AdWords API v201806 will be sunset on April 2, 2019. After this date, all v201806 API requests will begin to fail. You have the option of migrating directly to Google Ads API v1, which is ready for your production systems. If you’re not ready for the v1 migration, then please migrate to v201809 prior to April 2, 2019 to ensure your API access is unaffected.

We've prepared various resources to help you with the migration: If you have questions while you’re upgrading, please reach out to us on the forum.

Upgrade to the new Google Ads API to get the latest services

Today we’re announcing the production-ready release of the Google Ads API. You should start using v1 in your production systems as we are now out of beta. The v0 beta version of Google Ads API will sunset on April 30, 2019. After this date, all v0 requests will begin to fail. You’ll be pointing to a new v1 endpoint which is different from the v0 endpoint. Please update your client libraries to use the v1 endpoint.

What is the Google Ads API?
The Google Ads API is the replacement of our AdWords API and brings significant advances in innovation and developer productivity. It can be accessed via gRPC with our client libraries and JSON REST for debugging. We are working on getting the last few features released so that all the features in the AdWords API also exist in the Google Ads API. In addition, new features are being added to the Google Ads API that will not be available in the AdWords API.
  • Google Ads Query Language makes querying more flexible.
  • Querying returns objects that can immediately be updated in the API.
  • Coding becomes easier as interacting with lists is more intuitive.
  • Querying and managing budgets is available to everyone for accounts using consolidated billing.
  • You can query, apply, and dismiss Recommendations.
  • Most resources can be mutated synchronously through a single service.
  • Querying change status in the API is more detailed.
How do I get started?
For existing AdWords API developers:
  • Use your existing developer token from the AdWords API.
  • Important: The Terms and Conditions have changed. You’ll need to accept the updated Terms and Conditions and update your contact information in API center. If you don’t, you will get an error when trying to access v1.
    • Sign into the API Center of the manager account where you have your developer token at ads.google.com/aw/apicenter.
    • Scroll down to API contact email, and update it.
    • Scroll down to Principal place of business, accept the new conditions, and click Save.
For new API developers, sign up for a developer token.

Everyone should go through our Quickstart guide to enable Google Ads API and retrieve the newest client libraries.

What resources are available?
Check out these helpful resources: The updated client libraries and code examples will be published by March 6, 2019. If you have any questions or need help, please contact us via the forum.

Change to the Google Ads API and the AdWords API Showcase Ads Clicks Reporting

Update (Feb 21, 2019): clarified wording of the Clicks impact.
On February 27, 2019, the data returned in the Clicks metric for Showcase ads will change in order to more accurately show you the interactions with products via Showcase ads in reporting.

In the AdWords API and the Google Ads API, the Clicks metric (clicks for Google Ads API) will change for the Shopping Performance Report and the Product Partition Report (product_group_view for Google Ads API) as follows:
  • Current reporting: Clicks only include charged clicks.
  • New reporting: Clicks will report all clicks, including free clicks. As a result, you may see a change in the number of reported clicks.
If you have questions, please reach out to us on the forum.

Changes to responsive ads in the AdWords API and Google Ads API

What's changing?
Starting May 15, 2019, AdWords API and Google Ads API requests that attempt to create or modify a responsive ad will fail. Make sure you migrate to the new asset-based responsive display ad before the deprecation date.

Due to changes and improvements to ad types in Display campaigns, keeping track of the names in the UI and APIs can be tricky, so here's a quick overview:
Ad type in the UI AdWords API type Google Ads API type
Responsive ad ResponsiveDisplayAd ResponsiveDisplayAdInfo
Responsive display ad MultiAssetResponsiveDisplayAd Available in an upcoming release

After the deprecation date, behavior of the APIs will change as follows:
  • AdWords API
    • AdGroupAdService requests that attempt to create a ResponsiveDisplayAd will fail with the error AdGroupAdError.CANNOT_CREATE_DEPRECATED_ADS. The API will continue to allow you to remove ResponsiveDisplayAds and modify the status of existing ads.
    • AdService requests that attempt to modify a ResponsiveDisplayAd will fail with the error AdError.CANNOT_MODIFY_AD.
  • Google Ads API
    • AdGroupAdService requests that attempt to create a ResponsiveDisplayAdInfo will fail with the error AdGroupAdError.CANNOT_CREATE_DEPRECATED_ADS. The API will continue to allow you to remove ResponsiveDisplayAdInfos and modify the status of existing ads.
Both APIs will continue to return performance statistics for the deprecated ad types.

Why is this happening?
In October, 2018, responsive display ads replaced responsive ads as the default asset-based ad type for the Display network. To simplify the product suite, we'll be deprecating creation and modification of responsive ads.

What should you do?
Before the deprecation date: If you have any questions or need help, please contact us via the forum.

Upgrade Dynamic Search Ads in AdWords API and Google Ads API by March 6, 2019

Upgrade your AdWords API and Google Ads API ads to use ExpandedDynamicSearchAd (EXPANDED_DYNAMIC_SEARCH_AD) instead of DynamicSearchAd (DYNAMIC_SEARCH_AD) by March 6, 2019. After March 6th, creating these ads through the APIs will fail with an AdGroupAdError.CANNOT_CREATE_DEPRECATED_ADS error, while updating them will result in an AdError.CANNOT_MODIFY_AD error. Existing DynamicSearchAds will continue to serve.

An ExpandedDynamicSearchAd goes beyond automating just headlines and adds the advantage of automating display URLs, so that the subdomain of your ad matches the subdomain of your landing page. In addition, Google Ads will add a path when it expects the path to outperform a plain URL. In order to increase the performance for all our advertisers, Google Ads is moving everyone to the newer format.

If you have any questions while upgrading, please reach out to us on our forum.

Subscribe to our RSS feed to get blog posts via email

(If you want to continue getting email updates about our blog posts, read on. If you don't want email updates from this blog, you can skip this post.)

For some products, the Google Ads Developer team has used Google groups as a way to allow API users to subscribe and get new relevant blog posts delivered to their email address. Starting now, the way you can get email updates about blog posts is changing. We will no longer send an email to the Google group for each new blog post. We will continue to use the Google groups for other important updates, however.

For users who still want email updates, we've introduced new FeedBurner links on the right-hand panel of our blog homepage. You can subscribe to the RSS feed by clicking on the link for the product you're interested in, or subscribe by email by clicking on the [+] link to the right of the product name.

If you use any of the APIs that we discuss on this blog, make sure you subscribe to the feed to keep up with the latest news and updates:

Register now for the upcoming Google Ads API Workshops!

We're excited to announce that a new series of Google Ads API Workshops are coming this March and April! The technical sessions focus on migration from the current AdWords API so you can migrate quickly and efficiently. New users are welcome and will benefit as well.

The workshops will be presented in English, except for those in Taipei, Tokyo, and Shanghai. Details are listed below. Note that location names link to the registration websites: Workshops in all locations will cover the same topics, so choose a location that works best for you. Once you register, we'll send you an email confirmation.

Stay tuned for more detailed agenda on the workshop websites!

If you have any questions about the workshops, you can post them on our forum.

Creating Smart Shopping campaigns with the local inventory ads setting enabled will be rejected

Starting Feb 15, 2019, in all AdWords API versions and in the Google Ads API, we’re going to reject requests that attempt to create a Smart Shopping campaign with the local inventory ads setting enabled. The local inventory ads setting is equivalent to setting enableLocal to true in the AdWords API, and enable_local to true in the Google Ads API. Trying to set those fields to true when creating a Smart Shopping campaign will result in the OperationAccessDenied.OPERATION_NOT_PERMITTED_FOR_CAMPAIGN_TYPE error. Previously, those fields were ignored when passed to the API servers.

Why is this happening?
Throwing an error for the requests described above provides an alert to users that local inventory ads are not supported in Smart Shopping campaigns.

What should you do?
Make sure you do not have code that creates a Smart Shopping campaign with local inventory ads enabled. Specifically, when you create a ShoppingSetting object for a Smart Shopping campaign, take either of the following actions: Follow the guides below for details on how to create a Smart Shopping campaign: As always, if you have any questions or concerns, please post them on our forum.

Announcing v0_7 of the Google Ads API

Today we’re announcing the beta release of the Google Ads API v0_7. With this version, you’ll continue pointing to v0 as your endpoint; however, you'll need to update your client libraries. Here are the highlights:
  • Request Parameters. These parameters give you the ability to change how a request is processed.
    • Set validate_only to true as a request parameter to only validate the request, but not perform it. This was added to all services including GoogleAdsService.Mutate().
    • Set partial_failure to true as a mutate parameter to continue on failure and commit valid operations even if other operations in the same request failed.
  • Reporting. All segment fields are now in a segments, which means all queries must be updated to include segments. before the segment field name.
  • Manager accounts. We've added support for mutating your customer hierarchy with CustomerManagerLink and CustomerClientLink.
  • Client accounts. We’ve introduced fields to identify if a customer is a test account or a manager account. The conversion tracking settings of a customer are now available.
  • Ad formats. We’ve added support for managing ad parameters with the AdParameterService.
  • Audiences. The targeting setting in campaigns and ad groups is now available. We’ve added support for rule-based, logical, and basic user lists. You can now manage remarketing actions for a basic user list.
  • Criteria types. Creating criteria with CriterionType MOBILE_APP_CATEGORY, WEBPAGE, OPERATING_SYSTEM_VERSION, and APP_PAYMENT_MODEL is now possible.
To get started with the API, review these helpful resources: The updated client libraries and code examples will be published within the next 2 business days. If you have any questions or need help, please contact us via the forum.