I'm trying to run a get call on the CampaignFeedService where I only get the feeds for site links.
Selector selector = new Selector();
selector.setFields(new String[] { "CampaignId", "FeedId", "MatchingFunction", "PlaceholderTypes", "Status" });
Predicate idPredicate = new Predicate();
idPredicate.setField("CampaignId");
idPredicate.setOperator(PredicateOperator.IN);
idPredicate.setValues(getIds(campaigns));
Predicate typePredicate = new Predicate();
typePredicate.setField("PlaceholderTypes");
typePredicate.setOperator(PredicateOperator.CONTAINS);
typePredicate.setValues(new String[] { String.valueOf(GooglePlaceholder.SITELINKS) });
Predicate statusPredicate = new Predicate();
statusPredicate.setField("Status");
statusPredicate.setOperator(PredicateOperator.EQUALS);
statusPredicate.setValues(new String[] { "ACTIVE" });
selector.setPredicates(new Predicate[] { idPredicate, typePredicate, statusPredicate });
return selector;
<faultstring>[SelectorError.INVALID_PREDICATE_OPERATOR @ selector; trigger:'PlaceholderTypes']</faultstring>
<detail>
<message>[SelectorError.INVALID_PREDICATE_OPERATOR @ selector; trigger:'PlaceholderTypes']</message>
<ApplicationException.Type>ApiException</ApplicationException.Type>
<fieldPath>selector</fieldPath>
<trigger>PlaceholderTypes</trigger>
<errorString>SelectorError.INVALID_PREDICATE_OPERATOR</errorString>
<ApiError.Type>SelectorError</ApiError.Type>
<reason>INVALID_PREDICATE_OPERATOR</reason>
</errors>
</ApiExceptionFault>
</detail>
I also tried using IN as the operator for the placeholder types predicate but with the same result.