If you are handling multiple accounts or a large account at Adwords center managing few tens of thousand of keywords to millions of keywords, you would be interested in tracking the keyword performance over a period of time. You can do so by pulling daily summary report from Google through Adwords API and storing the data in your data mart or data warehouse for further analysis.
Pulling the data through API involves 6 steps:
1. definedReportJob object - Specifies the type of report you want.
2. validateReportJob - Validate the report that you would like to get. Returns nothing.
3. scheduleReportJob - Now schedule the job for above object. This request returns an ID.
4. getReportJobStatus - Get status of the report. If "Completed" go to next.
5. getReportDownloadUrl - Retrieve the URL where your report is stored. The returned URL is valid for five minutes. If the URL expires, just call getReportDownloadUrl again. Keep this URL private, since anyone can use it to access your report.
6. getGzipReportDownloadUrl - Download your report by sending an HTTP GET request.
Following pseudo code and code explains each step execution in more detail. I use Perl SOAP calls to generate Adwords requests. Also, note the following code works well with API version v13 and Google is transitioning many of its Adwords API to v2009. As of Dec.2009 ReportService was still available only in v13.
Pulling the data through API involves 6 steps:
1. definedReportJob object - Specifies the type of report you want.
2. validateReportJob - Validate the report that you would like to get. Returns nothing.
3. scheduleReportJob - Now schedule the job for above object. This request returns an ID.
4. getReportJobStatus - Get status of the report. If "Completed" go to next.
5. getReportDownloadUrl - Retrieve the URL where your report is stored. The returned URL is valid for five minutes. If the URL expires, just call getReportDownloadUrl again. Keep this URL private, since anyone can use it to access your report.
6. getGzipReportDownloadUrl - Download your report by sending an HTTP GET request.
Following pseudo code and code explains each step execution in more detail. I use Perl SOAP calls to generate Adwords requests. Also, note the following code works well with API version v13 and Google is transitioning many of its Adwords API to v2009. As of Dec.2009 ReportService was still available only in v13.