Represents a sitelink that has been added to a campaign as an ad sitelink extension. Visit our [Ad Extensions](https://developers.google.com/google-ads/scripts/docs/features/ad-extensions) page for more information on sitelinks and other types of ad extensions.

### Methods:

| Member | Type | Description |
|---|---|---|
| [clearDescription1()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#clearDescription1) | `void` | Clears the first description line of the campaign-level sitelink description. |
| [clearDescription2()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#clearDescription2) | `void` | Clears the second description line of the campaign-level sitelink description. |
| [clearDescriptions()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#clearDescriptions) | `void` | Clears both lines of the campaign-level sitelink description. |
| [clearEndDate()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#clearEndDate) | `void` | Clears the campaign-level sitelink's end date. |
| [clearLinkUrl()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#clearLinkUrl) | `void` | Clears the link URL of the campaign-level sitelink. |
| [clearStartDate()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#clearStartDate) | `void` | Clears the campaign-level sitelink's start date. |
| [getBaseCampaign()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getBaseCampaign) | `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaign` | Returns the base campaign to which this campaign-level sitelink belongs. |
| [getCampaign()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getCampaign) | `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaign` | Returns the campaign to which this campaign-level sitelink belongs or `null` if it does not belong to a search or display campaign. |
| [getDescription1()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getDescription1) | `String` | Returns the first description line of the campaign-level sitelink description. |
| [getDescription2()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getDescription2) | `String` | Returns the second description line of the campaign-level sitelink description. |
| [getEndDate()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getEndDate) | `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_googleadsdate` | Returns the end date of the campaign-level sitelink, or `null` if no end date is set. |
| [getEntityType()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getEntityType) | `String` | Returns the type of this entity as a `String`, in this case, `"CampaignSitelink"`. |
| [getId()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getId) | `String` | Returns the ID of the campaign-level sitelink. |
| [getLinkText()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getLinkText) | `String` | Returns the link text of the campaign-level sitelink. |
| [getPerformanceMaxCampaign()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getPerformanceMaxCampaign) | `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_performancemaxcampaign` | Returns the performance max campaign to which this campaign-level sitelink belongs or `null` if it does not belong to a performance max campaign. |
| [getResourceName()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getResourceName) | `String` | Returns the resource name of the campaign-level sitelink. |
| [getSchedules()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getSchedules) | `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_extensionschedule` | Returns the scheduling of the campaign-level sitelink. |
| [getStartDate()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getStartDate) | `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_googleadsdate` | Returns the start date of the campaign-level sitelink, or `null` if no start date is set. |
| [getStatsFor(dateRange)](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getStatsFor_dateRange) | `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_stats` | Returns stats for the specified date range. |
| [getStatsFor(dateFrom, dateTo)](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#getStatsFor_dateFrom-dateTo) | `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_stats` | Returns stats for the specified custom date range. |
| [isMobilePreferred()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#isMobilePreferred) | `boolean` | Returns `true` if the campaign-level sitelink specifies mobile device preference. |
| [setDescription1(description1)](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#setDescription1_description1) | `void` | Sets the first description line of the campaign-level sitelink description. |
| [setDescription2(description2)](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#setDescription2_description2) | `void` | Sets the second description line of the campaign-level sitelink description. |
| [setDescriptions(description1, description2)](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#setDescriptions_description1-description2) | `void` | Sets the first and second lines of the campaign-level sitelink description. |
| [setEndDate(date)](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#setEndDate_date) | `void` | Sets the campaign-level sitelink's end date from either an object containing year, month, and day fields, or an 8-digit string in `YYYYMMDD` format. |
| [setLinkText(linkText)](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#setLinkText_linkText) | `void` | Sets the link text of the campaign-level sitelink. |
| [setMobilePreferred(isMobilePreferred)](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#setMobilePreferred_isMobilePreferred) | `void` | Sets the campaign-level sitelink's device preference. |
| [setSchedules(schedules)](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#setSchedules_schedules) | `void` | Sets the campaign-level sitelink scheduling. |
| [setStartDate(date)](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#setStartDate_date) | `void` | Sets the campaign-level sitelink's start date from either an object containing year, month, and day fields, or an 8-digit string in `YYYYMMDD` format. |
| [urls()](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaignsitelink#urls) | `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_sitelinkurls` | Provides access to the URL fields of this campaign-level sitelink. |

## `clearDescription1()`

Clears the first description line of the campaign-level sitelink description.

Returns nothing.

## `clearDescription2()`

Clears the second description line of the campaign-level sitelink description.

Returns nothing.

## `clearDescriptions()`

Clears both lines of the campaign-level sitelink description.

Returns nothing.

## `clearEndDate()`

Clears the campaign-level sitelink's end date.

Returns nothing.

## `clearLinkUrl()`

Clears the link URL of the campaign-level sitelink. To upgrade campaign-level sitelinks to final URL, first clear the link URL, then set the final URL with [SitelinkUrls.setFinalUrl](https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_sitelinkurls#setFinalUrl_finalUrl).

> [!WARNING]
> **Deprecated.**

Returns nothing.

## `clearStartDate()`

Clears the campaign-level sitelink's start date.

Returns nothing.

## `getBaseCampaign()`

Returns the base campaign to which this campaign-level sitelink belongs.

### Return values:

| Type | Description |
|---|---|
| `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaign` | The base campaign to which this campaign-level sitelink belongs. |

## `getCampaign()`

Returns the campaign to which this campaign-level sitelink belongs or `null` if it does not belong to a search or display campaign.

### Return values:

| Type | Description |
|---|---|
| `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_campaign` | The campaign to which this campaign-level sitelink belongs or `null` if it does not belong to a search or display campaign. |

## `getDescription1()`

Returns the first description line of the campaign-level sitelink description.

### Return values:

| Type | Description |
|---|---|
| `String` | Description line 1 of the campaign-level sitelink. |

## `getDescription2()`

Returns the second description line of the campaign-level sitelink description.

### Return values:

| Type | Description |
|---|---|
| `String` | Description line 2 of the campaign-level sitelink. |

## `getEndDate()`

Returns the end date of the campaign-level sitelink, or `null` if no end date is set.

For instance, if the end date of the campaign-level sitelink is May 3, 2013,
this would return the following object: `{year: 2013, month: 5, day:
3}`.

### Return values:

| Type | Description |
|---|---|
| `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_googleadsdate` | The campaign-level sitelink's end date, or `null` if there's no end date. |

## `getEntityType()`

Returns the type of this entity as a `String`, in this case, `"CampaignSitelink"`.

### Return values:

| Type | Description |
|---|---|
| `String` | Type of this entity: `"CampaignSitelink"`. |

## `getId()`

Returns the ID of the campaign-level sitelink.

### Return values:

| Type | Description |
|---|---|
| `String` | The ID of the campaign-level sitelink. |

## `getLinkText()`

Returns the link text of the campaign-level sitelink.

### Return values:

| Type | Description |
|---|---|
| `String` | Link text of the campaign-level sitelink. |

## `getPerformanceMaxCampaign()`

Returns the performance max campaign to which this campaign-level sitelink belongs or `null` if it does not belong to a performance max campaign.

### Return values:

| Type | Description |
|---|---|
| `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_performancemaxcampaign` | The performance max campaign to which this campaign-level sitelink belongs or `null` if it does not belong to a performance max campaign. |

## `getResourceName()`

Returns the resource name of the campaign-level sitelink.

### Return values:

| Type | Description |
|---|---|
| `String` | The resource name of the campaign-level sitelink. |

## `getSchedules()`

Returns the scheduling of the campaign-level sitelink.

### Return values:

| Type | Description |
|---|---|
| `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_extensionschedule` | The scheduling of the campaign-level sitelink. |

## `getStartDate()`

Returns the start date of the campaign-level sitelink, or `null` if no start date is set.

For instance, if the start date of the campaign-level sitelink is May 3,
2013, this would return the following object: `{year: 2013, month: 5,
day: 3}`.

### Return values:

| Type | Description |
|---|---|
| `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_googleadsdate` | The campaign-level sitelink's start date, or `null` if 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 = campaignSitelink.getStatsFor("THIS_MONTH");
```

### Arguments:

| Name | Type | Description |
|---|---|---|
| dateRange | `String` | Date range for which the stats are requested. |

### Return values:

| Type | Description |
|---|---|
| `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/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 `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. |

### Return values:

| Type | Description |
|---|---|
| `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_stats` | The stats for the specified date range. |

## `isMobilePreferred()`

Returns `true` if the campaign-level sitelink specifies mobile device preference.

> [!WARNING]
> **Deprecated.**

### Return values:

| Type | Description |
|---|---|
| `boolean` | `true` if the campaign-level sitelink specifies mobile device preference. |

## `setDescription1(description1)`

Sets the first description line of the campaign-level sitelink description.

Returns nothing.

### Arguments:

| Name | Type | Description |
|---|---|---|
| description1 | `String` | The first description line. |

## `setDescription2(description2)`

Sets the second description line of the campaign-level sitelink description.

Returns nothing.

### Arguments:

| Name | Type | Description |
|---|---|---|
| description2 | `String` | The second description line. |

## `setDescriptions(description1, description2)`

Sets the first and second lines of the campaign-level sitelink description.

Returns nothing.

### Arguments:

| Name | Type | Description |
|---|---|---|
| description1 | `String` | The first description line. |
| description2 | `String` | The second description line. |

## `setEndDate(date)`

Sets the campaign-level sitelink's end date from either an object containing year, month, and day fields, or an 8-digit string in `YYYYMMDD` format.

For instance, `campaignSitelink.setEndDate("20130503");` is equivalent to `campaignSitelink.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 sitelink end date. |

## `setLinkText(linkText)`

Sets the link text of the campaign-level sitelink.

Returns nothing.

### Arguments:

| Name | Type | Description |
|---|---|---|
| linkText | `String` | The link text. |

## `setMobilePreferred(isMobilePreferred)`

Sets the campaign-level sitelink's device preference.

> [!WARNING]
> **Deprecated.**

Returns nothing.

### Arguments:

| Name | Type | Description |
|---|---|---|
| isMobilePreferred | `boolean` | `true` sets the device preference to mobile. `false` clears the device preference. |

## `setSchedules(schedules)`

Sets the campaign-level sitelink scheduling. Scheduling of a campaign-level sitelink allows you to control the days of week and times of day during which the campaign-level sitelink will show alongside your ads.

Passing in an empty array clears the scheduling field, causing the campaign-level sitelink to run at all times.

The following example sets the campaign-level sitelink 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
};

campaignSitelink.setSchedules([mondayMorning, tuesdayMorning]);
```

Returns nothing.

### Arguments:

| Name | Type | Description |
|---|---|---|
| schedules | `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_extensionschedule` | The new campaign-level sitelink schedules. |

## `setStartDate(date)`

Sets the campaign-level sitelink's start date from either an object containing year, month, and day fields, or an 8-digit string in `YYYYMMDD` format.

For instance, `campaignSitelink.setStartDate("20130503");` is equivalent to `campaignSitelink.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 sitelink's end date.

Returns nothing.

### Arguments:

| Name | Type | Description |
|---|---|---|
| date | `Object` | The new campaign-level sitelink start date. |

## `urls()`

Provides access to the URL fields of this campaign-level sitelink. See [Using Upgraded
URLs](https://support.google.com/google-ads/answer/6049217) for more information.

### Return values:

| Type | Description |
|---|---|
| `https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_sitelinkurls` | Access to the URL fields of this campaign-level sitelink. |