A Look Inside the Think Tank...

AdWords API PHP Client Library is the new APIlity

Created on and categorized as Work.
Written by Thomas Steiner.

AdWords API PHP Client Library is the new APIlity

Dear APIlity users,

It has been a long time since my last message to the APIlity forum. Actually, the last message dates back to May 8, 2009. Since then a lot has happened. The last public APIlity release was v1.13.1. In June I was in New York City, working on getting APIlity ready for the AdWords API v2009 release. Back then, v200902 was released, while internally we were working with v200906, which was in the early stage of development.

If you are in the PHP framework business, or worse, in the PHP framework business and dealing with SOAP Web services, you have probably gone through the same trouble as we did with APIlity: there is (mainly PHP4's) NuSOAP, there is PHP5's native SOAP extension, and there is the strong feeling that you should definitely get off that PHP4 train, but some important stakeholder is still on it. Basically the AdWords API v2009 beta release being a complete rewrite of the AdWords API from scratch with awesome new features, we decided to do the same for APIlity. This is actually good news: no more PHP4, no more NuSOAP, but a lot more object-orientation, and definitely more feature parity with the other client libraries. We are thus starting the deprecation clock for APIlity in its current form (i.e. v1.13.1). Because of the hard cut and the underlying SOAP toolkit change (NuSOAP replaced by native SOAP extension), the first release of the new PHP client library (http://code.google.com/p/google-api-adwords-php) just ships with the true v2009 core features, and does not include the old v13 features as the other client libraries do. What this means in practice is that you should use the PHP client library for your AdWords core tasks, and use APIlity v1.13.1 for the tasks not yet included in v2009. There will not be added new features to APIlity, but we will still provide bug fixes. In the end when v13 of the AdWords API itself will be sunset, APIlity v13 will follow.

While the name APIlity is a great wordplay (at least in my opinion) on API and the ability to do things with the AdWords API, it never was a great name from a readability point of view, basically because most default Web fonts shot the serif, so the uppercase 'I' of the "API" part and the lowercase 'l' of the "lity" part were hard to differentiate. In consequence for the rewritten library we simply go for the generic name PHP client library, just as there is the Java client library, or the Python client library. You got the naming scheme...

In addition to that, the former APIlity forum will be deprecated somewhere around November 1 and set to Archive Mode, where old messages will be preserved, but new messages will be rejected and should instead be posted to the main AdWords API forum. This will improve overall turnaround time for getting your questions answered and will give you access to even more AdWords API developers.

Finally I would like to express my gratitude to all those of you who have contributed to the library in the past. Be it by sending in bug reports, bug fixes, or even completely new functions. I have maintained a naive and very direct form of the benevolent dictator maintenance model, where people would contact me directly (mailto:tomac AT google DOT com) and I would then decide whether or not to include a patch, or decide for one alternative or the other if more than one were given. The new PHP client library will be hosted on code.google.com, where excellent issue tracking, an uncomplicated release mechanism, and version control are available, so these features will be used. Hoping for you contributors to keep up your excellent support even if ownership of the library has changed. Last not least I will be the heaviest Google-internal user of the PHP client library, so be assured that I will be somewhere buzzing around still, and, yes, of course I am a committer to the project.

Thank you,
Tom

Images from ffffound.com and google-apility.sourceforge.net