I'm trying to create an display upload ad in Google Ads API v14, but I'm
encountering issues. Specifically, I'm getting an "INVALID_ARGUMENT" error
with the message "Mutates are not allowed for the requested resource."
def create_display_upload_ad_group_ad(
client, customer_id, ad_group_id, ad_asset_resource_name
):
"""Creates a new HTML5 display upload ad and adds it to the given ad
group.
Args:
client: An initialized Google Ads client.
customer_id: The Google Ads customer ID.
ad_group_id: The ID of the ad group to which the new ad will be
added.
ad_asset_resource_name: The resource name of the media bundle
containing
the HTML5 components.
"""
# Get the AdGroupAdService client.
ad_group_ad_service = client.get_service("AdGroupAdService")
# Create an AdGroupAdOperation.
ad_group_ad_operation = client.get_type("AdGroupAdOperation")
# Configure the ad group ad fields.
ad_group_ad = ad_group_ad_operation.create
ad_group_ad.status = client.enums.AdGroupAdStatusEnum.PAUSED
ad_group_ad.ad_group = client.get_service("AdGroupService"
).ad_group_path(
customer_id, ad_group_id
)
# Configured the ad as a display upload ad.
display_upload_ad = ad_group_ad.ad
display_upload_ad.name = "Ad for HTML5"
display_upload_ad.final_urls.append("http://example.com/html5")
# Exactly one of the ad_data "oneof" fields must be included to specify
the
# ad type. See:
https://developers.google.com/google-ads/api/reference/rpc/latest/Ad for
# the full list of available types. By setting a "display_upload_ad"
# subfield it sets that as the "oneof" field for the Ad.
display_upload_ad.display_upload_ad.media_bundle.asset = (
ad_asset_resource_name
)
display_upload_ad.display_upload_ad.display_upload_product_type = (
client.enums.DisplayUploadProductTypeEnum.HTML5_UPLOAD_AD
)
# Add the ad group ad to the client account and display the resulting
# ad's resource name.
mutate_ad_group_ads_response = ad_group_ad_service.mutate_ad_group_ads(
customer_id=customer_id, operations=[ad_group_ad_operation]
)
print(
"Created new ad group ad with resource name "
f"'{mutate_ad_group_ads_response.results[0].resource_name}'."
)
Error Message: Request with ID "xKDxTq8R83Lu7ElSsLBwYw" failed with status
"INVALID_ARGUMENT" and includes the following errors: Error with message
"Mutates
are not allowed for the requested resource.". On field: operations On
field: create On field: ad
file was uploaded and returned the path Uploaded file with resource name
'customers/12344/assets/12234' and I entered it in the function's
ad_asset_resource_name
i try to v14
Despite these checks, I'm still encountering the same error. Any insights
or suggestions on what might be going wrong would be greatly appreciated.
--
--
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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
"Google Ads API and AdWords 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/e45ec101-7afd-452e-a774-c9117e8bd740n%40googlegroups.com.