AI-generated Key Takeaways
-
This script provides functions for managing account labels in Google Ads Manager, including creating, applying, and removing labels from accounts.
-
You can use it to select specific accounts based on label names or IDs for targeted management.
-
The script enables retrieving information about all existing account labels or specific labels by name or ID.
-
These functionalities streamline account organization and reporting within your Google Ads Manager hierarchy.
-
Provided examples demonstrate how to perform these tasks with simple, clear, and well-documented code snippets.
Create an account label
function createAccountLabels(labelName) { AdsManagerApp.createAccountLabel(labelName); console.log("Label with text = '%s' created.", labelName); }
Apply an account label to multiple accounts
function applyAccountLabels(accountId1, accountId2, labelName) { // You can modify this function to accept an array of IDs directly as well. const accountIds = [accountId1, accountId2]; const accounts = AdsManagerApp.accounts().withIds(accountIds).get(); for (const account of accounts) { account.applyLabel(labelName); console.log('Label with text = "%s" applied to customer id %s.', labelName, account.getCustomerId()); } }
Remove an account label from multiple accounts
function removeLabelFromAccounts(accountId1, accountId2, labelName) { const accountIds = [accountId1, accountId2]; var accounts = AdsManagerApp.accounts().withIds(accountIds).get(); for (const account of accounts) { account.removeLabel(labelName); console.log('Label with text = "%s" removed from customer id %s.', labelName, account.getCustomerId()); } }
Select an account by label name
function selectAccountsByLabelName(labelName) { const accountIterator = AdsManagerApp.accounts() .withCondition(`LabelNames CONTAINS '${labelName}'`) .get(); for (const account of accountIterator) { const accountName = account.getName() ? account.getName() : '--'; console.log('%s,%s,%s,%s', account.getCustomerId(), accountName, account.getTimeZone(), account.getCurrencyCode()); } }
Select an account by label ID
function selectAccountsByLabelId(labelId) { const label = AdsManagerApp.accountLabels().withIds([labelId]).get().next(); const accountIterator = label.accounts().get(); for (const account of accountIterator) { const accountName = account.getName() ? account.getName() : '--'; console.log('%s,%s,%s,%s', account.getCustomerId(), accountName, account.getTimeZone(), account.getCurrencyCode()); } }
Retrieve all account labels
function getAllAccountLabels() { const labelIterator = AdsManagerApp.accountLabels().get(); for (const label of labelIterator) { console.log('Label with id = %s and text = %s was found.', label.getId().toFixed(0), label.getName()); } }
Retrieve an account label by its name
function getLabelByName(labelName) { const labelIterator = AdsManagerApp.accountLabels() .withCondition(`label.name CONTAINS '${labelName}'`) .get(); for (const label of labelIterator) { console.log(`Label with id = ${label.getId().toFixed(0)} ` + `and text = ${label.getName()} was found.`); } }
Retrieve account labels by their IDs
function getLabelById(labelId) { const labelIterator = AdsManagerApp.accountLabels() .withIds([labelId]) .get(); for (const label of labelIterator) { console.log("Label with id = %s and text = '%s' was found.", label.getId().toFixed(0), label.getName()); } }