Category Archives: Ads Developer Blog

The official blog for information about the AdWords, AdSense, DoubleClick and AdMob APIs and SDKs

Google Ads API Returning to Beta

Your feedback about the performance of our products is very important to us. After launching the Google Ads API in March, we’ve heard feedback about slow response times compared to the AdWords API. After in-depth analysis, we’ve determined that the overall performance of the Google Ads API is not ready for production usage.

We take performance very seriously, and this is our highest priority to address. In the meantime, we’re reverting Google Ads API back to beta status and recommend production systems to use AdWords API for the best experience.

If you’re currently using the Google Ads API in production, please contact googleadsapi-support@google.com to discuss recommendations specific to your use cases.

We appreciate all the work you’ve put into learning and developing on the new Google Ads API. We thank you for your feedback and are committed to delivering a better performing API to meet you and your customers’ needs. As more updates become available, we'll share them on this blog.

Upcoming changes to environment and position targeting in DV360

On August 26, 2019, we'll be introducing a number of changes to environment and position targeting in Display & Video 360. These changes are being made to allow you to target your ads with increased accuracy and granularity. To learn more about these changes and how they will affect various parts of the Display & Video 360 product, visit the help center.

How will this affect API users?

A new version of Structured Data Files (SDF) will launch alongside these changes, containing new fields that allow you to retrieve and set all of the new targeting options. At the same time, existing SDF versions will be updated to disallow retrieving and setting legacy environment and position targeting options.

The following legacy fields will no longer be populated on download and will return errors on upload for SDF v3.1, v4, v4.1, and v4.2. Suggested SDF v5 replacement fields are provided where applicable.


SDF Entity
Legacy Field
New SDF v5 Field(s)
Campaign
Environment Targeting
Environment Targeting
Viewability Targeting Ad Position - Exclude
No longer supported
Viewability Targeting Ad Position - Include
Position Targeting - On Screen
Position Targeting - Display On Screen
Insertion Order
Environment Targeting
Environment Targeting
Video Ad Position Targeting
Position Targeting - Video Position In Content
Position Targeting - Audio Position in Content
Viewability Targeting Ad Position - Exclude
No longer supported
Viewability Targeting Ad Position - Include
Position Targeting - On Screen
Position Targeting - Display On Screen
Line Item
Environment Targeting
Environment Targeting
Video Ad Position Targeting
Position Targeting - Video Position In Content
Position Targeting - Audio Position in Content
Viewability Targeting Ad Position - Exclude
No longer supported
Viewability Targeting Ad Position - Include
Position Targeting - On Screen
Position Targeting - Display On Screen

If you are a current user of SDF and rely on any of the legacy fields listed above, you will need to migrate to SDF v5 in order to make use of the new targeting fields. While this SDF version will not be available until August 26, we are providing a preview of the documentation that you can use to prepare.

Questions about this or anything else DV360 related? Contact our support team.

May 2019 Ad Manager API Workshop Slides

Thanks to everyone who was able to make it to the recent Ad Manager API Workshop in New York! If you are interested in the content we covered, you can now access the presentation materials from the workshop talks.

We are already planning future workshops, so be sure to check this blog for more updates. If you have general API questions or comments, please reach out to us on the Ad Manager API forums.

Google Mobile Ads SDK for Android: How to migrate to v18.0.0

Earlier this week, Google Play services released a major update to many of its libraries to migrate all Android support library dependencies to Jetpack (using androidx.* packages). This includes the play-services-ads library from the Google Mobile Ads SDK, which has been updated to 18.0.0.

While the Google Mobile Ads SDK itself hasn’t changed between version 17.2.1 and 18.0.0, you’ll need to migrate your own app and all of your dependencies to AndroidX in order to pick up play-services-ads 18.0.0 or any future versions. This is particularly important if you use AdMob mediation, as several mediation partners have dependencies on Android support libraries that aren’t compatible with AndroidX.

