AI-generated Key Takeaways
-
Learn how to add a website placement to an existing ad group using the
addPlacementToAdGroupfunction, specifying the ad group name, URL, and an optional CPC bid. -
Discover how to retrieve all topic targeting for a specific ad group within a campaign using the
getAllTopicsfunction. -
Understand how to log performance statistics for all audience targeting within an ad group, including clicks, impressions, and cost, using the
logAudienceStatsfunction.
Add a placement to an existing ad group
function addPlacementToAdGroup ( adGroupName , url , cpc ) { const adGroups = AdsApp . adGroups () . withCondition ( ` ad_group . name = '${adGroupName}' ` ) . get (); if ( ! adGroups . hasNext ()) { throw new Error ( ` No ad group with the name '${adGroupName}' was found . ` ); } const adGroup = adGroups . next (); if ( adGroups . totalNumEntities () > 1 ) { console . warn ( ` Found $ { adGroups . totalNumEntities ()} ad groups with the ` + ` name '${adGroupName}' . Adding placement to the ad group in campaign ` + ` '${adGroup.getCampaign().getName()}' . ` ); } // Other display criteria can be built in a similar manner using the // corresponding builder method in the AdsApp . CampaignDisplay or // AdsApp . AdGroupDisplay class . const placementBuilder = adGroup . display () . newPlacementBuilder () . withUrl ( url ); // required if ( cpc ) { placementBuilder . withCpc ( cpc ); // optional } const operation = placementBuilder . build (); if ( operation . getStatus () == 'SUCCESS' ) { const placement = operation . getResult (); console . log ( ` Placement with id = $ { placement . getId ()} and url = $ { placement . getUrl ()} was created . ` ); } else { console . warn ( ` Failed to create placement . Errors = $ { operation . getErrors () . join ( ', ' )} ` ); } }
Retrieve all topics in an existing ad group
function getAllTopics(campaignName, adGroupName) { return AdsApp.display() .topics() .withCondition(`campaign.name = ' ${ campaignName } '`) .withCondition(`ad_group.name = ' ${ adGroupName } '`); }
Log stats for all audiences in an existing ad group
function logAudienceStats ( campaignName , adGroupName , dateRange = 'LAST_MONTH' ) { // Other display criteria can be retrieved in a similar manner using // the corresponding selector methods in the AdsApp . Display , // AdsApp . CampaignDisplay or AdsApp . AdGroupDisplay class . const audienceIterator = AdsApp . display () . audiences () . withCondition ( ` campaign . name = '${campaignName}' ` ) . withCondition ( ` ad_group . name = '${adGroupName}' ` ) . get (); console . log ( 'ID, Audience ID, Clicks, Impressions, Cost' ); for ( const audience of audienceIterator ) { const stats = audience . getStatsFor ( dateRange ); // User List IDs ( List IDs ) are available on the details page of // a User List ( found under the Audiences section of the Shared // Library ) console . log ( ` $ { audience . getId () . toFixed ( 0 )}, $ { audience . getAudienceId ()}, ` + ` $ { stats . getClicks ()}, $ { stats . getImpressions ()}, $ { stats . getCost ()} ` ); } }

