AI-generated Key Takeaways
- 
          CampaignCallout represents a callout added to a campaign as an ad callout extension. 
- 
          You can retrieve the campaign to which a CampaignCallout belongs using getBaseCampaign(),getCampaign(), orgetPerformanceMaxCampaign().
- 
          CampaignCallouts have methods to get and set their start and end dates, scheduling, and text. 
- 
          You can clear the start or end date of a CampaignCallout using clearStartDate()andclearEndDate().
- 
          Performance statistics for a CampaignCallout can be obtained for predefined or custom date ranges using getStatsFor().
Methods:
| Member | Type | Description | 
|---|---|---|
| clearEndDate() | void | Clears the campaign-level callout's end date. | 
| clearStartDate() | void | Clears the campaign-level callout's start date. | 
| getBaseCampaign() | AdsApp.Campaign | Returns the base campaign to which this campaign-level callout belongs. | 
| getCampaign() | AdsApp.Campaign | Returns the campaign to which this campaign-level callout belongs or nullif it does not belong to a search or display campaign. | 
| getEndDate() | AdsApp.GoogleAdsDate | Returns the end date of the campaign-level callout, or nullif no
end date is set. | 
| getEntityType() | String | Returns the type of this entity as a String, in this case,"CampaignCallout". | 
| getId() | String | Returns the ID of the campaign-level callout. | 
| getPerformanceMaxCampaign() | AdsApp.PerformanceMaxCampaign | Returns the performance max campaign to which this campaign-level callout
belongs or nullif it does not belong to a performance max
campaign. | 
| getResourceName() | String | Returns the resource name of the campaign-level callout. | 
| getSchedules() | AdsApp.ExtensionSchedule[] | Returns the scheduling of the campaign-level callout. | 
| getStartDate() | AdsApp.GoogleAdsDate | Returns the start date of the campaign-level callout, or nullif
no start date is set. | 
| getStatsFor(dateRange) | AdsApp.Stats | Returns stats for the specified date range. | 
| getStatsFor(dateFrom, dateTo) | AdsApp.Stats | Returns stats for the specified custom date range. | 
| getText() | String | Returns the text of the campaign-level callout. | 
| boolean | Returns trueif the campaign-level callout specifies mobile
device preference. | |
| setEndDate(date) | void | Sets the campaign-level callout's end date from either an object containing
year, month, and day fields, or an 8-digit string in YYYYMMDDformat. | 
| void | Sets the campaign-level callout's device preference. | |
| setSchedules(schedules) | void | Sets the campaign-level callout scheduling. | 
| setStartDate(date) | void | Sets the campaign-level callout's start date from either an object containing
year, month, and day fields, or an 8-digit string in YYYYMMDDformat. | 
| setText(text) | void | Sets the text of the campaign-level callout. | 
clearEndDate()
  Clears the campaign-level callout's end date.  Returns nothing.
clearStartDate()
  Clears the campaign-level callout's start date.  Returns nothing.
getBaseCampaign()
  Returns the base campaign to which this campaign-level callout belongs.  Return values:
| Type | Description | 
|---|---|
| AdsApp.Campaign | The base campaign to which this campaign-level callout belongs. | 
getCampaign()
  Returns the campaign to which this campaign-level callout belongs or
null if it does not belong to a search or display campaign.  Return values:
| Type | Description | 
|---|---|
| AdsApp.Campaign | The campaign to which this campaign-level callout belongs or nullif it does
not belong to a search or display campaign. | 
getEndDate()
  Returns the end date of the campaign-level callout, or null if no
end date is set.
For instance, if the end date of the campaign-level callout is May 3, 2013,
this would return the following object: {year: 2013, month: 5, day:
3}.  
Return values:
| Type | Description | 
|---|---|
| AdsApp.GoogleAdsDate | The campaign-level callout's end date, or nullif there's
    no end date. | 
getEntityType()
  Returns the type of this entity as a String, in this case,
"CampaignCallout".  Return values:
| Type | Description | 
|---|---|
| String | Type of this entity: "CampaignCallout". | 
getId()
  Returns the ID of the campaign-level callout.  Return values:
| Type | Description | 
|---|---|
| String | The ID of the campaign-level callout. | 
getPerformanceMaxCampaign()
  Returns the performance max campaign to which this campaign-level callout
belongs or null if it does not belong to a performance max
campaign.  Return values:
| Type | Description | 
|---|---|
| AdsApp.PerformanceMaxCampaign | The performance max campaign to which this campaign-level callout
    belongs or nullif it does not belong to a performance max campaign. | 
