Hi,
this code works as expected:
customer_id = REDACTED
campaign_id = REDACTED
campaign_service = google_ads_client.get_service('CampaignService', version='v1')
campaign_operation = google_ads_client.get_type('CampaignOperation', version='v1')
campaign = campaign_operation.update
campaign.resource_name = campaign_service.campaign_path(
customer_id, campaign_id)
campaign.manual_cpc.enhanced_cpc_enabled.value = True
fm = protobuf_helpers.field_mask(None, campaign)
campaign_operation.update_mask.CopyFrom(fm)
campaign_response = campaign_service.mutate_campaigns(
customer_id, [campaign_operation])
Result: The campaigns bid strategy is set to manual_cpc and the enhanced_cpc is enabled.
But if I try to set enhanced_cpc to false, nothing happens:
customer_id = REDACTED
campaign_id = REDACTED
campaign_service = google_ads_client.get_service('CampaignService', version='v1')
campaign_operation = google_ads_client.get_type('CampaignOperation', version='v1')
campaign = campaign_operation.update
campaign.resource_name = campaign_service.campaign_path(
customer_id, campaign_id)
campaign.manual_cpc.enhanced_cpc_enabled.value = False
fm = protobuf_helpers.field_mask(None, campaign)
campaign_operation.update_mask.CopyFrom(fm)
campaign_response = campaign_service.mutate_campaigns(
customer_id, [campaign_operation])
Despite of not getting any errors, when I check the settings in the Google Ads UI, the enhanced_cpc is still enabled.
Would you mind looking into it?
Regards
Mat