Ads

Add an expanded text ad

 function 
  
 addExpandedTextAd 
 ( 
 adGroupName 
 , 
 campaignName 
 ) 
  
 { 
  
 const 
  
 campaignIterator 
  
 = 
  
 AdsApp 
 . 
 campaigns 
 () 
  
 . 
 withCondition 
 ( 
 ` 
 campaign 
 . 
 name 
  
 = 
  
 "${campaignName}" 
 ` 
 ) 
  
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 campaignIterator 
 . 
 hasNext 
 ()){ 
  
 throw 
  
 new 
  
 error 
  
 ( 
 ` 
 No 
  
 campaign 
  
 found 
  
 with 
  
 name 
 : 
  
 "${campaignname}" 
 ` 
 ); 
  
 } 
  
 const 
  
 adGroupIterator 
  
 = 
  
 AdsApp 
 . 
 adGroups 
 () 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group 
 . 
 name 
  
 = 
  
 "${adGroupName}" 
 ` 
 ) 
  
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 adGroupIterator 
 . 
 hasNext 
 ()){ 
  
 throw 
  
 new 
  
 error 
  
 ( 
 ` 
 No 
  
 ad 
  
 group 
  
 found 
  
 with 
  
 name 
 : 
  
 "${adGroupName}" 
 ` 
 ); 
  
 } 
  
 const 
  
 adGroup 
  
 = 
  
 adGroupIterator 
 . 
 next 
 (); 
  
 adGroup 
 . 
 newAd 
 () 
 . 
 expandedTextAdBuilder 
 () 
  
 . 
 withHeadlinePart1 
 ( 
 'First headline of ad' 
 ) 
  
 . 
 withHeadlinePart2 
 ( 
 'Second headline of ad' 
 ) 
  
 . 
 withHeadlinePart3 
 ( 
 'Third headline of ad' 
 ) 
  
 . 
 withDescription 
 ( 
 'First Ad description' 
 ) 
  
 . 
 withDescription2 
 ( 
 'Second Ad description' 
 ) 
  
 . 
 withPath1 
 ( 
 'path1' 
 ) 
  
 . 
 withPath2 
 ( 
 'path2' 
 ) 
  
 . 
 withFinalUrl 
 ( 
 'http://www.example.com' 
 ) 
  
 . 
 build 
 (); 
  
 // 
  
 ExpandedTextAdBuilder 
  
 has 
  
 additional 
  
 options 
 . 
  
 // 
  
 For 
  
 more 
  
 details 
 , 
  
 see 
  
 // 
  
 https 
 : 
 // 
 developers 
 . 
 google 
 . 
 com 
 / 
 google 
 - 
 ads 
 / 
 scripts 
 / 
 docs 
 / 
 reference 
 / 
 adsapp 
 / 
 adsapp_expandedtextadbuilder 
 } 

Add an image ad

 function 
  
 addImageAd 
 ( 
 adGroupName 
 , 
 imageUrl 
 , 
 imageName 
 ) 
  
 { 
  
 const 
  
 imageBlob 
  
 = 
  
 UrlFetchApp 
 . 
 fetch 
 ( 
 imageUrl 
 ) 
 . 
 getBlob 
 (); 
  
 const 
  
 mediaOperation 
  
 = 
  
 AdsApp 
 . 
 adMedia 
 () 
 . 
 newImageBuilder 
 () 
  
 . 
 withName 
 ( 
 ` 
 $ 
 { 
 imageName 
 } 
 ` 
 ) 
  
 . 
 withData 
 ( 
 imageBlob 
 ) 
  
 . 
 build 
 (); 
  
 const 
  
 image 
  
 = 
  
 mediaOperation 
 . 
 getResult 
 (); 
  
 if 
  
 ( 
 ! 
 image 
 . 
 isSuccessful 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 Media 
  
 could 
  
 not 
  
 be 
  
 created 
  
 from 
  
 url 
 : 
  
 "${imageUrl}" 
 ` 
 ) 
  
 } 
  
 const 
  
 adGroupIterator 
  
 = 
  
 AdsApp 
 . 
 adGroups 
 () 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group 
 . 
 name 
  
 = 
  
 "${adGroupName}" 
 ` 
 ) 
  
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 adGroupIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 No 
  
 ad 
  
 group 
  
 found 
  
 with 
  
 name 
 : 
  
 "${adGroupName}" 
 ` 
 ); 
  
 } 
  
 if 
  
 ( 
 adGroupIterator 
 . 
 totalNumEntities 
 () 
 > 
 1 
 ) 
  
 { 
  
 console 
 . 
 warn 
 ( 
 ` 
 Multiple 
  
 ad 
  
 groups 
  
 named 
  
 "${name}" 
  
 found 
 . 
  
 Using 
  
 the 
  
 one 
  
 from 
  
 campaign 
  
 "${adGroup.getCampaign().getName()}" 
 . 
 ` 
 ); 
  
 } 
  
 const 
  
 mediaIterator 
  
 = 
  
 AdsApp 
 . 
 adMedia 
 () 
 . 
 media 
 () 
  
 . 
 withCondition 
 ( 
 ` 
 media_file 
 . 
 name 
  
 = 
  
 "${imageName}" 
 ` 
 ) 
  
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 mediaIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 No 
  
 media 
  
 found 
  
 with 
  
 name 
 : 
  
 "${imageName}" 
 ` 
 ); 
  
 } 
  
 const 
  
 adGroup 
  
 = 
  
 adGroupIterator 
 . 
 next 
 (); 
  
 const 
  
 image2 
  
 = 
  
 mediaIterator 
 . 
 next 
 (); 
  
 adGroup 
 . 
 newAd 
 () 
 . 
 imageAdBuilder 
 () 
  
 . 
 withName 
 ( 
 'Ad name' 
 ) 
  
 . 
 withImage 
 ( 
 image2 
 ) 
  
 . 
 withDisplayUrl 
 ( 
 'http://www.example.com' 
 ) 
  
 . 
 withFinalUrl 
 ( 
 'http://www.example.com' 
 ) 
  
 . 
 build 
 (); 
  
 // 
  
 ImageAdBuilder 
  
 has 
  
 additional 
  
 options 
 . 
  
 // 
  
 For 
  
 more 
  
 details 
 , 
  
 see 
  
 // 
  
 https 
 : 
 // 
 developers 
 . 
 google 
 . 
 com 
 / 
 google 
 - 
 ads 
 / 
 scripts 
 / 
 docs 
 / 
 reference 
 / 
 adsapp 
 / 
 adsapp_imageadbuilder 
 } 

Add a responsive display ad

 // 
  
 You 
  
 create 
  
 responsive 
  
 display 
  
 ads 
  
 in 
  
 two 
  
 steps 
 : 
 // 
  
 1. 
  
 Create 
  
 or 
  
 retrieve 
  
 assets 
  
 ( 
 marketing 
  
 images 
 , 
  
 square 
  
 marketing 
  
 images 
 , 
 // 
  
 optional 
  
 logos 
 , 
  
 optional 
  
 landscape 
  
 logos 
 , 
  
 and 
  
 optional 
  
 YouTube 
  
 videos 
 ) 
 // 
  
 2. 
  
 Create 
  
 the 
  
 ad 
 . 
 // 
 // 
  
 The 
  
 following 
  
 function 
  
 assumes 
  
 you 
  
 have 
  
 not 
  
 already 
  
 created 
  
 named 
  
 assets 
 . 
 function 
  
 addResponsiveDisplayAd 
 ( 
 campaignName 
 , 
 adGroupName 
 ) 
  
 { 
  
 // 
  
 If 
  
 you 
  
 have 
  
 multiple 
  
 adGroups 
  
 with 
  
 the 
  
 same 
  
 name 
 , 
  
 this 
  
 snippet 
  
 will 
  
 // 
  
 pick 
  
 an 
  
 arbitrary 
  
 matching 
  
 ad 
  
 group 
  
 each 
  
 time 
 . 
  
 In 
  
 such 
  
 cases 
 , 
  
 just 
  
 // 
  
 filter 
  
 on 
  
 the 
  
 campaign 
  
 name 
  
 as 
  
 well 
 : 
  
 // 
  
 // 
  
 AdsApp 
 . 
 adGroups 
 () 
  
 // 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group 
 . 
 name 
  
 = 
  
 "${adGroupName}" 
 ` 
 ) 
  
 // 
  
 . 
 withCondition 
 ( 
 ` 
 campaign 
 . 
 name 
  
 = 
  
 "${campaignName}" 
 ` 
 ) 
  
 const 
  
 adGroupIterator 
  
 = 
  
 AdsApp 
 . 
 adGroups 
 () 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group 
 . 
 name 
  
 = 
  
 "${adGroupName}" 
 ` 
 ) 
  
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 adGroupIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 No 
  
 ad 
  
 group 
  
 found 
  
 with 
  
 name 
 : 
  
 $ 
 { 
 adGroupName 
 } 
 ` 
 ); 
  
 } 
  
 // 
  
 If 
  
 you 
  
 have 
  
 already 
  
 created 
  
 named 
  
 image 
  
 assets 
 , 
  
 select 
  
 them 
  
 like 
  
 this 
 : 
  
 // 
  
 // 
  
 const 
  
 marketingImages 
  
 = 
  
 []; 
  
 // 
  
 const 
  
 marketingImageIterator 
  
 = 
  
 AdsApp 
 . 
 adAssets 
 () 
  
 // 
  
 . 
 assets 
 () 
  
 // 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group_ad 
 . 
 ad 
 . 
 name 
  
 IN 
  
 ( 
 "INSERT_FIRST_ASSET_NAME_HERE" 
 , 
  
 // 
  
 "INSERT_SECOND_ASSET_NAME_HERE" 
 ) 
 ` 
 ) 
  
 // 
  
 . 
 get 
 (); 
  
 // 
  
 while 
  
 ( 
 marketingImageIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 // 
  
 marketingImages 
 . 
 push 
 ( 
 marketingImageIterator 
 . 
 next 
 ()); 
  
 // 
  
 } 
  
 const 
  
 adGroup 
  
 = 
  
 adGroupIterator 
 . 
 next 
 (); 
  
 const 
  
 adGroupBuilder 
  
 = 
  
 adGroup 
 . 
 newAd 
 () 
  
 . 
 responsiveDisplayAdBuilder 
 () 
  
 . 
 withBusinessName 
 ( 
 'Your business name' 
 ) 
  
 . 
 withFinalUrl 
 ( 
 'http://www.example.com' 
 ) 
  
 . 
 withHeadlines 
 ([ 
 'First headline' 
 , 
  
 'Second headline' 
 ]) 
  
 . 
 withLongHeadline 
 ( 
 'Long Headline' 
 ) 
  
 . 
 withDescriptions 
 ( 
  
 [ 
 'First description' 
 , 
  
 'Second description' 
 , 
  
 'Third description' 
 ]); 
  
 // 
  
 If 
  
 you 
  
 selected 
  
 assets 
  
 with 
  
 a 
  
 snippet 
  
 as 
  
 shown 
  
 above 
 , 
  
 then 
  
 provide 
  
 those 
  
 // 
  
 assets 
  
 here 
  
 like 
  
 this 
 : 
  
 // 
  
 // 
  
 adGroupBuilder 
  
 = 
  
 adGroupBuilder 
 . 
 withMarketingImages 
 ( 
 marketingImages 
 ); 
  
 adGroupBuilder 
  
 . 
 addMarketingImage 
 ( 
  
 buildImageAsset 
 ( 
 "rectangular image asset" 
 , 
  
 "https://goo.gl/3b9Wfh" 
 )) 
  
 . 
 addSquareMarketingImage 
 ( 
  
 buildImageAsset 
 ( 
 "square image asset" 
 , 
  
 "https://goo.gl/mtt54n" 
 )) 
  
 . 
 build 
 (); 
  
 // 
  
 ResponsiveDisplayAdBuilder 
  
 has 
  
 additional 
  
 options 
 . 
  
 // 
  
 For 
  
 more 
  
 details 
 , 
  
 see 
  
 // 
  
 https 
 : 
 // 
 developers 
 . 
 google 
 . 
 com 
 / 
 google 
 - 
 ads 
 / 
 scripts 
 / 
 docs 
 / 
 reference 
 / 
 adsapp 
 / 
 adsapp_responsivedisplayadbuilder 
 } 
 function 
  
 buildImageAsset 
 ( 
 assetName 
 , 
  
 imageUrl 
 ) 
  
 { 
  
 const 
  
 imageBlob 
  
 = 
  
 UrlFetchApp 
 . 
 fetch 
 ( 
 imageUrl 
 ) 
 . 
 getBlob 
 (); 
  
 return 
  
 AdsApp 
 . 
 adAssets 
 () 
 . 
 newImageAssetBuilder 
 () 
  
 . 
 withData 
 ( 
 imageBlob 
 ) 
  
 . 
 withName 
 ( 
 assetName 
 ) 
  
 . 
 build 
 () 
  
 . 
 getResult 
 (); 
 } 

Pause ad in an ad group

 function 
  
 pauseAdInAdGroup 
 ( 
 adGroupName 
 ) 
  
 { 
  
 const 
  
 adGroupIterator 
  
 = 
  
 AdsApp 
 . 
 adGroups 
 () 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group 
 . 
 name 
  
 = 
  
 "${adGroupName}" 
 ` 
 ) 
  
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 adGroupIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 No 
  
 ad 
  
 group 
  
 found 
  
 with 
  
 name 
 : 
  
 "${adGroupName}" 
 ` 
 ); 
  
 } 
  
 const 
  
 adGroup 
  
 = 
  
 adGroupIterator 
 . 
 next 
 (); 
  
 const 
  
 adsIterator 
  
 = 
  
 adGroup 
 . 
 ads 
 () 
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 adsIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 No 
  
 ads 
  
 found 
  
 in 
  
 ad 
  
 group 
 : 
  
 "${adGroupName}" 
 ` 
 ); 
  
 } 
  
 const 
  
 ad 
  
 = 
  
 adsIterator 
 . 
 next 
 (); 
  
 ad 
 . 
 pause 
 (); 
 } 