getResourceName()
  Returns the resource name of the campaign-level callout.  Return values:
| Type | Description | 
|---|---|
| String | The resource name of the campaign-level callout. | 
getSchedules()
  Returns the scheduling of the campaign-level callout.  Return values:
| Type | Description | 
|---|---|
| AdsApp.ExtensionSchedule[] | The scheduling of the campaign-level callout. | 
getStartDate()
  Returns the start date of the campaign-level callout, or null if
no start date is set.
For instance, if the start date of the campaign-level callout is May 3,
2013, this would return the following object: {year: 2013, month: 5,
day: 3}.  
Return values:
| Type | Description | 
|---|---|
| AdsApp.GoogleAdsDate | The campaign-level callout's start date, or nullif
    there's no start date. | 
getStatsFor(dateRange)
  Returns stats for the specified date range. Supported values:
TODAY, YESTERDAY, LAST_7_DAYS, THIS_WEEK_SUN_TODAY, LAST_WEEK,
LAST_14_DAYS, LAST_30_DAYS, LAST_BUSINESS_WEEK, LAST_WEEK_SUN_SAT,
THIS_MONTH, LAST_MONTH, ALL_TIME.
Example:
var stats = campaignCallout.getStatsFor("THIS_MONTH");
Arguments:
| Name | Type | Description | 
|---|---|---|
| dateRange | String | Date range for which the stats are requested. | 
Return values:
| Type | Description | 
|---|---|
| AdsApp.Stats | The stats for the specified date range. | 
getStatsFor(dateFrom, dateTo)
  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 YYYYMMDDform, or an object withyear,monthanddayproperties. | 
| dateTo | Object | End date of the date range. Must be either a string in YYYYMMDDform, or an object withyear,monthanddayproperties. | 
Return values:
| Type | Description | 
|---|---|
| AdsApp.Stats | The stats for the specified date range. | 
getText()
  Returns the text of the campaign-level callout.  Return values:
| Type | Description | 
|---|---|
| String | Text of the campaign-level callout. | 
isMobilePreferred()
  Returns true if the campaign-level callout specifies mobile
device preference.  
  Return values:
| Type | Description | 
|---|---|
| boolean | trueif the campaign-level callout specifies mobile
    device preference. | 
setEndDate(date)
  Sets the campaign-level callout's end date from either an object containing
year, month, and day fields, or an 8-digit string in YYYYMMDD
format.
For instance, campaignCallout.setEndDate("20130503"); is equivalent to campaignCallout.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}),
- the start date now comes after the end date, or
- it's a date in the past.
Returns nothing.
Arguments:
| Name | Type | Description | 
|---|---|---|
| date | Object | The new campaign-level callout end date. | 
setMobilePreferred(isMobilePreferred)
  Sets the campaign-level callout's device preference.  
  Returns nothing.
Arguments:
| Name | Type | Description | 
|---|---|---|
| isMobilePreferred | boolean | truesets the device preference to
    mobile.falseclears the device preference. | 
setSchedules(schedules)
  Sets the campaign-level callout scheduling. Scheduling of a campaign-level callout allows you to control the days of week and times of day during which
the campaign-level callout will show alongside your ads.
Passing in an empty array clears the scheduling field, causing the campaign-level callout to run at all times.
The following example sets the campaign-level callout to run on Mondays and Tuesday from 8:00 to 11:00.
var mondayMorning = { dayOfWeek: "MONDAY", startHour: 8, startMinute: 0, endHour: 11, endMinute: 0 }; var tuesdayMorning = { dayOfWeek: "TUESDAY", startHour: 8, startMinute: 0, endHour: 11, endMinute: 0 }; campaignCallout.setSchedules([mondayMorning, tuesdayMorning]);
Returns nothing.
Arguments:
| Name | Type | Description | 
|---|---|---|
| schedules | AdsApp.ExtensionSchedule[] | The new campaign-level callout schedules. | 
setStartDate(date)
  Sets the campaign-level callout's start date from either an object containing
year, month, and day fields, or an 8-digit string in YYYYMMDD
format.
For instance, campaignCallout.setStartDate("20130503"); is equivalent to campaignCallout.setStartDate({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}),
- the given date is after the campaign-level callout's end date.
Returns nothing.
Arguments:
| Name | Type | Description | 
|---|---|---|
| date | Object | The new campaign-level callout start date. | 
setText(text)
  Sets the text of the campaign-level callout.  Returns nothing.
Arguments:
| Name | Type | Description | 
|---|---|---|
| text | String | The text. |