AI-generated Key Takeaways
-
This documentation provides Google Ads scripts for managing negative keywords at both the campaign and ad group levels.
-
It includes functions to add negative keywords and retrieve existing negative keywords for campaigns or ad groups using their respective names.
-
When searching for ad groups by name, if multiple ad groups share the same name, the script will use the first one it encounters and issue a warning.
-
These functions are built upon the Google Ads Scripts API, utilizing methods like
createNegativeKeyword
and iterators to interact with campaign and ad group entities. -
Error handling is incorporated to notify users if the specified campaign or ad group is not found.
Add negative keyword to a campaign
function addNegativeKeywordToCampaign(keyword, campaignName) { const campaignIterator = AdsApp.campaigns() .withCondition(`campaign.name = "${campaignName}"`) .get(); if (campaignIterator.hasNext()) { const campaign = campaignIterator.next(); campaign.createNegativeKeyword(keyword); } else { throw new Error(`Cannot find campaign with the name '${campaignName}'`); } }
Get negative keywords in a campaign
function getNegativeKeywordsForCampaign(campaignName) { const campaignIterator = AdsApp.campaigns() .withCondition(`campaign.name = "${campaignName}"`) .get(); if (campaignIterator.hasNext()) { const campaign = campaignIterator.next(); const negativeKeywordIterator = campaign.negativeKeywords().get(); console.log(`Found ${negativeKeywordIterator.totalNumEntities()} negative keywords.`); return negativeKeywordIterator; } else { throw new Error(`Cannot find campaign with the name '${campaignName}'`); } }
Add a negative keyword to an ad group
function addNegativeKeywordToAdGroup(keyword, adGroupName) { const adGroupIterator = AdsApp.adGroups() .withCondition(`ad_group.name = "${adGroupName}"`) .get(); if (!adGroupIterator.hasNext()) { throw new Error(`Cannot find ad group with the name '${adGroupName}'`); } if (adGroupIterator.totalNumEntities() > 1) { console.warn(`Found more than one ad group named '${adGroupName}', using the first one.`); } const adGroup = adGroupIterator.next(); adGroup.createNegativeKeyword(keyword); }
Get negative keywords in an ad group
function getNegativeKeywordsForAdGroup(adGroupName) { const adGroupIterator = AdsApp.adGroups() .withCondition(`ad_group.name = "${adGroupName}"`) .get(); if (!adGroupIterator.hasNext()) { throw new Error(`Cannot find ad group with the name '${adGroupName}'`); } if (adGroupIterator.totalNumEntities() > 1) { console.warn(`Found more than one ad group named '${adGroupName}', using the first one.`); } const adGroup = adGroupIterator.next(); const negativeKeywordIterator = adGroup.negativeKeywords().get(); if (negativeKeywordIterator.hasNext()) { const negativeKeyword = negativeKeywordIterator.next(); console.log(`Found ${negativeKeywordIterator.totalNumEntities()} negative keywords.`); return negativeKeywordIterator; } }