Hmm..
If I understood you correctly, the main hypothesis is that the `case_field`
of my create operation which should create the "Other" node is wrong.
I have tried several different variants of setting it:
*attempt 1*: remove `index` from `listing_custom_attribute`
[create {
status: ENABLED
ad_group {
value: "customers/5936312994/adGroups/82410873572"
}
cpc_bid_micros {
value: 14000000
}
listing_group {
type: UNIT
case_value {
listing_custom_attribute {
value {
value: "3000-4000"
}
index: INDEX0
}
}
parent_ad_group_criterion {
value: "customers/5936312994/adGroupCriteria/82410873572~-1"
}
}
}, create {
status: ENABLED
ad_group {
value: "customers/5936312994/adGroups/82410873572"
}
cpc_bid_micros {
value: 10000000
}
listing_group {
type: UNIT
case_value {
listing_custom_attribute {
}
}
parent_ad_group_criterion {
value: "customers/5936312994/adGroupCriteria/82410873572~-1"
}
}
}, create {
resource_name: "customers/5936312994/adGroupCriteria/82410873572~-1"
status: ENABLED
listing_group {
type: SUBDIVISION
}
}]
This results in the error:
errors {
error_code {
field_error: REQUIRED
}
message: "The required field was not present."
trigger {
string_value: ""
}
location {
field_path_elements {
field_name: "operations"
index {
value: 1
}
}
field_path_elements {
field_name: "create"
}
field_path_elements {
field_name: "listing_group"
}
field_path_elements {
field_name: "case_value"
}
field_path_elements {
field_name: "listing_custom_attribute"
}
field_path_elements {
field_name: "index"
}
}
}
*Attempt 2*: (just to be sure) Clear `case_value` field at all
[create {
status: ENABLED
ad_group {
value: "customers/5936312994/adGroups/82410873572"
}
cpc_bid_micros {
value: 14000000
}
listing_group {
type: UNIT
case_value {
listing_custom_attribute {
value {
value: "3000-4000"
}
index: INDEX0
}
}
parent_ad_group_criterion {
value: "customers/5936312994/adGroupCriteria/82410873572~-1"
}
}
}, create {
status: ENABLED
ad_group {
value: "customers/5936312994/adGroups/82410873572"
}
cpc_bid_micros {
value: 10000000
}
listing_group {
type: UNIT
case_value {
}
parent_ad_group_criterion {
value: "customers/5936312994/adGroupCriteria/82410873572~-1"
}
}
}, create {
resource_name: "customers/5936312994/adGroupCriteria/82410873572~-1"
status: ENABLED
listing_group {
type: SUBDIVISION
}
}]
Strangely enough this produces the same errors as in my first message in
this thread:
errors {
error_code {
ad_group_criterion_error: LISTING_GROUP_SUBDIVISION_REQUIRES_OTHERS_CASE
}
message: "Subdivided listing groups must have an \"others\" case."
trigger {
string_value: "ProductPartition{id=TempCriterionId{id=1},
bidSimulatorStatus=null, partitionType=SUBDIVISION, parentCriterionId=null,
productGroup=null, productGroupObsoleteStatus=null, caseValue=null,
decisionPath=[], salesCountry=null, merchantId=null,
hasPromotedSuggestion=null}"
}
}
errors {
error_code {
ad_group_criterion_error: LISTING_GROUP_DOES_NOT_EXIST
}
message: "Listing group referenced in the operation was not found in the
ad group."
trigger {
string_value: "TempCriterionId{id=1}"
}
location {
field_path_elements {
field_name: "operations"
index {
}
}
field_path_elements {
field_name: "create"
}
field_path_elements {
field_name: "listing_group"
}
field_path_elements {
field_name: "parent_ad_group_criterion"
}
}
}
errors {
error_code {
ad_group_criterion_error: LISTING_GROUP_DOES_NOT_EXIST
}
message: "Listing group referenced in the operation was not found in the
ad group."
trigger {
string_value: "TempCriterionId{id=1}"
}
location {
field_path_elements {
field_name: "operations"
index {
value: 1
}
}
field_path_elements {
field_name: "create"
}
field_path_elements {
field_name: "listing_group"
}
field_path_elements {
field_name: "parent_ad_group_criterion"
}
}
}
*Attempt 3*: I have tried to use `listing_brand` instead of
`listing_custom_attribute` since that field works in the Java example:
[create {
status: ENABLED
ad_group {
value: "customers/5936312994/adGroups/82410873572"
}
cpc_bid_micros {
value: 14000000
}
listing_group {
type: UNIT
case_value {
listing_brand {
value {
value:
"\321\215\320\272\320\276\321\207\320\265\320\273\320\276\320\262\320\265\320\272\320\270"
}
}
}
parent_ad_group_criterion {
value: "customers/5936312994/adGroupCriteria/82410873572~-1"
}
}
}, create {
status: ENABLED
ad_group {
value: "customers/5936312994/adGroups/82410873572"
}
cpc_bid_micros {
value: 10000000
}
listing_group {
type: UNIT
case_value {
listing_brand {
}
}
parent_ad_group_criterion {
value: "customers/5936312994/adGroupCriteria/82410873572~-1"
}
}
}, create {
resource_name: "customers/5936312994/adGroupCriteria/82410873572~-1"
status: ENABLED
listing_group {
type: SUBDIVISION
}
}]
p.s. the brand value here is "экочеловечки" - it's Cyrillic in UTF-8
encoding. I copied it from Google Ads web interface from another AdGroup so
it should be correct and exist in the feed.
Again I receive the same errors as in the very beginning if this thread:
errors {
error_code {
ad_group_criterion_error:
LISTING_GROUP_SUBDIVISION_REQUIRES_OTHERS_CASE
}
message: "Subdivided listing groups must have an \"others\" case."
trigger {
string_value: "ProductPartition{id=TempCriterionId{id=1},
bidSimulatorStatus=null, partitionType=SUBDIVISION, parentCriterionId=null,
productGroup=null, productGroupObsoleteStatus=null, caseValue=null,
decisionPath=[], salesCountry=null, merchantId=null,
hasPromotedSuggestion=null}"
}
}
errors {
error_code {
ad_group_criterion_error: LISTING_GROUP_DOES_NOT_EXIST
}
message: "Listing group referenced in the operation was not found in the
ad group."
trigger {
string_value: "TempCriterionId{id=1}"
}
location {
field_path_elements {
field_name: "operations"
index {
}
}
field_path_elements {
field_name: "create"
}
field_path_elements {
field_name: "listing_group"
}
field_path_elements {
field_name: "parent_ad_group_criterion"
}
}
}
errors {
error_code {
ad_group_criterion_error: LISTING_GROUP_DOES_NOT_EXIST
}
message: "Listing group referenced in the operation was not found in the
ad group."
trigger {
string_value: "TempCriterionId{id=1}"
}
location {
field_path_elements {
field_name: "operations"
index {
value: 1
}
}
field_path_elements {
field_name: "create"
}
field_path_elements {
field_name: "listing_group"
}
field_path_elements {
field_name: "parent_ad_group_criterion"
}
}
}
>From what I understand, the last one (with listing_brand) is a correct
input but still it results in errors. For the Custom labels, if I gathered
it right, the index field is required one and should also be present in the
Other node. And I would like to remind here that I copied the original
protobuf messages from my working production account and just trying to
recreate the same nodes in my test account, so the protobuf messages (the
original ones) should be correct (I changed only CusteomerId, AdGroupId,
and all AdGroupCriteriaIds to Temprorary ids)
If I didn't understand correctly what you meant, could you please provide
protobuf messages of operations which you think should work with my feed
values? (custom label or brand as in the examples above) or at least the
part which contains error (before and after correction).
Thank you for your time.
On Monday, August 19, 2019 at 10:32:37 PM UTC+3, adsapiforumadvisor wrote:
>
> Hello,
>
> Thank you for checking this. Let me explain this in detail. Based on your
> logs shared, you are creating a SUBDIVISION which will introduce the new
> level in tree. Here you are creating two units with index: INDEX0. This is
> still missing the Others node. Each subdivision must always be completely
> partitioned, so it must contain a node representing Other. Each subdivision
> must contain an "empty" case_value of the correct type. This child is
> usually referred to as Other because it represents "all other values" for
> that ListingDimensionInfo. Could you please take a look at the shared logs
> for on how the Others is implemented?
>
> Regards,
> Bharani, Google Ads API Team
>
> ref:_00D1U1174p._5001UEJA9R:ref
--
--
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog:
https://googleadsdeveloper.blogspot.com/
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
You received this message because you are subscribed to the Google
Groups "AdWords API and Google Ads API Forum" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/adwords-api?hl=en
---
You received this message because you are subscribed to the Google Groups
"AdWords API and Google Ads API Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/adwords-api/b28ce93e-e2ce-44b6-9579-b52bcf9d022d%40googlegroups.com.