Get expanded text ads iterator in an ad group

 function 
  
 getExpandedTextAdsIteratorInAdGroup 
 ( 
 adGroupName 
 ) 
  
 { 
  
 const 
  
 adGroupIterator 
  
 = 
  
 AdsApp 
 . 
 adGroups 
 () 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group 
 . 
 name 
  
 = 
  
 "${adGroupName}" 
 ` 
 ) 
  
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 adGroupIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 No 
  
 ad 
  
 group 
  
 found 
  
 with 
  
 name 
 : 
  
 "${adGroupName}" 
 ` 
 ); 
  
 } 
  
 const 
  
 adGroup 
  
 = 
  
 adGroupIterator 
 . 
 next 
 (); 
  
 // 
  
 You 
  
 can 
  
 filter 
  
 for 
  
 ads 
  
 of 
  
 a 
  
 particular 
  
 type 
 , 
  
 using 
  
 the 
  
 AdType 
  
 selector 
 . 
  
 // 
  
 See 
  
 https 
 : 
 // 
 developers 
 . 
 google 
 . 
 com 
 / 
 google 
 - 
 ads 
 / 
 scripts 
 / 
 docs 
 / 
 reference 
 / 
 adsapp 
 / 
 adsapp_ad 
 #getType_0 
  
 // 
  
 for 
  
 possible 
  
 values 
 . 
  
 const 
  
 expandedTextAdsIterator 
  
 = 
  
 adGroup 
 . 
 ads 
 () 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group_ad 
 . 
 ad 
 . 
 type 
  
 = 
  
 "EXPANDED_TEXT_AD" 
 ` 
 ) 
  
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 expandedTextAdsIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 No 
  
 expanded 
  
 text 
  
 ads 
  
 found 
  
 in 
  
 ad 
  
 group 
 : 
  
 "${adGroupName}" 
 ` 
 ); 
  
 } 
  
 return 
  
 expandedTextAdsIterator 
 ; 
 } 