To make the migration process as smooth as possible for you, Android Studio offers an easy way to convert your project and its dependencies to AndroidX using the Migrate to AndroidX option.

Migrate to AndroidX

Android Studio 3.2 or higher includes a Refactor > Migrate to AndroidX menu option to convert your project to use AndroidX. We’ll demonstrate what happens when converting our BannerExample to AndroidX.

  1. Change the project’s compileSdkVersion to 28. This is a prerequisite for migrating to AndroidX.
  2. Right click the app module, and select Refactor > Migrate to AndroidX. You’ll be given an option to save your project as a zip file before Android Studio converts it.
  3. Select Do Refactor to complete the migration.

What changed?

Here is the project before the migration:

And here is the project afterwards:

First, you’ll notice that the package name for AppCompatActivity has changed to androidx.appcompat.app. The refactor has changed this project’s com.android.support:appcompat-v7:26.1.0 dependency to androidx.appcompat:appcompat:1.0.0 and fixed the associated imports.

Second, this migration added a gradle.properties file with these two lines:

android.useAndroidX=true
android.enableJetifier=true

These properties ensure your project and its dependencies use AndroidX, by rewriting any binaries that are using an Android support library. See Using AndroidX for more details on these flags.

Now that your project is converted to AndroidX, you can safely update your play-services-ads dependency to 18.0.0 in your project-level build.gradle file:

dependencies {
implementation 'androidx.appcompat:appcompat:1.0.0'
implementation 'com.google.android.gms:play-services-ads:18.0.0'
}

As always, you can follow the release notes to learn what’s changed in the Google Mobile Ads SDK. We’d also love to hear about how your migration went! If you have any questions about the release or have trouble migrating, please reach out to us on the Google Mobile Ads SDK developer forum.

Upcoming changes to App campaigns

We will be rolling out the improved version of App campaigns in the AdWords API and Google Ads API over the coming months. Please make sure you get your code ready before the migration of all campaigns to the new structure on August 6, 2019.

What's changing
Once this change is rolled out to a given account, all App campaigns for that account will immediately begin using the new fields. You will no longer use a UniversalAppCampaignSetting, which included both information about the app and references to media and descriptions that would be used for ads in that campaign.

Instead, you will specify an AppCampaignSetting in the Google Ads API (UniversalAppCampaignInfo in the AdWords API), which contains only basic details about the app you want to promote through advertising. All the specific ad-level details will be added in the new AppAdInfo in the Google Ads API (UniversalAppAd in the AdWords API). This improved structure allows you to have a single campaign for each app you want to advertise, and offers the flexibility to have a variety of different ads within that campaign.

For reporting, stats at the ad group level will be available in the Google Ads API only.

Update schedule
For this update, we are rolling out the changes in two phases.
  • On June 17, 2019, all test accounts will be updated to use the new App campaign settings. Starting on this date, you can write test code against a test account you own to ensure that your code is ready for the full migration.
  • On August 6, 2019, all Google Ads accounts will be updated to use the new App campaign settings. Make sure that you have tested and deployed your new code to adapt to the changes by this date.
If you have any questions or concerns, please don't hesitate to contact us via our forum.

Sunsetting the creation of target spend field for Maximize Clicks strategies in Google Ads API

On July 31st, 2019 we will begin to sunset the target spend field for Maximize Clicks bidding strategies in the API. This will affect all versions of both the AdWords API and Google Ads API. The following behaviors will be blocked:
  • Populating the target spend field on existing standard and portfolio strategies.
  • Attaching portfolio strategies that have the deprecated field set to campaigns.
Later this year, our systems will start ignoring the target spend field and instead use your daily budget to manage spend. In order to prepare for this change, you should start using your budgets to specify how much you’d like to spend for Maximize Clicks bidding strategies and migrate your campaigns off this field today.

