In this codelab, which was adapted from a session in The Google Ads API Migration Workshop, we migrate a script that creates individual components for a new campaign and use the reporting interface to retrieve data about the entities along the way. We end with showing how to retrieve metrics from the newly created campaign.
We will begin with a script that creates an entire campaign hierarchy using the AdWords API, which includes creating one or more:
- Campaign budgets
- Campaigns
- Ad groups
- Text ads
- Keyword criteria
Then, we will migrate the creation of each resource to use the Google Ads API. We will migrate the script incrementally and execute it along the way so that you can see both APIs working side-by-side until the migration is complete and only the Google Ads API is used. Here are the main steps involved in this exercise:
- Part 0 - Prerequisites
- Part 1 - Getting Started
- Part 2 - Script overview
- Part 3 - Import the Google Ads client library
- Part 4 - Reporting Overview
- Part 5 - Write a reporting method
- Part 6 - Create a budget
- Part 7 - Create a campaign
- Part 8 - Create an ad group
- Part 9 - Create text ads
- Part 10 - Create keyword criteria
This is meant to be an interactive session, in which you can follow along to complete the exercise. Each page will include a video portion, in which we'll walk through the steps outlined in the respective page of the guide.
This guide is completed using Python. There may be some implementation differences if you're working through this guide in a language other than Python.
We recommend that you review the Campaign Management examples under the Migration directory in your client library's GitHub repository to identify the differences in how methods are organized and how entities are initialized and configured. The steps and themes we present apply to all client library languages. If you have trouble following the live presentation, you can return to the coding exercises once the recording is available and you can pause the video to give yourself more time to complete each step.