Get text ads iterator in an ad group

 function 
  
 getTextAdsIteratorInAdGroup 
 ( 
 adGroupName 
 ) 
  
 { 
  
 const 
  
 adGroupIterator 
  
 = 
  
 AdsApp 
 . 
 adGroups 
 () 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group 
 . 
 name 
  
 = 
  
 "${adGroupName}" 
 ` 
 ) 
  
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 adGroupIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 No 
  
 ad 
  
 group 
  
 found 
  
 with 
  
 name 
 : 
  
 "${adGroupName}" 
 ` 
 ); 
  
 } 
  
 const 
  
 adGroup 
  
 = 
  
 adGroupIterator 
 . 
 next 
 (); 
  
 // 
  
 You 
  
 can 
  
 filter 
  
 for 
  
 ads 
  
 of 
  
 a 
  
 particular 
  
 type 
 , 
  
 using 
  
 the 
  
 AdType 
  
 selector 
 . 
  
 // 
  
 See 
  
 https 
 : 
 // 
 developers 
 . 
 google 
 . 
 com 
 / 
 google 
 - 
 ads 
 / 
 scripts 
 / 
 docs 
 / 
 reference 
 / 
 adsapp 
 / 
 adsapp_ad 
 #getType_0 
  
 // 
  
 for 
  
 possible 
  
 values 
 . 
  
 const 
  
 textAdsIterator 
  
 = 
  
 adGroup 
 . 
 ads 
 () 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group_ad 
 . 
 ad 
 . 
 type 
  
 = 
  
 "TEXT_AD" 
 ` 
 ) 
  
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 textAdsIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 No 
  
 text 
  
 ads 
  
 found 
  
 in 
  
 ad 
  
 group 
 : 
  
 "${adGroupName}" 
 ` 
 ); 
  
 } 
  
 return 
  
 textAdsIterator 
 ; 
 } 

