Author Archives: Google Ads Developer Advisor

Google Ads API v13 sunset reminder

Google Ads API v13 will sunset on January 31, 2024. After this date, all v13 API requests will begin to fail. Please migrate to a newer version prior to January 31, 2024 to ensure your API access is unaffected.

We've prepared various resources to help you with the migration: In addition, using the Google Cloud Console, you can view the list of methods and services to which your project recently submitted requests:
  1. Open the Dashboard page (found under APIs & Services) in the Google Cloud Console.
  2. Click on Google Ads API in the table.
  3. On the METRICS subtab, you should see your recent requests plotted on each graph. At the bottom of the page, you’ll see the Methods table, where you can see which methods you’ve sent requests to. The method name includes a Google Ads API version, a service, and a method name, e.g., google.ads.googleads.v13.services.GoogleAdsService.Mutate. In this way, you can see all versions that you’ve used recently.
  4. (Optional) Click on the time frame at the top right of the page if you need to change it.
If you have questions while you’re upgrading, please reach out to us on the forum or at [email protected].

Deprecating Content API Easy Onboarding In Merchant Center

Starting on March 29, 2024, the Content API for Shopping authentication method and tab in Merchant Center will no longer be available in the classic Merchant Center. This tab, which creates a service account for you, will not be migrated to Merchant Center Next. Service accounts formerly created through this tab will continue to work even after the deprecation. You can still authenticate your Content API calls with a new service account via the service account setup to generate an API key.

After the deprecation, follow these steps, further detailed in our API documentation, if you need to set up a new service account to access the Content API for Shopping:

  1. Ensure you have an existing cloud project or create a new one in the Google Cloud Console.
  2. Generate or access your service account credentials.
  3. Download the JSON private key from Google API Console. This JSON private key can be used in the same way as the one downloaded from Merchant Center previously.
  4. Add the new service account as a user to your Merchant Center account. If you’re a third-party developer (and don’t have access to the Merchant Center UI for the account), your client will need to complete this step for you.

If you have any questions or concerns, please don't hesitate to contact us via the forum.

Optimally configure the Attribution Reporting API for ad measurement

Background

Ad-tech providers have historically used third-party cookies for conversion measurement, and for attributing conversions to ad interactions. Conversion measurement is critical for evaluating the performance of ad campaigns and automated bidding strategies. Now, with technology changes and privacy regulations on the rise, traditional ad-measurement systems must change in order to remain effective while protecting user privacy.

Chrome’s Attribution Reporting API (ARA), part of the Privacy Sandbox initiative, offers a new path to conversion measurement after Chrome’s planned third-party cookie deprecation in the second half of 2024, subject to addressing any remaining competition concerns of the UK’s Competition and Markets Authority (CMA). Google’s ads teams have made significant investments in learning to use the ARA more effectively, to help advertisers achieve more accurate measurement.

In a previous post, we provided a high-level overview of the approach Google’s ads teams are taking to effectively blend the ARA event-level and aggregate summary reports to maximize accuracy. A key point is that your configuration determines what data you query, and how you query it. It’s crucial for ad-tech providers to effectively configure the ARA for their use cases. Google’s ads teams have found that configuring specific ARA settings can lead to notable accuracy improvements. We encourage other ad-tech providers to integrate with the ARA to retrieve the conversion data they need, and process the ARA's output to help maintain accurate measurement in a post-third-party-cookie world.

The ARA is flexible to support various use cases. Google’s ads teams use this flexibility to configure unique ARA settings for each advertiser. This way, ARA-based measurement adapts to each advertiser’s specific needs. For example, we’ve noticed that when advertisers differ in conversion volume, it’s better to have advertiser-specific configurations related to the granularity of aggregation keys and the maximum observable conversions per ad interaction.

Google’s ads teams’ approach

Here's how Google's ads teams use the ARA to ensure the raw data we receive is as useful as possible for downstream blending. We configure ARA settings as explicit mathematical optimizations by defining objective functions to represent data quality, then choosing settings to optimize those functions. Ad-tech providers can choose their own approach. Google’s ads teams plan to continue sharing insights we learn from our own optimizations with the ad-tech community.

Please see our detailed technical explainer for more information about our approach to ARA configuration.

Python Version Support in the Google Ads API Client Library

In June 2023, support for Python 3.7 was deprecated in the Google Ads API Client Library for Python. In Q1 2024, a major version of the library will be released that makes it incompatible with Python 3.7. Library changes related to compatibility with Python 3.7 will be limited to critical security or stability patches.

