Obtener una lista de palabras clave negativas por nombre
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();
}
Construir una nueva lista de palabras clave negativas y agregarla a una campaña
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);
}
Quitar todas las palabras clave negativas compartidas en una lista de palabras clave negativas
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();
}
}