v2009 Hack Day Video Preview

Wednesday, January 27, 2010


Our recent AdWords API Hack Days in San Francisco and New York were a huge success, filled with presentations, question and answer sessions, and one-on-one coding help. We were glad to see that many developers have already started the migration to the v2009 API, and these events were a great way to kick off the process for those just getting started. Don't forget that most v13 services will be turned off on April 22.

We will be posting videos of the presentations on YouTube over the coming weeks, starting this week with Migrating from v13 to v2009 by Adam Rogal. The presentation gives an overview of the suggested migration process, provides some tips and tricks, and includes live coding examples.

This video is the first of many, and if you'd like to get the full experience there is still space available in our upcoming Paris Hack Day. Get more information and register for an upcoming Hack Day.



Best,
- Eric Koleda, AdWords API Team

Reminder: Version v200906 will be shut down in one week

Monday, January 25, 2010


The v200906 API, which we released as a limited beta in June 2009, will be shut down one week from today, on February 2, 2010. The v200909 API, launched in October of last year, is a full replacement for v200906 and adds significant functionality. Read our earlier post covering the changes required for migration.

Don't forget that most v13 services will be turned off on April 22, 2010, so be sure to begin your migration to v200909 if you haven't already.

The AdWords API team is here to help you transition to v200909. Please post your questions to the Developer Forum.

-- Jason Shafton, Product Marketing Manager

v2009 Hack Days Coming to Europe

Thursday, January 21, 2010


Thank you to everyone who attended our San Francisco and New York hack days. The response was very enthusiastic and we got a tremendous amount of valuable feedback.

Next up on the schedule are three events in Europe:


London: February 3rd

Paris: February 5th

Hamburg: February 9th


All events will be held in the local Google office and will follow the same format as the US events: an introduction to v2009, technical discussions of the BulkMutateJobService, LocationExtensions, and AdParameters, followed by a chance to migrate some v13 code with Google engineers on hand to help.


Note that these are engineer-only events. The presentations will be highly technical and there will be no activities for attendees who don't plan to write code.


Space is very limited, so sign up now! Get more information and register at: http://sites.google.com/site/v2009hackdays.


- Aaron Karp, AdWords API Team

Application Token no longer required to use AdWords API

Tuesday, January 19, 2010


Beginning today, you no longer need to provide us with an AdWords API Application Token to access the AdWords API (v13 and v2009). This change requires no action on your part. The Application Token will simply be ignored if it continues to be included with your API requests. Note that the Developer Token is still required. We hope that this makes your life a bit easier in working with the AdWords API.

As always, we are here to answer your questions, collect feedback, and assist with migration to the v2009 API.

-- Albert Cheng, AdWords API Team

100 days until major v13 sunset

Wednesday, January 13, 2010


In October of last year we launched the v200909 API and shared with you that the majority of v13 services would be turned off on April 22 of this year. This is a reminder to our developers that less than 100 days are left before most v13 services will be turned off.

As of April 22, 2010, the following v13 services will no longer be accessible:
CampaignService
AdGroupService
CriterionService
AdService
InfoService
KeywordToolService
SiteSuggestionService

The AccountService, TrafficEstimatorService, and ReportService v13 services will continue to be accessible because they are not yet available in the v2009 API. In the coming months, we'll announce the launch dates for these services in the v2009 API and corresponding sunset dates for the v13 services.

Want to learn more about migrating your application to the v2009 API? Review the side-by-side differences between v13 and v2009. Try out the code examples in these client libraries: Java, .NET, Python, Ruby, and PHP. You can also learn more from our Discover v2009 series of blog posts.

As we go into the last 100 days before migration to v2009, please continue to ask us your questions and share your feedback on the AdWords API Developer Forum.

–- Jason Shafton, Product Marketing Manager

AdWords Downtime: January 9th, 10am-2pm PDT

Tuesday, January 05, 2010


We'll be performing routine system maintenance on Saturday, January 9th from approximately 10:00am to 2:00pm PDT. You won't be able to access AdWords or the API during this time frame, but your ads will continue to run as normal.

Best,
- Eric Koleda, AdWords API Team

