Hi Team, Below is my code for creating AppAdInfo for some AdGroupAd. Currently I stuck at assign headlines values. I tried to search samples but no succeed.
#!/usr/bin/env python # Copyright 2018 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """This example adds an expanded text ad. To get expanded text ads, run get_expanded_text_ads.py. """ from __future__ import absolute_import import argparse import six import sys import uuid import datetime import google.ads.google_ads.client from google.ads.google_ads.v2.proto.common.ad_asset_pb2 import AdTextAsset def main(client, customer_id, ad_group_id, number_of_ads): ad_group_ad_service = client.get_service('AdGroupAdService', version='v2') ad_group_service = client.get_service('AdGroupService', version='v2') ad_group_ad_operations = [] for i in range(number_of_ads): # Create ad group ad. ad_group_ad_operation = client.get_type('AdGroupAdOperation', version='v2') ad_group_ad = ad_group_ad_operation.create ad_group_ad.ad_group.value = ad_group_service.ad_group_path(customer_id, ad_group_id) ad_group_ad.status = client.get_type('AdGroupAdStatusEnum', version='v2').PAUSED ad_group_ad.ad.type = client.get_type('AdTypeEnum', version='v2').AdType.APP_AD now = datetime.datetime.utcnow() timestr = datetime.datetime.strftime(now, "%Y-%m-%d %H:%M:%S.%f") print("timestr=", timestr) ad_group_ad.ad.name.value = "ApolloTest-%s" % timestr asset = AdTextAsset() asset.text.value="abcdefg" # ad_group_ad.ad.app_ad.mandatory_ad_text = asset # ========== STUCK HERE ========== *ad_group_ad* *.ad.app_ad.headlines = [asset] ad_group_ad.ad.app_ad.descriptions = [asset]* # ad_group_ad.app_ad.headlines = [ # # ] ad_group_ad_operations.append(ad_group_ad_operation) try: ad_group_ad_response = ad_group_ad_service.mutate_ad_group_ads( customer_id, ad_group_ad_operations) except google.ads.google_ads.errors.GoogleAdsException as ex: print('Request with ID "{}" failed with status "{}" and includes the ' 'following errors:'.format(ex.request_id, ex.error.code().name)) for error in ex.failure.errors: print('\tError with message "{}".'.format(error.message)) if error.location: for field_path_element in error.location.field_path_elements: print('\t\tOn field: {}'.format(field_path_element.field_name)) sys.exit(1) for result in ad_group_ad_response.results: print('Created ad group ad {}.'.format(result.resource_name)) if __name__ == '__main__': # GoogleAdsClient will read the google-ads.yaml configuration file in the # home directory if none is specified. google_ads_client = (google.ads.google_ads.client.GoogleAdsClient .load_from_storage("/opt/webeye/bazaar/mkt-service/app/files/google-ads.yaml")) parser = argparse.ArgumentParser( description=('Adds an expanded text ad to the specified ad group ID, ' 'for the given customer ID.')) # The following argument(s) should be provided to run the example. parser.add_argument('-c', '--customer_id', type=six.text_type, required=True, help='The Google Ads customer ID.') parser.add_argument('-a', '--ad_group_id', type=six.text_type, required=True, help='The ad group ID.') parser.add_argument('-n', '--number_of_ads', type=int, required=False, default=1, help='The number of ads.') args = parser.parse_args() main(google_ads_client, args.customer_id, args.ad_group_id, args.number_of_ads) Could you please give a sample of adding new AppAdInfo in python? Thanks! Wenjun -- -- =~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~ 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/3b0d6565-0e0b-4b62-96be-b2adf4f81497%40googlegroups.com.
