Negative Keyword Lists

Get a negative keyword list by name

function getNegativeKeywordList(name) {   const negativeKeywordLists = AdsApp.negativeKeywordLists()       .withCondition(`shared_set.name = "${name}"`)       .get();   if (!negativeKeywordLists.hasNext()) {     throw new Error(`Cannot find negative keyword list with name "${name}"`);   }    return negativeKeywordLists.next(); }

Construct a new negative keyword list and add it to a campaign

function addNegativeKeywordListToCampaign(campaignName, negativeKeywordListName) {   const negativeKeywordLists = AdsApp.negativeKeywordLists()       .withCondition(`shared_set.name = "${negativeKeywordListName}"`)       .get();   if (!negativeKeywordLists.hasNext()) {     throw new Error(`Cannot find negative keyword list with name "${negativeKeywordListName}"`);   }   const negativeKeywordList = negativeKeywordLists.next();    const campaigns = AdsApp.campaigns()       .withCondition(`campaign.name = "${campaignName}"`)       .get();   if (!campaigns.hasNext()) {     throw new Error(`Cannot find campaign with the name "${campaignName}"`);   }   const campaign = campaigns.next();   campaign.addNegativeKeywordList(negativeKeywordList); }

Remove all the shared negative keywords in an negative keyword list

function removeAllNegativeKeywordsFromList(name) {   const negativeKeywordLists = AdsApp.negativeKeywordLists()       .withCondition(`shared_set.name = "${name}"`)       .get();   if (!negativeKeywordLists.hasNext()) {     throw new Error(`Cannot find negative keyword list with name "${name}"`);   }   const negativeKeywordList = negativeKeywordLists.next();    for (const negativeKeyword of negativeKeywordList.negativeKeywords()) {     negativeKeyword.remove();   } }