and managed to recreate with plain java api code (in scala, v9.0.0 of the java api dep, v5 of the api):
val resource = "customers/###/labels/###" // note please ask for ids, it may be occurring only in certain accounts
import com.google.ads.googleads.v5.enums.LabelStatusEnum.LabelStatus
import com.google.ads.googleads.v5.resources.Label
import com.google.ads.googleads.v5.services.LabelOperation
val l = Label.newBuilder
.setName(StringValue.of("Keyword_Coverage_v4.0_Native"))
.setStatus(LabelStatus.ENABLED)
.setResourceName(resource)
.build
val op=LabelOperation.newBuilder
.setUpdate(l)
.setUpdateMask(FieldMasks.allSetFieldsOf(l))
.build
val client = clientProvider.googleAdsVersion.createLabelServiceClient
try {
client.mutateLabels(account.id.toString, Seq(op).asJava)
} finally client.close()
When I actually changed the label name, the update worked:
.setName(StringValue.of("Keyword_Coverage_v4.0_Native-UPD"))
and when I changed the name back, it now works fine:
.setName(StringValue.of("Keyword_Coverage_v4.0_Native"))
(run twice, the update now succeeds!)