Discover v2009: Location Extensions

Wednesday, December 23, 2009


Location, location, location: so goes the mantra of the real estate business. Although, in this constantly connected world where people are carrying Internet-enabled mobile devices more and more, location is important to every retail business. Often, users are looking for the closest provider of a service or a product, rather than your specific business.

So how can you get your business on the map? In the past, we had an entirely separate ad type: the Local Business Ad (LBA). But with the new AdWords interface and AdWords API v2009, we have a much simpler solution available: Location Extensions. These allow you to easily add location information to any text ad in your campaigns.

Let's look at an example. Say your business has a few branches open throughout the city, and you want to add location information to your existing ads. The first step is to retrieve the location of each branch, based on its address. That means making a call to the new GeoLocationService, which uses a process known as "geocoding."

// Create address object.
Address address = new Address();
address.setStreetAddress("123 Easy Street");
address.setCityName("Mountain View");
address.setProvinceCode("US-CA");
address.setPostalCode("94043");
address.setCountryCode("US");
// Get location information from the service.
GeoLocationSelector selector = new GeoLocationSelector();
selector.setAddresses(new Address[] {address});
GeoLocation[] locations = geoLocationService.get(selector);
location = locations[0];

The next step is to use the CampaignAdExtensionService to add a location extension to your campaign using the information returned by the GeoLocationService:

// Create LocationExtension.
LocationExtension locationExtension = new LocationExtension();
locationExtension.setAddress(location.getAddress());
locationExtension.setGeoPoint(location.getGeoPoint());
locationExtension.setEncodedLocation(location.getEncodedLocation());
locationExtension.setCompanyName("Foo");
locationExtension.setPhoneNumber("650-555-5555");
locationExtension.setSource(LocationExtensionSource.ADWORDS_FRONTEND);
// Create CampaignAdExtension.
CampaignAdExtension campaignAdExtension = new CampaignAdExtension();
campaignAdExtension.setCampaignId(campaignId);
campaignAdExtension.setAdExtension(locationExtension);
// Add location extension to the campaign.
CampaignAdExtensionOperation operation = new CampaignAdExtensionOperation();
operation.setOperand(campaignAdExtension);
operation.setOperator(Operator.ADD);
CampaignAdExtensionOperation[] operations =
new CampaignAdExtensionOperation[] {operation};
CampaignAdExtensionReturnValue result =
campaignAdExtensionService.mutate(operations);

Multiple location extensions can be added to the same campaign, and by default each ad in the campaign will be associated with every location. When serving your ad the AdWords system will choose the most relevant location to display to the user. Do keep in mind that there is a limit of 9 manually created location extensions per campaign. Alternatively you can have AdWords pull addresses directly from your Local Business Center (LBC) account, which isn't subject to the same restriction. For now, LBC synchronization is only supported via the AdWords interface, but the next API version will include support for it as well.

Of course, not all ads are created equal, and you may want some ads to target only a single store. In that case, the solution is to create an Ad Extension Override for the one location extension that you do want to associate with that ad:

// Create ad extension override for the specified ad Id.
AdExtensionOverride adExtensionOverride = new AdExtensionOverride();
adExtensionOverride.setAdId(adId);
// Create ad extension object using specified campaign ad extension Id.
// This will be the only extension used for the specified ad.
AdExtension adExtension = new AdExtension();
adExtension.setId(campaignAdExtensionId);
adExtensionOverride.setAdExtension(adExtension);
// Add the override.
AdExtensionOverrideOperation operation = new AdExtensionOverrideOperation();
operation.setOperand(adExtensionOverride);
operation.setOperator(Operator.ADD);
AdExtensionOverrideOperation[] operations =
new AdExtensionOverrideOperation[] {operation};
AdExtensionOverrideReturnValue result =
adExtensionOverrideService.mutate(operations);

If you're looking for more detailed examples, be sure to check the 'examples' directory for the client library of your choice.

Extending your ads with location information will enable them to be shown on Google.com and other properties (such as Google Maps), bringing you closer to your customers' local searches. That way they'll not only find out about your offers, they'll actually be able to find you.

-- Sérgio Gomes, AdWords API Team