Get stats for ads in an ad group

 function 
  
 getAdGroupAdStats 
 ( 
 adGroupName 
 ) 
  
 { 
  
 const 
  
 adGroupIterator 
  
 = 
  
 AdsApp 
 . 
 adGroups 
 () 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group 
 . 
 name 
  
 = 
  
 "${adGroupName}" 
 ` 
 ) 
  
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 adGroupIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 No 
  
 ad 
  
 group 
  
 found 
  
 with 
  
 name 
 : 
  
 "${adGroupName}" 
 ` 
 ); 
  
 } 
  
 const 
  
 adGroup 
  
 = 
  
 adGroupIterator 
 . 
 next 
 (); 
  
 // 
  
 If 
  
 you 
  
 want 
  
 to 
  
 restrict 
  
 your 
  
 search 
  
 to 
  
 some 
  
 ads 
  
 only 
 , 
  
 then 
  
 you 
  
 could 
  
 // 
  
 apply 
  
 a 
  
 label 
  
 and 
  
 retrieve 
  
 ads 
  
 as 
  
 // 
  
 // 
  
 const 
  
 label 
  
 = 
  
 AdsApp 
 . 
 labels 
 () 
  
 // 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group_ad_label 
 . 
 name 
  
 = 
 "INSERT_LABEL_NAME_HERE" 
 ` 
 ) 
  
 // 
  
 . 
 get 
 () 
  
 // 
  
 . 
 next 
 (); 
  
 // 
  
 const 
  
 adsIterator 
  
 = 
  
 label 
 . 
 ads 
 () 
 . 
 get 
 (); 
  
 const 
  
 adsIterator 
  
 = 
  
 adGroup 
 . 
 ads 
 () 
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 adsIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 No 
  
 ads 
  
 found 
  
 in 
  
 ad 
  
 group 
 : 
  
 "${adGroupName}" 
 ` 
 ); 
  
 } 
  
 const 
  
 ad 
  
 = 
  
 adsIterator 
 . 
 next 
 (); 
  
 // 
  
 You 
  
 can 
  
 also 
  
 request 
  
 reports 
  
 for 
  
 pre 
 - 
 defined 
  
 date 
  
 ranges 
 . 
  
 See 
  
 // 
  
 https 
 : 
 // 
 developers 
 . 
 google 
 . 
 com 
 / 
 google 
 - 
 ads 
 / 
 api 
 / 
 docs 
 / 
 query 
 / 
 date 
 - 
 ranges 
  
 // 
  
 DateRangeLiteral 
  
 section 
  
 for 
  
 possible 
  
 values 
 . 
  
 const 
  
 stats 
  
 = 
  
 ad 
 . 
 getStatsFor 
 ( 
 'LAST_MONTH' 
 ); 
  
 console 
 . 
 log 
 ( 
 ` 
 $ 
 { 
 adGroup 
 . 
 getName 
 ()}, 
  
 $ 
 { 
 stats 
 . 
 getClicks 
 ()}, 
  
 $ 
 { 
 stats 
 . 
 getImpressions 
 ()} 
 ` 
 ); 
 } 

