I'm rewriting my v10 app to v11, and trying to use validateReportJob.
When testing with some accounts (in the end the code will be used for
hundreds) I get this message:
<ns1:fault xmlns:ns1="
https://adwords.google.com/api/adwords/
v11">
<ns1:code>30</ns1:code>
<ns1:message>One or more report job parameters is invalid.</
ns1:message>
<ns1:trigger> The following columns are not supported by the
Report Type Creative : [MaximumCPM]</ns1:trigger>
</ns1:fault>
But with other accounts, the very same ReportJob passes. And it should
be, as the documentation states that this is a valid column for Ad
Performance reports with aggregationType Daily. The job is consistent
with the report rules.
But I can see why this error was raised - the account does not have
CPM. I can imagine similar rejections, maybe you cannot include
Conversions on accounts without Conversion scripts, maybe you cannot
include DestinationURL on accounts with only Mobile Ads. The
possibilities seem endless.
But I want to know how to deal with this. How can one predict whether
a report for Account X, can include column Y? The only function
revealing this is validateReportJob (and scheduleReportJob). But they
do not pass any structured information, just some text with hints in
it. Can I be sure that the error message of the trigger is never
changed nor localized?
Again, I want to know how I'm supposed to deal with it - the
documentation states just that I have to call validateReportJob, but
not how to interprete its results.