Google Ads API users who depend on Python 3.7 can continue using version 22.1.0 of the library, which includes API v15 support, until v15 of the is sunset in September 2024. All Python users should upgrade to Python 3.8 or higher as soon as possible.

In the future, Python users should expect that the library will become incompatible with unsupported versions of Python as soon as they reach end-of-life status. When Python 3.8 becomes unsupported in October 2024, a major version of the library will be released that is incompatible with Python 3.8. At least two months before a Python version deprecation, we will publish a blog post to help remind users of the change.

The below resources are available to help users plan ahead for future language support removal: If you have any questions about this change, please file an issue on the client library repository on GitHub.

Google Ads API 2024 release and sunset schedule

We’re announcing our tentative 2024 release and sunset schedule for upcoming versions of the Google Ads API to bring greater clarity to your planning cycle. Please keep in mind that these dates are only estimates and may be adjusted going forward. Additionally, releases may be added, removed, or switched between major and minor versions.
Version Planned Release
Type*
Projected launch* Projected sunset*
V16 Major January/February 2024 January 2025
V16.1 Minor April/May 2024 January 2025
V17 Major May/June 2024 May 2025
V17.1 Minor July/August 2024 May 2025
V18 Major September/October 2024 September 2025

*Estimated and subject to change

Where can I learn more? Check back for any updates as the blog is the best place to stay informed about developments in this space.

If you have any questions or need additional help, contact us via the forum.

Performance Max: Create Search Themes beta with the Google Ads API

What’s New

The recently announced search themes beta feature for Performance Max campaigns lets you provide Google AI with valuable inputs about your customers and business to further optimize Performance Max campaign serving and placement. Beginning in Google Ads API v15, you can create search themes for Performance Max campaigns with the API.

How It Works

  • Search themes beta lets you indicate queries that you know your customers are looking for. They are optional and are additive to what queries Performance Max would match by using your URLs, assets, and more.
  • You can add up to 25 search themes per asset group.
  • Search themes will respect brand exclusions in Performance Max and account-level negative keywords. You can configure brand exclusions through campaign criteria using the BRAND criterion type. Similarly, account-level negative keywords are configured at a customer level using CustomerNegativeCriterionService and the NegativeKeywordList criteria.
  • Results driven from search themes will bring your customers to the landing pages you’ve indicated with your Final URL expansion, page feeds, or URL settings. Final URL expansions can be enabled or disabled with url_expansion_opt_out.
  • Search themes will have the same prioritization as your phrase match and broad match keywords in your Search campaigns.
  • You’ll be able to see the search categories that your ads matched to, and associated conversion performance, in your search terms insights at both the campaign and account levels with the campaign_search_term_insight and customer_search_term_insight reports. You can also view search term insights for custom date ranges, download your data, and access it using the API.

Implementation Details

In the Google Ads API, a search theme is a type of AssetGroupSignal, which can be attached to Performance Max campaigns at the asset group level. You can add a search theme to an asset group by creating an AssetGroupSignal and populating the

AssetGroupSignal.search_theme with a SearchThemeInfo criterion containing a text string representing your search theme, for example, "activities for children". In addition, you must populate the AssetGroupSignal.asset_group with the resource name of an existing asset group you are targeting.

Here is a Java example for creating a search theme asset group signal:

// Creates a search theme asset group signal.
AssetGroupSignal assetGroupSignal =
    AssetGroupSignal.newBuilder()
        .setAssetGroup(assetGroupResourceName)
        .setSearchTheme(
            SearchThemeInfo.newBuilder().setText("activities for children").build())
        .build();

You can add multiple asset group signals to a single asset group by creating multiple AssetGroupSignal objects targeting the same asset group. However, each AssetGroupSignal object can only represent a single search theme or audience signal.

Reporting

You can use the asset_group_signal resource to get the search themes present in a Google Ads account. While performance metrics are currently available at the asset group level, they are not available at the asset group signal level.

Here is a GAQL example to retrieve search theme texts for a specific asset group:

SELECT
  asset_group_signal.search_theme.text
FROM asset_group_signal
WHERE
  asset_group.id = <Asset Group ID>

Policy Exemptions

In v15 of the Google Ads API, we also introduced two new fields to provide additional information about search_theme approval: asset_group_signal.approval_status and asset_group_signal.disapproval_reasons. Search theme text must be approved by Google. The asset_group_signal.approval_status field provides information about the approval status, and if the search theme text is not approved, the asset_group_signal.disapproval_reasons field lists the reasons why.

