除外キーワード リスト

除外キーワード リストを名前で取得する

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();
}

新しい除外キーワード リストを作成してキャンペーンに追加します

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);
}

除外キーワード リストから共有の除外キーワードをすべて削除します

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();
  }
}