Provides access to this campaign's video targeting criteria.
addAdSchedule(adSchedule)
Creates an ad schedule criterion from an ad schedule object. Once created, the campaign will
start showing ads during the specified time.
When called with one argument, addAdSchedule supports two kinds of input:
Existing AdSchedule objects, perhaps from another campaign:
var campaigns = AdsApp.videoCampaigns().get();
var campaign1 = campaigns.next();
var campaign2 = campaigns.next();
var schedule = campaign1.targeting().adSchedules().get().next();
campaign2.addAdSchedule(schedule);
Plain JavaScript objects describing an ad schedule. For instance, this will create an ad
schedule covering Saturday mornings:
This will look at the following properties of the given object:
dayOfWeek: Required. Must be one of "MONDAY",
"TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY",
"SATURDAY", or "SUNDAY".
startHour and startMinute: Required. The starting
time of this segment of the ad schedule. startHour must be an integer
between 0 and 23, and startMinute must be either 0,
15, 30, or 45. For instance, a startHour of 18 and a startMinute of 30 would result in an ad schedule starting
at 6:30PM. Acceptable starting times range from 00:00 to 23:45.
endHour and endMinute: Required. The ending time
of this segment of the ad schedule. endHour must be an integer between
0 and 24, and endMinute must be either 0, 15, 30, or 45. For instance, a endHour of 18 and a
endMinute of 30 would result in an ad schedule ending at 6:30PM.
Acceptable ending times range from 00:15 to 24:00.
bidModifier: Optional. The bid modifier for this segment
of the ad schedule.
One thing to keep in mind is that, by default, campaigns have no ad schedule criteria and
hence serve ads at all times. Adding the first ad schedule to a campaign will cause ads to be
shown during that time only.
There is a limit of 6 ad schedules for each day of the week — for instance, splitting up
each day into 6 4-hour-long periods is supported, but splitting up each day into 24 1-hour-long
periods is not.
Creates an ad schedule criterion. Once created, the campaign will start showing ads during the
specified time.
For instance, this will create an ad schedule covering Saturday mornings:
var campaign = AdsApp.videoCampaigns().get().next();
campaign.addAdSchedule("SATURDAY", 7, 0, 11, 0);
This will create the same schedule, but with a bid modifier of 1.1:
var campaign = AdsApp.videoCampaigns().get().next();
campaign.addAdSchedule("SATURDAY", 7, 0, 11, 0, 1.1);
One thing to keep in mind is that, by default, campaigns have no ad schedule criteria and
hence serve ads at all times. Adding the first ad schedule to a campaign will cause ads to be
shown during that time only.
There is a limit of 6 ad schedules for each day of the week — for instance, splitting up
each day into 6 4-hour-long periods is supported, but splitting up each day into 24 1-hour-long
periods is not.
Arguments:
Name
Type
Description
dayOfWeek
String
The day of week. Must be one of "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", or "SUNDAY".
startHour
int
The start hour. Must be an integer between 0 and 23.
Acceptable starting times range from 00:00 to 23:45.
startMinute
int
The start minute. Must be either 0, 15, 30, or
45. Acceptable starting times range from 00:00 to 23:45.
endHour
int
The end hour. Must be an integer between 0 and 24. Acceptable
ending times range from 00:15 to 24:00.
endMinute
int
The end minute. Must be either 0, 15, 30, or 45. Acceptable ending times range from 00:15 to 24:00.
bidModifier
double
Optional. The bid modifier to use for the newly created ad
schedule.
Creates a language target in this campaign from language ID.
For a list of languages and their corresponding codes, see the API documentation on
languages. For instance, this will create a language target for German:
var campaign = AdsApp.videoCampaigns().get().next();
campaign.addLanguage(1001);
Creates a language target in this campaign from an existing language object.
The existing Language objects can be from another campaign:
var campaigns = AdsApp.videoCampaigns().get();
var campaign1 = campaigns.next();
var campaign2 = campaigns.next();
var language = campaign1.targeting().languages().get().next();
campaign2.addLanguage(language);
Creates a location target in this campaign from a location ID. Once created, the campaign will
start showing ads to the location with the given location ID.
Creates a location target in this campaign from a location. Once created, the campaign will
start showing ads to the location with the given location ID.
You must specify an existing TargetedLocation object, perhaps from another campaign:
var campaigns = AdsApp.campaigns().get();
var campaign1 = campaigns.next();
var campaign2 = campaigns.next();
var location = campaign1.targeting().targetedLocations().get().next();
campaign2.addLocation(location);
Creates a location target in this campaign from a location JSON. Once created, the campaign
will start showing ads to the location with the given location ID.
You must specify a plain JavaScript object describing a location. For instance, this would
create a location target for Tennessee:
var campaign = AdsApp.campaigns().get().next();
campaign.addLocation({
id: 21175,
bidModifier: 1.2,
});
This will look at the following properties of the given object:
id: Required. The ID of the location to target. For a list of
locations and their corresponding IDs, see the API documentation on geotargeting.
bidModifier: Optional. The bid modifier for this location.
Creates a location target in this campaign from a location ID and bid modifier. Once created,
the campaign will start showing ads to the location with the given location ID.
For instance, this will create a location target for Tennessee with a bid modifier of 1.15:
var campaign = AdsApp.campaigns().get().next();
campaign.addLocation(21175, 1.15);
The negative keyword list to be added to this campaign.
addProximity(proximity)
Creates a proximity target in this campaign from a proximity object. Once created, the campaign
will start showing ads to geographical points within the specified radius of the specified
central point.
When called with one argument, addProximity supports two kinds of input:
var campaigns = AdsApp.videoCampaigns().get();
var campaign1 = campaigns.next();
var campaign2 = campaigns.next();
var proximity = campaign1.targeting().targetedProximities().get().next();
campaign2.addProximity(proximity);
Plain JavaScript objects describing a proximity. For instance, this would create a
proximity targeting 20km around Google headquarters:
This will look at the following properties of the given object:
latitude and longitude: Required. The central
geographic point of the proximity to target.
radius and radiusUnits: Required. The radius
around the central point to target. radiusUnits must be either "MILES" or "KILOMETERS".
bidModifier: Optional. The bid modifier for this
proximity.
address: Optional. The address associated with the central
geographical point.
If present, this is expected to be an object, which contains any of streetAddress, streetAddress2, cityName, provinceName,
provinceCode, postalCode, and countryCode as properties
with string values. This corresponds to the Address objects returned by
existing proximity targets.
There is no validation to check that the address actually belongs to the given
latitude and longitude. It has no functionality except to change what shows up in
the Campaign Management interface.
Creates a proximity target in this campaign. Once created, the campaign will start showing ads
to geographical points within the specified radius of the specified central point.
For instance, this will create a proximity targeting 20km around Google headquarters:
var campaign = AdsApp.videoCampaigns().get().next();
campaign.addProximity(37.423021, -122.083739, 20, "KILOMETERS");
Similarly, to create the same proximity target with a bid modifier and address:
The units of the radius, either "MILES" or "KILOMETERS".
optArgs
Object
Optional. Either a number, which will be interpreted as the
desired bid modifier for the proximity, or an object containing extra additional arguments.
For TargetedProximities, there are two supported optional arguments:
bidModifier: The bid modifier for this proximity.
address: The address associated with the central geographical point.
If present, this is expected to be an object, which contains any of streetAddress, streetAddress2, cityName, provinceName,
provinceCode, postalCode, and countryCode as properties with
string values. This corresponds to the Address objects returned by existing
proximity targets.
There is no validation to check that the address actually belongs to the given
latitude and longitude. It has no functionality except to change what shows up in the
Campaign Management interface.
Applies a label to the video campaign. name of the label is case-sensitive.
Operation will fail if the label with the specified name does not already exist in the account.
Note that the video campaign cannot not have more than 50 labels.
Returns nothing.
Arguments:
Name
Type
Description
name
String
Name of the label to apply.
bidding()
Provides access to this campaign's bidding fields.
var campaigns = AdsApp.videoCampaigns().get();
var campaign1 = campaigns.next();
var campaign2 = campaigns.next();
var contentLabel = campaign1.targeting().excludedContentLabels().get().next();
campaign2.excludeContentLabel(contentLabel);
Creates a location exclusion in this campaign. Once created, the campaign will not show ads to
the location with the given location ID.
You must specify an existing ExcludedLocation object, perhaps from another campaign:
var campaigns = AdsApp.campaigns().get();
var campaign1 = campaigns.next();
var campaign2 = campaigns.next();
var location = campaign1.targeting().excludedLocations().get().next();
campaign2.excludeLocation(location);
Returns stats for the specified custom date range. Both parameters can be either an object
containing year, month, and day fields, or an 8-digit string in YYYYMMDD form. For
instance, March 24th, 2013 is represented as either {year: 2013, month: 3, day:
24} or "20130324". The date range is inclusive on both ends, so forDateRange("20130324", "20130324") defines a range of a single day.
Arguments:
Name
Type
Description
dateFrom
Object
Start date of the date range. Must be either a string in YYYYMMDD form,
or an object with year, month and day properties.
dateTo
Object
End date of the date range. Must be either a string in YYYYMMDD form, or
an object with year, month and day properties.
The excluded placement list to be removed from this campaign.
removeLabel(name)
Removes a label from the video campaign. name of the label is case-sensitive.
Operation will fail if the label with the specified name does not already exist in the account.
Returns nothing.
Arguments:
Name
Type
Description
name
String
Name of the label.
removeNegativeKeywordList(negativeKeywordList)
Removes a negative keyword list from this campaign.
The negative keyword list to be removed from this campaign.
setAdRotationType(adRotationType)
Sets the ad rotation type of the campaign.
For instance, campaign.setAdRotationType("OPTIMIZE"); instructs Google Ads to
optimize ad serving based on the campaign's VTR. For more information, see Choose an ad delivery method help
article.
Returns nothing.
Arguments:
Name
Type
Description
adRotationType
String
The new ad rotation type of the campaign. Must be one of "OPTIMIZE", "CONVERSION_OPTIMIZE", or "ROTATE".
setEndDate(date)
Sets the campaign's end date from either an object containing year, month, and day fields, or
an 8-digit string in YYYYMMDD format.
For instance, campaign.setEndDate("20130503"); is equivalent to campaign.setEndDate({year: 2013, month: 5, day: 3});.
The change will fail and report an error if:
the given date is invalid (e.g., {year: 2013, month: 5, day: 55}),
it's a date in the past, or
it's a date after the latest allowed end date of December 30, 2037.
Returns nothing.
Arguments:
Name
Type
Description
date
Object
The new campaign end date.
setInventoryType(inventoryType)
Sets the inventory type of the campaign. The original inventory type will be overridden by the
new setting.
For instance, campaign.setInventoryType("EXPANDED_INVENTORY"); instructs Google Ads
to show ads on all videos that meet our standards for monetization. For more information, see
About content exclusions for
Video campaigns help article.
Returns nothing.
Arguments:
Name
Type
Description
inventoryType
String
The new inventory type of the campaign. Must be one of "EXPANDED_INVENTORY", "STANDARD_INVENTORY", or "LIMITED_INVENTORY".
setName(name)
Sets the name of the campaign.
Returns nothing.
Arguments:
Name
Type
Description
name
String
The new name for the campaign.
setNetworks(networks)
Sets the network setting of the campaign. The original setting will be overridden by the new
setting.
Returns nothing.
Arguments:
Name
Type
Description
networks
String[]
An array of enabled network types. Possible network types: