標籤

擷取使用者帳戶中的所有標籤

function getAllLabels() {
  const labelIterator = AdsApp.labels().get();
  console.log(`Total labels found: ${labelIterator.totalNumEntities()}`);
  return labelIterator;
}

依名稱擷取標籤

function getLabelByName(name) {
  const labelIterator = AdsApp.labels()
      .withCondition(`label.name = "${name}"`)
      .get();
  if (labelIterator.hasNext()) {
    const label = labelIterator.next();
    console.log(`Name: ${label.getName()}`);
    console.log(`Description: ${label.getDescription()}`);
    console.log(`Color: ${label.getColor()}`);
    console.log(`Number of campaigns: ${label.campaigns().get().totalNumEntities()}`);
    console.log(`Number of ad groups: ${label.adGroups().get().totalNumEntities()}`);
    console.log(`Number of ads: ${label.ads().get().totalNumEntities()}`);
    console.log(`Number of keywords: ${label.keywords().get().totalNumEntities()}`);
    return label;
  }
  return null;
}

將標籤套用至廣告活動

function applyLabel(labelName, campaignName) {
  // Retrieve a campaign, and apply a label to it. Applying labels to other
  // object types is similar.
  const campaignIterator = AdsApp.campaigns()
      .withCondition(`campaign.name = "${campaignName}"`)
      .get();
  if (campaignIterator.hasNext()) {
    const campaign = campaignIterator.next();
    campaign.applyLabel(labelName);
  }
}

從廣告活動中移除標籤

function removeLabel(labelName, campaignName) {
   // Removing labels from other object types is similar.
   const campaignIterator = AdsApp.campaigns()
       .withCondition(`campaign.name = "${campaignName}"`)
       .get();
  if (campaignIterator.hasNext()) {
    const campaign = campaignIterator.next();
    campaign.removeLabel(labelName);
  }
}

從使用者帳戶中刪除標籤

function deleteLabel(labelName) {
  const labelIterator = AdsApp.labels()
      .withCondition(`label.name = "${labelName}"`)
      .get();
  if (labelIterator.hasNext()) {
    const label = labelIterator.next();
    label.remove();
  }
}