I used google ads Api to change keywords bid, but reported a GoogleAdsException error, the code is as follows:
String keywordResource = ResourceNames.adGroupCriterion (
accountId,
adGroupId,
keywordId);
AdGroupCriterion.Builder adGroupCriterion = AdGroupCriterion.newBuilder ()
.setType (CriterionTypeEnum.CriterionType.KEYWORD)
.setResourceName (keywordResource)
.setBidModifier (DoubleValue.of (keywordBidToBeUpdated.getNewBid ()));
AdGroupCriterionOperation operation = AdGroupCriterionOperation.newBuilder ()
.setUpdate (adGroupCriterion)
.setUpdateMask (FieldMasks.allSetFieldsOf (adGroupCriterion.build ()))
.build ();
operationList.add (operation);
............................
AdGroupCriterionServiceClient.mutateAdGroupCriteria(accountId,operationList);
the error is :
com.google.ads.googleads.v2.errors.GoogleAdsException: errors {
error_code {
criterion_error: CANNOT_BID_MODIFY_CRITERION_TYPE
}
message: "Cannot set bid modifier for this criterion type."
trigger {
string_value: ""
}
location {
field_path_elements {
field_name: "operations"
index {
}
}
field_path_elements {
field_name: "update"
}
field_path_elements {
field_name: "bid_modifier"
}
}
}