Migrate to a New Version

New versions of the Campaign Manager 360 API are released regularly. As new versions are released, older versions are deprecated and eventually sunset. When a version is sunset, all requests against that version begin returning errors.

If a version of the API that you're using is deprecated, you'll need to migrate to a newer version before the scheduled sunset date. This guide provides details on how to determine if the API version you're using is deprecated and provides recommended migration steps.

Step 1: Determine which version you're using

If you maintain an application that you suspect may be using a deprecated version of the Campaign Manager 360 API, you should first verify which specific version you're using. In most cases, you'll be accessing the API via one of our language-specific client libraries or an official integration. Instructions for finding the API version in use by these client libraries and integrations can be found below:

Apps Script new editor

Version information for Apps Script is exposed in the advanced services dialogue:

  1. From the Apps Script editor, click Add a service .
  2. Locate the Campaign Manager 360 API in the list of available services.
  3. The value selected in the version dropdown is the Campaign Manager 360 API version currently in use.

Apps Script legacy editor

Version information for Apps Script is exposed in the advanced services dialogue:

  1. From the Apps Script editor, navigate to Resources > Advanced Google services.
  2. Locate the Campaign Manager 360 API in the list of available services.
  3. The value selected in the version dropdown is the Campaign Manager 360 API version currently in use.

C#

Version information for the Google API Client Library for .NET is exposed in the following places:

  1. Included in the nuget package name and service namespace.
    Google.Apis.Dfareporting.v3_4
  2. Exposed via a public property of DfareportingService.
    Console.WriteLine(DfareportingService.Version);

Java

Version information for the Google API Client Library for Java is exposed in the following places:

  1. Specified in the maven artifactId.
    <dependency>
      <groupId>com.google.apis</groupId>
      <artifactId>google-api-services-dfareporting</artifactId>
      <version>v3.4-rev1-1.21.0</version>
    </dependency>
  2. Included in the JAR filename.
    google-api-services-dfareporting-v3.4-rev1-1.21.0.jar
  3. Exposed via a public property of Dfareporting.
    System.out.println(Dfareporting.DEFAULT_SERVICE_PATH);

PHP

Version information for the Google API Client Library for PHP is exposed via a public property of Google_Service_Dfareporting:

$service = new Google_Service_Dfareporting($client)
print $service->version;

Python

The Google API Client Library for Python is not versioned. The API version to use is specified as an argument to the discovery builder:

discovery.build('dfareporting', 'v3.4', http=http)

Ruby

Google API Client Library for Ruby versions < 0.9 are not versioned. The API version to use is specified as an argument to the service constructor:

service = Google::APIClient::Service.new("dfareporting", "v3.4",
    {
      :application_name => "My application",
      :application_version => '1.0.0',
      :authorization => authorization
    }
)

For Google API Client Library for Ruby versions >= 0.9, version is exposed in the service namespace:

Google.Apis.DfareportingV3_4

Make note of the version you're using, as you'll need this information later on.

Step 2: Determine the status of your version

The Deprecation Schedule lists the status of every version that is currently supported. Find your version in this list and determine its status as follows:

  1. If there are no dates listed in the Deprecation Date and Sunset Date columns, you're using a fully supported version.
  2. If dates are listed, the version you're using is currently deprecated and will be sunset on the date specified.
  3. If your version isn't listed, it's already been sunset and is no longer supported.

If you fall into #2 or #3 above, you'll need to migrate to a newer version to avoid an interruption in service. It's recommended that you migrate to the most recent version, which is listed at the top of the deprecation schedule table (excluding beta releases). This will afford you the maximum amount of time between upgrades.

Step 3: Upgrade versions

If you've determined that you need to migrate, the next step is to update your integration or obtain an updated build of your preferred client library. Note that while some client libraries may only provide a single build that works with any API version, others will have separate builds for each version. The list below provides general upgrade information for the most widely used client libraries and integrations.

Apps Script new editor

Google Apps Script supports all versions of the Campaign Manager 360 API and allows you to select the version to use on a script-by-script basis. To change the version used by a particular script:

  1. From the Apps Script editor, click Add a service .
  2. Locate the Campaign Manager 360 API in the list of available services.
  3. Change the Campaign Manager 360 API version in use via the version dropdown.
  4. Click Add to save your changes.

Apps Script legacy editor

Google Apps Script supports all versions of the Campaign Manager 360 API and allows you to select the version to use on a script-by-script basis. To change the version used by a particular script:

  1. From the Apps Script editor, navigate to Resources > Advanced Google services.
  2. Locate the Campaign Manager 360 API in the list of available services.
  3. Change the Campaign Manager 360 API version in use via the version dropdown.
  4. Click OK to save your changes.

C#

The Google API Client Library for .NET provides separate builds for each version of the Campaign Manager 360 API, distributed via Nuget.

For detailed installation instructions or alternative download options, refer to the client library documentation.

Java

The Google API Client Library for Java provides separate builds for each version of the Campaign Manager 360 API, distributed via Maven.

For detailed installation instructions or alternative download options, refer to the client library documentation.

PHP

The Google API Client Library for PHP provides separate builds for each version of the Campaign Manager 360 API, distributed via Packagist.

For detailed installation instructions or alternative download options, refer to the client library documentation.

Python

Every build of the Google API Client Library for Python supports all versions of the Campaign Manager 360 API. Simply update the version string being passed as an argument to the discovery builder:

discovery.build('dfareporting', 'v3.4', http=http)
For detailed installation instructions or alternative download options, refer to the client library documentation.

Ruby

The Google API Client Library for Ruby v0.8 and lower supports all versions of the Campaign Manager 360 API. Simply update the version string being passed as an argument to the service constructor:

service = Google::APIClient::Service.new("dfareporting", "v3.4",
    {
      :application_name => "My application",
      :application_version => '1.0.0',
      :authorization => authorization
    }
)
The Google API Client Library for Ruby v0.9+ provides separate builds for each version of the Campaign Manager 360 API, distributed via RubyGems. For detailed installation instructions or alternative download options, refer to the client library documentation.

Step 4: Address version differences

We strive to make our new releases backwards compatible, which means that migrating between API versions will not necessitate changes to your code. When this isn't possible, we announce the changes that require action from developers (also known as breaking changes) in our release notes.

At this point, you should review our release notes, beginning with the version after the one you started from (which you made a note of in an earlier section) and continuing up to and including the version you're upgrading to. The sections of the release notes should be interpreted as follows:

  • New features - Newly added functionality.
  • Sunsets - Functionality that has been removed from the API. When available, replacement functionality will be covered in this section.
  • Known issues - Changes that aren't additions or removals. For example, this section may cover fields or methods that have been renamed, or validation logic that has changed.

The functionality in New features will not require code changes and can be ignored for now. Feel free to come back to this section later if you'd like to experiment with something we've added.

If you find changes in the Sunsets or Known issues sections, on the other hand, you may need to take action. You should search through your code to determine if any of the removed or modified functionality is used by your application. If so, you'll need to make updates to your code to address these changes

Stay informed

As mentioned previously, Campaign Manager 360 API releases and sunsets occur regularly. Updates about new releases, deprecations, and sunsets are posted to the following channels:

It's recommended that you subscribe to one or more of these channels to stay up-to-date with the latest API news.