Ads API .NET library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
Google.Api.Ads.AdWords.v201809.ITrialService Interface Reference

TrialService manages the life cycle of campaign trials. It is used to create new trials from drafts, modify trial properties, promote changes in a trial back to its base campaign, and to archive a trial. More...

Inheritance diagram for Google.Api.Ads.AdWords.v201809.ITrialService:
Google.Api.Ads.AdWords.v201809.TrialServiceInterface Google.Api.Ads.AdWords.v201809.TrialService

Public Member Functions

Google.Api.Ads.AdWords.v201809.TrialReturnValue mutate (Google.Api.Ads.AdWords.v201809.TrialOperation[] operations)
< Google.Api.Ads.AdWords.v201809.TrialReturnValue
mutateAsync (Google.Api.Ads.AdWords.v201809.TrialOperation[] operations)
- Public Member Functions inherited from Google.Api.Ads.AdWords.v201809.TrialServiceInterface
Google.Api.Ads.AdWords.v201809.TrialPage get (Google.Api.Ads.AdWords.v201809.Selector selector)
< Google.Api.Ads.AdWords.v201809.TrialPage
getAsync (Google.Api.Ads.AdWords.v201809.Selector selector)
Wrappers.TrialService.mutateResponse mutate (Wrappers.TrialService.mutateRequest request)
< Wrappers.TrialService.mutateResponse
mutateAsync (Wrappers.TrialService.mutateRequest request)
Google.Api.Ads.AdWords.v201809.TrialPage query ([System.ServiceModel.MessageParameterAttribute(Name="query")] string query1)
< Google.Api.Ads.AdWords.v201809.TrialPage
queryAsync (string query)

Detailed Description

TrialService manages the life cycle of campaign trials. It is used to create new trials from drafts, modify trial properties, promote changes in a trial back to its base campaign, and to archive a trial.

A trial is an experiment, running two variants (trial arms) - the base campaign and the trial - at the same time, directing a fixed share of traffic to each trial arm. A trial is created from a draft of the base campaign and will be a snapshot of changes in the draft at the time of creation.


  • A campaign cannot have running/scheduled "AdWords Campaign Experiments" (ACE) and running/scheduled trials at the same time. Trial creation will fail, if the base campaign has a running/scheduled ACE experiment.
  • Trial names must be unique across all of the customer's non-deleted trial and campaign names.
  • When creating a trial, [startDate, endDate] cannot be in the past or overlap with any other running/scheduled trial, must be within the base campaign's [startDate, endDate] and endDate must be later than startDate.
  • A future startDate/endDate can be updated to a different future startDate/endDate as long as the constraints on [startDate, endDate] are not violated.
  • There is at most one trial running and at most one trial scheduled for the future at a time, per base campaign.
  • The base campaign's budget cannot be shared with any other campaign. Trial creation will fail if the base campaign's budget is shared with another campaign.

Life cycle

A trial's status reflects the state of the trial within its life cycle. Some status transitions are performed explicitly by sending a SET operation, while other status transitions occur asynchronously without a client operation.

When a trial is first ADDed, its status is CREATING. The trial will be created asynchronously, and once it is fully created, its status will change to ACTIVE.

If the asynchronous creation of the trial fails, its status will change to CREATION_FAILED.

To promote changes in an ACTIVE trial back to the base campaign, set the trial status to PROMOTING. The promotion itself will occur asynchronously. If the promotion operation fails after some of the base campaign has already been updated, the status will change to PROMOTE_FAILED.

To graduate an ACTIVE trial, which will allow its associated campaign to act independently of the trial and free it of restrictions from the trial, set the status to GRADUATED and provide a new budgetId for the campaign to use (since it can no longer share the base campaign's budget).

Any trial that is not CREATING or PROMOTING can be archived by setting the status to the value of the same name.

Member Function Documentation

Google.Api.Ads.AdWords.v201809.TrialReturnValue Google.Api.Ads.AdWords.v201809.ITrialService.mutate ( Google.Api.Ads.AdWords.v201809.TrialOperation[]  operations)
System.Threading.Tasks.Task<Google.Api.Ads.AdWords.v201809.TrialReturnValue> Google.Api.Ads.AdWords.v201809.ITrialService.mutateAsync ( Google.Api.Ads.AdWords.v201809.TrialOperation[]  operations)

The documentation for this interface was generated from the following file: