I need to query the list of accounts in AdWords and then retrieve the data for each, passing the Client Customer Id. I can see CDATA have exposed a Customers view, but it's missing in Matillion. I can try to create my RSD file for Customers if I knew what operation I should call. Is there anything I can do aside from script this in Python?
8 Community Answers
Laura Malins —
You could possibly take the RSD and add it to the Google Adwords RSDs but I don’t know if changes have been made in the driver which are required for this to work. The API profiles are stored on the server in /usr/share/tomcat/api_profiles/
I will raise a request to the development team to upgrade our Adwords component.
Thanks for your reply! I downloaded CDATA trial driver and confirmed that they have views Customers and ManagedCustomers. I actually need the latter because it returns the accounts under the root account. It works with their driver even though they don't have ManagedCustomers listed in their documentation. I tried the corresponding rsd file in Matillion but it doesn't work because it doesn't recognize 'googleadwordsadoSelect' as a valid rsd operation. It seems the driver used in Matillion is somehow incomplete. I found two ways around it, but I am not sure how safe and robust they are. Your inputs will be appreciated: - I uploaded the trial driver as a JDBC driver in Matillion and queried ManagedCustomers successfully using a Database Query component. I just needed to pass all authentication properties in the connection string, plus Matillion runtime key for the licensing. - I copied the trial driver to the other CDATA drivers and instructed Matillion to use that version, instead of the original one. Then I created a MangedCustomers.rsd file and queried it from Adwords Query component. It worked successfully, also other views work fine.
In conclusion, it would be great if you could check with the dev team why the installed driver misses some functionality and whether it could be updated accordingly.
I’m impressed! I would keep the first option of using it in the Database Query component – this is less likely to cause any upgrade issues for you. Please remember the Cdata trial will expire after a fixed period of time. I think it’s 14 days.
The installed driver misses the functionality because we will have an older version of the driver in the product. I know we update the driver regularly but it’s still possible this one is slightly out of date as we can’t update all drivers with very release of the product. I have requested we upgrade the driver in the next release of the product.
Will the driver be upgraded in version 1.37 (Matillion for Snowflake)? Do you have an expected date for that release?
I have the latest version of Matillion for Snowflake (1.36.7) and can't find a way to get a list of all Google Adwords accounts or even a list of all Google Adwords accounts under a given manager account (we have a master manager account and all others are under that one).
Hi, No because I need to provide the 'Client Customer ID' in order to execute AccountPerformance and it will return the performance of that account in specific. What I am looking for is to get all accounts, i.e., all 'Client Customer IDs' so that I can call AccountPerformance, AdPerformance, etc for each account afterwards. The same as Danail when he wrote: "I need to query the list of accounts in AdWords and then retrieve the data for each ..."
Apologies I’m not an expert in Adwords and we only have one account we can test with. I will raise the priority of the upgrade but I don’t think it’s realistic to expect it in this release which is due next month.
In the meantime you have the workaround Danail suggested above.
In addition to accounts, I also needed to query Campaigns, AdGroups and ConversionTrackers, which are not supported by any version of the driver. So, I am using API Query with custom API profiles to gather AdWords metadata, then the Adwords component to fetch the report data. It would be great if CDATA or Matillion develop fetching AdWords data other than reports. I am aware I can get campaigns and ad groups from the reports, but I don't think this is a good ETL approach, as I prefer managing my dimensions not based on the fact data.