AdWords API Advisor.
Hi, we're working to automate our campaign (and everything below it) creation.
One of our requirements is to be able to update an existing campaign once a certain area of our system is updated. because we don't want to have to query the API every time the user goes to a certain area, we will be caching some of the information on our databases, and only use the API for saving (mutate) changes.
The changes will vary from updating a campaign name to add keywords, create adgroups (as well as starting and pausing them) and managing negative keywords.
So after talking to our marketing department, they've agreed to provide us with a CSV documented (exported from our system) that will contain all the information formatted as per Adwords standards. This will then be imported into Adwords (via csv import functionality).
Our plan here was to then be able to export it back, so we could get all the ID's used by Adwords' during creation (i.e. campaign id, adgroup id, etc) this would then allow us to map Adwords' id's to our internal id's, thus allowing us to mutate items by their Adwords' ID.
The problem I'm facing though, is the fact that when we export data from the Adwords web interface, the ID's don't seem to be returned. you do have an option to customize which columns you want returned, and in some cases even select ID (i.e. ads), but there's no option to return ID's on campaigns or adgroups.
I appreciate I could simply list every single campaign in my account and get the ID of it via API calls, and then do the same drilling down to adgroups, keywords, etc, but I find this a bit counter-intuitive as I will basically have to build a tool to support my tool :-)
So I was wondering if anyone else here has had the same problem, and if so, what have you done to resolve it?
P.s. While I may be sounding a bit lazy here saying I don't want to make that many API calls, I'm talking about hundreds of campaigns, with thousands of adgroups under each one, so exporting to a CSV file would potentially be the most suitable option to me. Also, I'm aware I'm asking a question about the web interface here, but because I'll be using the data with the API, I thought you guys would let me get away with it ;-)
Thanks in advance,
Marcos