Get responsive display ads in an ad group

 function 
  
 getResponsiveDisplayAdIteratorInAdGroup 
 ( 
 adGroupName 
 ) 
  
 { 
  
 const 
  
 adGroupIterator 
  
 = 
  
 AdsApp 
 . 
 adGroups 
 () 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group 
 . 
 name 
  
 = 
  
 "${adGroupName}" 
 ` 
 ) 
  
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 adGroupIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 No 
  
 ad 
  
 group 
  
 found 
  
 with 
  
 name 
 : 
  
 $ 
 { 
 adGroupName 
 } 
 ` 
 ); 
  
 } 
  
 const 
  
 adGroup 
  
 = 
  
 adGroupIterator 
 . 
 next 
 (); 
  
 const 
  
 responsiveDisplayAdsIterator 
  
 = 
  
 adGroup 
 . 
 ads 
 () 
  
 . 
 withCondition 
 ( 
 ` 
 ad_group_ad 
 . 
 ad 
 . 
 type 
  
 IN 
  
 ( 
 "RESPONSIVE_DISPLAY_AD" 
 , 
  
 "LEGACY_RESPONSIVE_DISPLAY_AD" 
 ) 
 ` 
 ) 
  
 . 
 get 
 (); 
  
 if 
  
 ( 
 ! 
 responsiveDisplayAdsIterator 
 . 
 hasNext 
 ()) 
  
 { 
  
 throw 
  
 new 
  
 Error 
 ( 
 ` 
 No 
  
 Responsive 
  
 Display 
  
 ads 
  
 found 
  
 in 
  
 ad 
  
 group 
 : 
  
 "${adGroupName}" 
 ` 
 ); 
  
 } 
  
 return 
  
 responsiveDisplayAdsIterator 
 ; 
 } 
Create a Mobile Website
View Site in Mobile | Classic
Share by: