以下部分显示了针对市场活动执行各种操作的脚本示例。
获取所有市场活动
若要获取帐户中的所有市场活动,请先调用 AdsApp 对象的 campaigns 方法来获取 选择器。 然后,调用选择器的 get 方法获取用于循环访问市场活动列表的迭代 器 。 由于该示例未指定任何筛选器,选择器将返回帐户中的所有市场活动。 若要确定迭代器中的市场活动数,请调用迭代器的 方法 totalNumEntities 。
function main() {
// Gets all campaigns in the account.
var iterator = AdsApp.campaigns().get();
// Iterates through the list of campaigns and logs
// each campaign's name.
while (iterator.hasNext()) {
var campaign = iterator.next();
}
}
按名称获取市场活动
若要按名称获取市场活动,请首先调用 AdsApp 对象的 campaigns 方法来获取 选择器。 选择器包含许多用于筛选市场活动列表的筛选方法。
withCondition使用 方法筛选市场活动的特定市场活动名称。 请注意,操作数和运算符区分大小写。
接下来,调用选择器的 get 方法以获取 迭代器。 市场活动名称是唯一的,因此仅返回一个(如果存在)。
function main() {
var campaignName = 'CAMPAIGN NAME GOES HERE';
var iterator = AdsApp.campaigns()
.withCondition(`Name = '${campaignName}'`)
.get();
while (iterator.hasNext()) {
var campaign = iterator.next();
}
}
按 ID 获取市场活动
如果有权访问市场活动 ID,请改用它。 使用 ID 获取实体可提供更好的性能。 使用 方法,而不是使用withConditionwithIds筛选器方法。 例如,withIds(['12345'])。
function main() {
var campaignId = '12345';
var iterator = AdsApp.campaigns()
.withIds([campaignId])
.get();
while (iterator.hasNext()) {
var campaign = iterator.next();
}
}
获取市场活动的性能数据
若要获取市场活动的性能指标,请调用市场活动的 getStats 方法。 获取市场活动时,需要指定所需指标数据的日期范围。 可以使用预定义文本(如 LAST_MONTH 或 TODAY)或开始日期和结束日期指定日期范围。 若要指定日期范围,请在选择市场活动时使用方法之 forDateRange 一 (请参阅 CampaignSelector) 。
有关可以访问的指标列表,请参阅 Stats 对象。
function main() {
var campaignId = '12345';
// Get the campaign. You need to specify the date range of the
// performance data you want to get.
var iterator = AdsApp.campaigns()
.withIds([campaignId])
.forDateRange('LAST_WEEK')
.get();
// If the campaign is found, log some metrics.
while (iterator.hasNext()) {
var campaign = iterator.next();
var metrics = campaign.getStats(); // Gets the performance metrics.
}
}
暂停市场活动
若要暂停市场活动,请调用市场活动的 pause 方法。 若要再次启用它,请调用市场活动的 enable 方法。 若要确定市场活动的状态,请调用市场活动的 isEnabled、 isPaused和 isRemoved 方法。
function main() {
var campaignId = '12345';
var iterator = AdsApp.campaigns()
.withIds([campaignId])
.get();
// If the campaign is found, pause it.
while (iterator.hasNext()) {
var campaign = iterator.next();
campaign.pause();
}
}