SelectorError.INVALID_PREDICATE_OPERATOR-v201309

966 views
Skip to first unread message

Ranjit Behera

unread,
May 9, 2014, 9:53:35 AM5/9/14
to adwor...@googlegroups.com
Hi,

Am trying to apply predicates to Keyword Performance Report, below is my Code :

             $selector->predicates[] = new Predicate('Impressions', 'GREATER_THAN_EQUALS', '0');
             $selector->predicates[] = new Predicate('Status', 'CONTAINS_IGNORE_CASE','PAUSED');

I Also tried :

             $selector->predicates[] = new Predicate('Impressions', 'GREATER_THAN_EQUALS', '0');
             $selector->predicates[] = new Predicate('Status', 'CONTAINS_IGNORE_CASE',array('PAUSED','ENABLED','LOW SEARCH VOLUME','LOW QUALITY SCORE','BELOW FIRST PAGE BID'));

But got this below Error :

            <?xml version="1.0" encoding="UTF-8"?>
<reportDownloadError>
   <ApiError>
      <type>SelectorError.INVALID_PREDICATE_OPERATOR</type>
      <trigger>Status</trigger>
      <fieldPath>selector</fieldPath>
   </ApiError>
   <ApiError>
      <type>SelectorError.INVALID_PREDICATE_OPERATOR</type>
      <trigger>Status</trigger>
      <fieldPath>selector</fieldPath>
   </ApiError>
   <ApiError>
      <type>SelectorError.INVALID_PREDICATE_ENUM_VALUE</type>
      <trigger>ENABLED</trigger>
      <fieldPath>selector</fieldPath>
   </ApiError>
   <ApiError>
      <type>SelectorError.INVALID_PREDICATE_OPERATOR</type>
      <trigger>Status</trigger>
      <fieldPath>selector</fieldPath>
   </ApiError>
   <ApiError>
      <type>SelectorError.INVALID_PREDICATE_ENUM_VALUE</type>
      <trigger>LOW SEARCH VOLUME</trigger>
      <fieldPath>selector</fieldPath>
   </ApiError>
   <ApiError>
      <type>SelectorError.INVALID_PREDICATE_OPERATOR</type>
      <trigger>Status</trigger>
      <fieldPath>selector</fieldPath>
   </ApiError>
   <ApiError>
      <type>SelectorError.INVALID_PREDICATE_ENUM_VALUE</type>
      <trigger>LOW QUALITY SCORE</trigger>
      <fieldPath>selector</fieldPath>
   </ApiError>
   <ApiError>
      <type>SelectorError.INVALID_PREDICATE_OPERATOR</type>
      <trigger>Status</trigger>
      <fieldPath>selector</fieldPath>
   </ApiError>
   <ApiError>
      <type>SelectorError.INVALID_PREDICATE_ENUM_VALUE</type>
      <trigger>BELOW FIRST PAGE BID</trigger>
      <fieldPath>selector</fieldPath>
   </ApiError>
</reportDownloadError>

How can apply this filter for Keyword Performance Report.

Can anyone give a sammple code ??

Thanks.

Josh Radcliff (AdWords API Team)

unread,
May 9, 2014, 3:44:08 PM5/9/14
to adwor...@googlegroups.com
Hi,

That error is occurring because you cannot use the CONTAINS_IGNORE_CASE operator with the Status field.  If you use EQUALS, IN or NOT_IN the report should run successfully.  The reason for this is that CONTAINS_IGNORE_CASE is meant for String fields, but Status will be an instance of the UserStatus enum.

Note also that the only valid values for Status are ACTIVE, PAUSED, and DELETED.  You can see the valid values in the last column of the Status row in the report's documentation.

Cheers,
Josh, AdWords API Team

Ranjit Behera

unread,
May 10, 2014, 2:38:30 AM5/10/14
to adwor...@googlegroups.com

Thanks Josh,

 Can u pls tell me how can i apply filter to restrict NULL values in MaxCpc and DestinationUrl columns.

I tried with below code :

$selector->predicates[] = new Predicate('DestinationUrl ','NOT_EQUALS', NULL);
$selector->predicates[] = new Predicate('MaxCpc ','NOT_EQUALS', NULL);

above code dint work.

Josh Radcliff (AdWords API Team)

unread,
May 12, 2014, 1:35:54 PM5/12/14
to adwor...@googlegroups.com
Hi,

I'm not aware of any way to explicitly filter null values.  However, you could filter for Impressions GREATER_THAN 0 and achieve almost the same thing, since I would expect to get a DestinationUrl back for any criterion with impressions.  You could also filter by MaxCpc GREATER_THAN 0 instead of trying to filter out null values for that field.

Best regards,
Josh, AdWords API Team

Anash P. Oommen (AdWords API Team)

unread,
May 12, 2014, 1:41:41 PM5/12/14
to adwor...@googlegroups.com
Hi Ranjit,

For destination url, a DestinationUrl STARTS_WITH 'http' might work.

Cheers,
Anash P. Oommen,
AdWords API Advisor.

Chirag

unread,
Dec 31, 2015, 7:14:43 AM12/31/15
to AdWords API Forum
Hi Team,

I am also Not able to use predicate GREATER_THAN with convertedclicks under ADGROUP_PERFORMANCE_REPORT.

$selector->predicates[] = new Predicate('ConvertedClicks', 'GREATER_THAN', array('0'));
OR
$selector->predicates[] = new Predicate('ConvertedClicks', 'GREATER_THAN', '0');

Getting error : "An error has occurred: Report download failed. Underlying errors are Type = 'ReportDownloadError.INVALID_REPORT_DEFINITION_XML', Trigger = 'Invalid ReportDefinition Xml: cvc-complex-type.2.4.b: The content of element 'predicates' is not complete. One of '{"https://adwords.google.com/api/adwords/cm/v201509":values}' is expected.', FieldPath = ''.

Can anyone suggest me solution?

Thanks,

Chirag

unread,
Jan 3, 2016, 7:36:10 AM1/3/16
to AdWords API Forum
Hello Anash,

Any update on this?

Thanks,

Anash P. Oommen (AdWords API Team)

unread,
Jan 11, 2016, 9:13:55 AM1/11/16
to AdWords API Forum
Hi Chirag,

Looks like you need to upgrade your reporting API version to v201509.

Cheers,
Anash

Chirag

unread,
Jan 12, 2016, 12:15:57 AM1/12/16
to AdWords API Forum
Hello Anash,

I am using v201509. This issue is with GRETER_THAN Predicate with value as 0.

Thanks,

Anash P. Oommen (AdWords API Team)

unread,
Jan 12, 2016, 9:35:50 AM1/12/16
to AdWords API Forum
Hi Chirag,

Could you post a report request log after masking out the credentials?

Cheers,
Anash P. Oommen,
AdWords API Advisor.

Reply all
Reply to author
Forward
0 new messages