ValidateReportJob Failing for 'AdGroup' Type?

8 views
Skip to first unread message

tim.a....@gmail.com

unread,
Apr 1, 2008, 11:10:44 PM4/1/08
to AdWords API Forum
I'm making requests to ValidateReportJob and when I set
selectedReportType to 'AdGroup' I get an error saying that the field
keywordStatuses is not allowed for this request? Yet it's a required
field (I get an error saying its required when I omit it).

I'm confident the rest of my code works correctly because I can simply
change selectedReportType to 'Creative', add the 'CreativeId'
selectedColumn and it works just fine.

Any ideas?

The error response is:

<soapenv:Fault>
<faultcode>soapenv:Server.userException</faultcode>

<faultstring>One or more report job parameters is invalid.</
faultstring>

<detail>
<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 AdGroup : [KeywordStatus]</ns1:trigger>

</ns1:fault>

</detail>

</soapenv:Fault>

AdWords API Advisor

unread,
Apr 3, 2008, 4:58:31 PM4/3/08
to AdWords API Forum
Hello Tim,

Yes, the <keywordStatuses> field in the DefinedReportJob
specification is only valid if the underlying report type supports
returning KeywordStatus columns. AdGroup reports do not, leading to
this error.

This wouldn't be a big issue except, as I think you pointed out in
another post, <keywordStatuses> is not defined in the WSDL as having
minOccurs="0", so it's not technically an optional field. Despite it
not being marked as optional in the WSDL, the SOAP service will
happily accept DefinedReportJob requests that don't have
<keywordStatuses> specified. We've heard of some SOAP frameworks are
stricter than others about not even letting you send requests unless
the request SOAP validates against the WSDL spec. I think PHP 5's SOAP
library falls into that camp.

If your SOAP framework prevents you from sending the request without
the <keywordStatuses> element, let folks here know which language and
framework you're using, as I believe there are known workarounds (at
least for PHP5's SOAP).

The WSDL needs to be remediated and the core engineering team is
aware of that, but I unfortunately can't provide any timeframe for
when you might expect to see that change go live.

Cheers,
-Jeff Posnick, AdWords API Team


On Apr 1, 11:10 pm, "tim.a.elli...@gmail.com"

tim.a....@gmail.com

unread,
Apr 4, 2008, 4:27:41 PM4/4/08
to AdWords API Forum
Thank you for the reply. Yes I ended up just using a local modified
copy of the WSDL which allows it optionally.

I was/am using PHP 5 SoapClient

On Apr 3, 3:58 pm, AdWords API Advisor <adwordsapiadvi...@google.com>
wrote:

timprepscius

unread,
Apr 5, 2008, 9:33:38 AM4/5/08
to AdWords API Forum
Try this:
"keywordStatuses" => array()

On Apr 4, 4:27 pm, "tim.a.elli...@gmail.com" <tim.a.elli...@gmail.com>
wrote:
Reply all
Reply to author
Forward
0 new messages