Builder for
Experiment objects.
Example usage:
// Create an experiment builder.
var experimentBuilder = AdsApp.drafts().get().next().newExperimentBuilder();
// Create the experiment. Note that startBuilding() returns nothing.
experimentBuilder
.withName("Sample Experiment") // required
.withTrafficSplitPercent(50) // required
.startBuilding();
// Head to the "All experiments" tab of the UI to track the new experiment's
// creation.
Methods:
startBuilding()
Starts creating an
Experiment. Returns
nothing, unlike calls to Builder.build(). Navigate to the "All experiments"
tab of the UI to track the new experiment's creation.
Returns nothing.
withEndDate(date)
Sets the experiment's end date from either an object containing year,
month, and day fields, or an 8-digit string in
YYYYMMDD
format. This field is optional and will default to the end date of the base
campaign if not specified.
For instance, experimentBuilder.withEndDate("20180503");
is
equivalent to experimentBuilder.withEndDate({year: 2018, month: 5,
day: 3});
.
The change will fail and report an error if:
- the given date is invalid (e.g.,
{year: 2018, month: 5, day: 55}
),
- the given date is after the base campaign's end date,
- it's a date in the past, or
- it's a date after the latest allowed end date of December 30, 2037.
Arguments:
Name | Type | Description |
date |
Object |
The new experiment end date. |
Return values:
withName(name)
Sets the name of the new experiment to the specified value. Required before
building.
Arguments:
Name | Type | Description |
name |
String |
Experiment name. |
Return values:
withStartDate(date)
Sets the experiment's start date from either an object containing year,
month, and day fields, or an 8-digit string in
YYYYMMDD
format. This field is optional and will default to the start date of the
base campaign if not specified.
For instance, experimentBuilder.withStartDate("20180503");
is equivalent to experimentBuilder.withStartDate({year: 2018, month:
5, day: 3});
.
The change will fail and report an error if:
- the given date is invalid (e.g.,
{year: 2018, month: 5, day: 55}
),
- the given date is after the experiment's end date,
- the given date is after the base campaign's end date,
- it's a date in the past, or
- it's a date after the latest allowed end date of December 30, 2037.
Arguments:
Name | Type | Description |
date |
Object |
Experiment start date. |
Return values:
withTrafficSplitPercent(trafficSplitPercent)
Sets the traffic split percent (percent of traffic directed to ads from the
experiment campaign) of the new experiment to the specified value. Must be
an integer between 0 and 100, not inclusive. Required before building.
Arguments:
Name | Type | Description |
trafficSplitPercent |
int |
Experiment traffic split percent. |
Return values:
withTrafficSplitType(trafficSplitType)
Sets the traffic split type (cookie-based or search-based) of the new
experiment. Only supported on Search campaign experiments, but also
required for Search campaign experiments.
Arguments:
Name | Type | Description |
trafficSplitType |
String |
Search campaign experiment traffic split type. |
Return values: