以下部分展示了对 共享预算执行各种操作的脚本示例。
添加共享预算
若要添加共享预算,必须使用 Microsoft Advertising Web 应用程序。 有关详情,请参阅如何实现在多个广告系列之间共享预算?
将市场活动与共享预算关联
若要将市场活动与共享预算相关联,必须使用 Microsoft Advertising Web 应用程序。 有关详情,请参阅如何实现在多个广告系列之间共享预算?
获取所有共享预算
要获取帐户中的所有共享预算,请首先调用 AdsApp 对象的方法 budgets 来获取 选择器。 然后,调用选择器的方法 get 以获取用于循环访问共享预算列表的 迭代器 。 由于该示例未指定任何筛选器,因此选择器会返回账户中的所有共享预算。 要确定迭代器中的共享预算数量,请调用迭代器的方法 totalNumEntities 。
注意
共享预算不包括未共享 (单个广告系列) 预算。
function main() {
// Gets all shared budgets in the account.
var iterator = AdsApp.budgets().get();
// Iterates through the list of shared budgets and logs
// each budgets's name and amount.
while (iterator.hasNext()) {
var budget = iterator.next();
}
}
按名称获取共享预算
若要按名称获取共享预算,请首先调用 AdsApp 对象的方法 budgets 来获取 选择器。 选择器包含许多用于筛选预算列表的筛选方法。 使用该 withCondition 方法按名称筛选预算。 例如,若要筛选特定名称的列表,请使用: withCondition("BudgetName = '<budgetnamegoeshere>'")。 若要按部分名称筛选列表,请使用: withCondition("BudgetName CONTAINS_IGNORE_CASE '<partialnamegoeshere>'")。 请注意,操作数和运算符区分大小写。
接下来,调用选择器的方法 get 以获取 迭代器。
function main() {
// Partial name of the shared budget to get.
var budgetName = 'PARTIAL NAME GOES HERE';
// Get the budgets that contain the partial name.
var iterator = AdsApp.budgets()
.withCondition(`BudgetName CONTAINS_IGNORE_CASE '${budgetName}'`)
.get();
// Iterates through the list of shared budgets and logs
// each budget's name and amount.
while (iterator.hasNext()) {
var budget = iterator.next();
}
}
按 ID 获取共享预算
如果有权访问共享预算的 ID,请改用它。 使用 ID 获取实体可提供更好的性能。 不要使用 withCondition 筛选方法,而是使用该 withIds 方法。 例如,withIds(['12345'])。
function main() {
var sharedBudgetId = '12345';
var iterator = AdsApp.budgets()
.withIds([sharedBudgetId])
.get();
while (iterator.hasNext()) {
var budget = iterator.next();
}
}
获取共享预算的所有市场活动
要获取共享预算的所有广告系列,请调用 budget 的 campaigns 方法。 只能从从 BudgetSelector 获取的 Budget 对象调用此方法;如果预算源是市场活动的 getBudget 方法,则无法调用它。
function main() {
var sharedBudgetId = '12345';
var budgets = AdsApp.budgets()
.withIds([sharedBudgetId])
.get();
while (budgets.hasNext()) {
var budget = budgets.next();
var campaigns = budget.campaigns().get();
while (campaigns.hasNext()) {
var campaign = campaigns.next();
}
}
}
获取共享预算的性能数据
要获取共享预算的绩效指标,请调用预算的 getStats 方法。 获取共享预算列表时,需要指定所需指标数据的日期范围。 可以使用预定义的文本(如 LAST_MONTH 或 TODAY)或开始日期和结束日期指定日期范围。 若要指定日期范围,请在选择预算时使用其中 forDateRange 一种方法 (参阅 BudgetSelector) 。
有关可以访问的指标列表,请参阅 Stats 对象。 指标是共享预算的所有广告系列的聚合。
function main() {
var sharedBudgetId = '12345';
// Get the shared budget. You need to specify the date range of the
// performance data you want to get.
var budgets = AdsApp.budgets()
.forDateRange('LAST_WEEK')
.withIds([sharedBudgetId])
.get();
// If the budget is found, log some metrics.
while (budgets.hasNext()) {
var budget = budgets.next();
var metrics = budget.getStats(); // Gets the performance metrics.
}
}