Read on to see how this will affect your API usage.
Affected Target Spend Fields
Google Ads API campaign.target_spend.target_spend_micros
bidding_strategy.target_spend.target_spend_micros
AdWords API Campaign.BiddingStrategyConfiguration.TargetSpendBiddingScheme.spendTarget
SharedBiddingStrategy.TargetSpendBiddingScheme.spendTarget


Change Description
Any mutate operations that set a target spend field for the first time will return an error. You will be able to update a target spend field that currently contain a value, but you cannot set previously empty fields to a new value. Additionally, any operation attaching a bidding strategy to a campaign, where that bidding strategy has a value set for a target spend field, will throw an error. To manage Target Spend on any new campaigns, we recommend using a campaign budget. In each of these disallowed cases an error will be thrown.

Performing any of the disallowed actions above will generate one of the following errors:
  • OPERATION_NOT_PERMITTED_FOR_CONTEXT
  • UNSUPPORTED_FIELD_IS_SET
If you have any questions about this change or any other API feature, please contact us via the forum.

Content API for Shopping live webinar on May 31st (Mandarin, Chinese)

We are running a live webinar this Friday, May 31, on the Content API for Shopping. This webinar is for our Chinese-speaking developers that are interested in using the API to manage products and Shopping ads at scale.

The webinar will cover topics on:
  • Content API for Shopping use case
  • Merchant Center setup
  • Content API features
  • Best practices
  • API request/response demo
You will be able to submit questions throughout the live event. We will answer questions during the Q&A session in the webinar.

Note: The webinar content will be delivered in Mandarin, Chinese.

The webinar will begin at 10:00am (China Time, GMT +8) on Friday, May 31, 2019. Please contact us via the Content API forum if you have any questions or need help.

If you’d like to review some of our previous webinars covering the Google Ads API, you can find them at the following links:

Migrating from position to impression share bidding strategies in Google Ads

In June 2019, we will shut off the ability to add new Target Search Page Location and Target Outranking Share bidding strategies. This will affect both the AdWords API and the Google Ads API. Later this year, existing campaigns on these strategies will automatically be migrated to the new Target Impression Share bidding strategy, which offers more flexible and granular controls to optimize for your desired impression share and search page location.

Read on to see how this will affect your API usage.

Google Ads API Users
Please start using the TARGET_IMPRESSION_SHARE BiddingStrategyType rather than TARGET_OUTRANK_SHARE or PAGE_ONE_PROMOTED.

If you attempt to create a TARGET_OUTRANK_SHARE or PAGE_ONE_PROMOTED after they are removed, you will get an error.

AdWords API Users
If you attempt to use the AdWords API to add a TARGET_OUTRANK_SHARE or PAGE_ONE_PROMOTED bidding strategy after they are removed, you will get an error.

All existing campaigns using the old bidding strategies will be automatically migrated to use Target Impression Share for both APIs. The AdWords API does not support the Target Impression Share bidding strategy, so we recommend migrating to the Google Ads API if you need this functionality.

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

Join us for a live webinar on Google Ads API and Hotel Ads

Please join us later this week for a livestream webinar covering the latest Hotel Ads features in the Google Ads API. In particular, we’ll cover using hotel listing groups and leveraging Hotel Ads-specific reporting features. We’ll also be answering some of your questions during the event.

The webinar will begin at 11:00am EDT on Thursday, May 30, 2019.
As always, please contact us via the Google Ads API forum if you have any questions or need help.

If you’d like to review some of our previous webinars on related topics, you can find them at the following links:

Announcing v1_3 of the Google Ads API

Today we’re announcing the v1_3 release of the Google Ads API. With this version, you’ll continue pointing to v1 as your endpoint; however, you'll need to update your client libraries in order to use v1_3 features.

Here are the highlights: What resources are available?
The following resources should help you get going with v1_3 of the Google Ads API: The updated client libraries and code examples will be published by May 24, 2019. If you have any questions or need help, please contact us via the forum.