Here is a GAQL example to retrieve search theme texts with policy review information for a specific asset group:

SELECT
  asset_group_signal.search_theme.text, 
  asset_group_signal.approval_status, 
  asset_group_signal.disapproval_reasons 
FROM asset_group_signal 
WHERE 
  asset_group.id = <Asset Group ID>

If your search theme text is not approved, and you believe the usage adheres to Google’s policies, you can submit a policy exemption request for the search theme that triggered the policy violation.

For example, if your search theme contains medical terms, and you believe the usage of the terms adheres to Google Ads policies and warrants further review, you can use the AssetGroupSignalOperation.exempt_policy_violation_keys[] field to request a policy exemption.

Improving Performance Max integrations Blog Series

This article is part of a series that discusses new and upcoming features that you have been asking for. Keep an eye out for further updates and improvements on our developer blog, continue providing feedback on Performance Max integrations with the Google Ads API, and as always, contact our team if you need support.

If you are new to Performance Max Campaigns, you can learn more with our getting started guide. Check out our asset groups and asset group signals guides to learn more.

Store Sales Direct Uploads Not Supported in the Google Ads API

As of early October 2023, Google no longer supports Store Sales Direct (SSD) as a standalone product, and therefore SSD conversion upload requests to the Google Ads API are also no longer supported.

Users who were previously allowlisted for this feature will now receive a NOT_ON_ALLOWLIST_FOR_STORE_SALES_DIRECT error when attempting to upload SSD conversions. Existing SSD conversions will continue to be available in reports.

The removal of SSD is part of a simplification of the overall Store Sales product. Users who previously relied on SSD should review the Store Sales onboarding guide to understand if they are eligible for ongoing store sales measurement. If eligible, work with your Google Ads account team to update the feature. Please reference our Upload Store Sales Conversions guide, which has been updated to reflect these changes.

If you have any questions about this change, please feel free to contact us through the forum or at [email protected] for additional help.

Updates to Display & Video 360 API Customer Match uploads

Last month we announced new changes launching in Google Ads API v15 to enable customers to pass end-user consent when uploading data. Today we are adding similar fields to Display & Video 360 API v2 and v3 that you can use when uploading Customer Match audience members.

You must start sending consent signals when uploading Customer Match audience members by March 2024 to adhere to the EU User Consent Policy and continue using European Economic Area (EEA) user data to populate Customer Match audiences.

What’s changing?

The Display & Video 360 API has added a Consent object for uploading consent with your Customer Match data. The Consent object specifies two distinct types of consent. For the EEA user data to be used in Customer Match user lists, both types of consent must be granted to indicate that you have received user consent.

What should I do?

Consent signals are set for all users added in a single firstAndThirdPartyAudiences.create or firstAndThirdPartyAudiences.editCustomerMatchMembers request. Use separate requests to upload users with different consent signals.

Make the following updates to requests creating and updating Customer Match audiences of the following audience types:

Audience Type Relevant update
CUSTOMER_MATCH_CONTACT_INFO Set the consent field of the included ContactInfoList.
CUSTOMER_MATCH_DEVICE_ID Set the consent field of the included MobileDeviceIdList.

We have updated the existing Customer Match feature guide with information on passing consent signals. Read our release notes for an itemized list of the changes.

Before using these new features, make sure to update your client library to the latest version.

Where can I get support?

If you have questions regarding these changes or need help with these new fields, please contact us using our support contact form.

Announcing v202311 of the Google Ad Manager API

We're pleased to announce that v202311 of the Google Ad Manager API is available starting today, November 8, 2023. This release brings support for marketplace ID on Proposals and consolidates MCM Child Network information in the Company object, removing the Network.childPublishers field.

For the full list of changes, check the release notes. Feel free to contact us on the Ad Manager API forum with any API-related questions.

Launching Structured Data Files v7

Today we’re announcing the general availability of Structured Data Files (SDF) v7. All users can now use v7 when uploading and downloading SDFs in the Display & Video 360 UI or downloading SDFs through the Display & Video 360 API.

The following material and superficial changes have been made from v6 to v7 to decouple SDF from the deprecated Entity Read Files tool and add support for newer Display & Video 360 features:

Full details on the changes made in v7 can be found in our Structured Data Files release notes. Instructions on migrating from SDF v6 to v7 can be found in our migration guide.

If you run into issues or need help with this new version, please contact us using our support contact form.