> Portal Navigation:
> 
> - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version.
> - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages).
> - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`).
> - Top-level index of all portals: https://dev.wix.com/docs/llms.txt
> - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt

# ListCampaigns

# Package: googleAds

# Namespace: CampaignService

# Method link: https://dev.wix.com/docs/api-reference/business-management/marketing/ads/google-ads/campaign-v1/list-campaigns.md

## Permission Scopes:
View google ads campaigns: SCOPE.PROMOTE.VIEW-GOOGLE-ADS

## Introduction

Retrieves all campaigns associated with the current site.

---

## REST API

### Schema

```
 Method: listCampaigns
 Description: Retrieves all campaigns associated with the current site.
 URL: https://www.wixapis.com/_serverless/pa-google/v1/campaigns
 Method: GET
 Return type: ListCampaignsResponse
  - name: campaigns | type: array<Campaign> | description: All campaigns associated with the site. Maximum 1,000 items.  | validation: maxItems 1000
     - ONE-OF: 
        - name: smartCampaign | type: SmartCampaign | description: Smart Campaign details. Present when campaignType is SMART.  
           - name: keywordThemes | type: array<KeywordCriterion> | description: Keyword themes that tell Google which search queries to match. Up to 10 themes are allowed.  | validation: maxItems 10
              - ONE-OF: 
                 - name: keywordThemeConstant | type: string | description: Google Ads keyword theme constant resource name (e.g. keywordThemes/12345).  | validation: maxLength 1000
                 - name: freeFormKeywordTheme | type: string | description: Free-text keyword theme. Google maps this to a matching keyword theme constant on a best-effort basis.  | validation: maxLength 1000
              - name: resourceName | type: string | description: Google Ads campaign criterion resource name. Format: customers/{customerId}/campaignCriteria/{campaignId}~{criterionId}  | validation: maxLength 1000
              - name: displayName | type: string | description: Human-readable keyword theme label shown in the UI.  | validation: maxLength 1000
           - name: excludedSearchTerms | type: array<ExcludedKeywordCriterion> | description: Search terms to exclude from keyword matching, used in the keyword manager.  | validation: maxItems 1000
              - name: resourceName | type: string | description: Google Ads campaign criterion resource name. Format: customers/{customerId}/campaignCriteria/{campaignId}~{criterionId}  | validation: maxLength 1000
              - name: freeFormKeywordTheme | type: string | description: Free-text search term to exclude. Google maps this to a matching keyword theme constant on a best-effort basis.  | validation: maxLength 1000
              - name: displayName | type: string | description: Human-readable label for the excluded keyword shown in the UI.  | validation: maxLength 1000
           - name: adGroups | type: array<AdGroup> | description: Ad groups containing the ad copy (headlines and descriptions) shown to users.  | validation: maxItems 100
              - name: resourceName | type: string | description: Google Ads resource name for the ad group. Format: customers/{customerId}/adGroups/{adGroupId}  | validation: maxLength 1000
              - name: ads | type: array<SmartCampaignAd> | description: Ads belonging to this ad group. Each ad contains the headlines and descriptions shown to users.  | validation: maxItems 100
                 - name: resourceName | type: string | description: Actual ad resource name. customers/{customerId}/adGroupAds/{adGroupId}~{ad_id}  
                 - name: headlines | type: array<string> | description: Headlines of the ad.  | validation: minItems 3, maxItems 3, maxLength 30
                 - name: descriptions | type: array<string> | description: Descriptions of the ad.  | validation: minItems 2, maxItems 2, maxLength 90
           - name: phone | type: PhoneNumber | description: Phone number displayed in call-based ads. This is a PII field.  
              - name: countryCode | type: string | description: Country code. For example, `+972`.  
              - name: phoneNumber | type: string | description: Phone number.  
              - name: resourceName | type: string | description: Campaign call-asset resource name.  | validation: maxLength 1000
           - name: businessName | type: string | description: Name of the advertised business shown in ads.  | validation: maxLength 1000
           - name: url | type: string | description: Landing page URL that the campaign directs users to.  | validation: format WEB_URL
           - name: languageCode | type: string | description: BCP-47 language code for the campaign, e.g. "en" or "fr".  | validation: maxLength 1000
           - name: rejectionInfo | type: RejectionInfo | description: Policy rejection information returned by Google Ads, if any assets or settings were disapproved.  
              - name: rejections | type: array<Rejection> | description: List of individual policy rejections. Maximum 100 items.  | validation: maxItems 100
                 - name: rejectionType | type: RejectionType | description: The category of the policy violation.  
                         - enum:
                         -     UNSPECIFIED: No rejection type has been specified.
                         -     UNKNOWN: The rejection type is not known in this API version.
                         -     PROHIBITED: The resource violates policy and will not serve.
                         -     LIMITED: The resource violates policy under certain conditions and may serve in a limited capacity.
                         -     FULLY_LIMITED: The resource violates policy for all current targeting criteria and will not serve at all.
                         -     DESCRIPTIVE: The finding is informational and does not affect how the resource is served.
                         -     BROADENING: The resource may serve beyond the normally targeted audience due to broadened reach.
                         -     AREA_OF_INTEREST_ONLY: The resource is constrained in all targeted countries but may still serve via area of interest targeting.
                 - name: topic | type: string | description: The policy topic that triggered this rejection (e.g. "ADULT_CONTENT").  | validation: maxLength 1000
                 - name: evidences | type: array<RejectionEvidence> | description: Evidence from the campaign content that triggered the rejection.  | validation: maxItems 100
                    - name: languageCode | type: string | description: IETF language tag of the language in which the offending content was detected (e.g. "en-US").  | validation: maxLength 1000
                    - name: texts | type: array<string> | description: Snippets of text from the resource that caused the rejection.  | validation: maxItems 100, maxLength 1000
           - name: businessProfileLocationId | type: string | description: Google Business Profile location GUID linked to this campaign.  | validation: maxLength 1000
        - name: performanceMaxCampaign | type: PerformanceMaxCampaign | description: Performance Max campaign details. Present when campaignType is PERFORMANCE_MAX or PERFORMANCE_MAX_LEADS.  
           - name: endDate | type: string | description: Date on which the campaign ends, in YYYY-MM-DD format. Omit for a campaign with no end date.  | validation: format date-time
           - name: biddingStrategy | type: BiddingStrategy | description: Bidding strategy for the campaign. Server-enforced to MAXIMIZE_CONVERSIONS; callers do not need to set this field.  
                 - enum:
                 -     UNKNOWN: Unknown bidding strategy.
                 -     MAXIMIZE_CONVERSIONS: Automatically sets bids to maximize the total number of conversions within the budget.
                 -     MAXIMIZE_CONVERSION_VALUE: Automatically sets bids to maximize the total conversion value within the budget.
           - name: locationGroups | type: array<LocationGroupCriterion> | description: Location group criteria restricting geographic targeting.  | validation: maxItems 1000
              - name: isNegative | type: boolean | description: Whether this is an excluded (negative) location group.  
              - name: geoTargetConstant | type: string | description: Geo target constant restricting the geographic scope within the feed. Currently only one geo target constant is allowed. Cannot be set together with AssetSet fields.  | validation: maxLength 1000
              - name: radiusUnits | type: string | description: Unit of the radius value. Miles and meters are supported for geo target constants. Milli miles and meters are supported for feed item sets and asset sets. Required on CREATE operations.  | validation: maxLength 1000
              - name: feed | type: string | description: Feed specifying the locations for targeting. Cannot be set together with AssetSet fields. Required on CREATE operations.  | validation: maxLength 1000
              - name: radius | type: string | description: Distance from the targeted locations, in the units specified by radiusUnits. Required on CREATE operations.  
           - name: languages | type: array<LanguageCriterion> | description: Languages targeted by the campaign.  | validation: maxItems 100
              - name: resourceName | type: string | description: Google Ads campaign criterion resource name. Format: customers/{customerId}/campaignCriteria/{campaignId}~{criterionId}  | validation: maxLength 1000
              - name: languageConstant | type: string | description: Google Ads language constant resource name (e.g. languageConstants/1000).  | validation: maxLength 1000
              - name: languageCode | type: string | description: BCP-47 language code (e.g. "en", "iw", "zh_CN").  | validation: maxLength 1000
           - name: conversionGoals | type: array<CampaignConversionGoal> | description: Conversion goals that define which user actions count as conversions for this campaign.  | validation: maxItems 10
              - name: resourceName | type: string | description: Google Ads resource name for the campaign conversion goal. Format: customers/{customer_id}/campaignConversionGoals/{campaign_id}~{category}~{origin}  | validation: maxLength 1000
              - name: category | type: string | description: Category of conversions associated with a ConversionAction (e.g. PURCHASE, LEAD).  | validation: maxLength 1000
              - name: origin | type: string | description: Location where the conversion can occur (e.g. WEBSITE, APP, STORE, CALL_FROM_ADS).  | validation: maxLength 1000
           - name: feedLabel | type: string | description: Feed label from Google Merchant Center, used to filter products for Shopping inventory.  | validation: maxLength 1000
           - name: rejectionInfo | type: RejectionInfo | description: Policy rejection information returned by Google Ads, if any assets or settings were disapproved.  
           - name: assetGroups | type: array<AssetGroup> | description: Collections of creative assets (text, images, videos) used to auto-generate ads across Google channels.  | validation: maxItems 100
              - name: resourceName | type: string | description: Google Ads resource name for the asset group. Format: customers/{customer_id}/assetGroups/{asset_group_id}  | validation: maxLength 1000
              - name: assetGroupListingGroupFilters | type: array<AssetGroupListingGroupFilter> | description: Listing group filters that restrict which products from the feed are associated with this asset group.  | validation: maxItems 100
                 - name: resourceName | type: string | description: Google Ads resource name for the listing group filter. Format: customers/{customer_id}/assetGroupListingGroupFilters/{asset_group_id}~{listing_group_filter_id}  | validation: maxLength 1000
              - name: assetGroupAssets | type: AssetGroupAssets | description: Creative assets belonging to the asset group. Applicable to PERFORMANCE_MAX_LEADS only.  
                 - name: assets | type: array<AssetGroupAsset> | description: The creative assets (text, images, videos, etc.) belonging to the asset group.  | validation: maxItems 120
                    - ONE-OF: 
                       - name: headlineAsset | type: HeadlineTextAsset | description: Short headline text asset. Maximum 30 characters.  
                          - name: text | type: string | description: Headline text shown in the ad.  | validation: maxLength 30
                       - name: longHeadlineAsset | type: LongHeadlineTextAsset | description: Long headline text asset. Maximum 90 characters.  
                          - name: text | type: string | description: Long headline text shown in the ad.  | validation: maxLength 90
                       - name: descriptionAsset | type: DescriptionTextAsset | description: Description text asset. Maximum 90 characters.  
                          - name: text | type: string | description: Description text shown below the headline in the ad.  | validation: maxLength 90
                       - name: businessNameAsset | type: BusinessNameTextAsset | description: Business name text asset. Maximum 25 characters.  
                          - name: text | type: string | description: Business name shown in the ad.  | validation: maxLength 25
                       - name: imageAsset | type: ImageAsset | description: Image asset (landscape, square, portrait, or logo).  
                          - name: name | type: string | description: Display name for the image asset.  | validation: maxLength 1000
                          - name: url | type: string | description: URL of the image served from Wix Media Manager.  | validation: format WEB_URL
                       - name: callToActionSelectionAsset | type: CallToActionSelectionAsset | description: Call-to-action button label asset.  
                          - name: callToAction | type: CallToActionType | description: The call-to-action type to display on the button.  
                                     - enum:
                                     -     LEARN_MORE: "Learn More" button label.
                                     -     SHOP_NOW: "Shop Now" button label.
                                     -     SIGN_UP: "Sign Up" button label.
                                     -     CONTACT_US: "Contact Us" button label.
                       - name: youtubeVideoAsset | type: YouTubeVideoAsset | description: YouTube video asset.  
                          - name: title | type: string | description: Title of the YouTube video.  | validation: maxLength 300
                          - name: id | type: string | description: 11-character YouTube video GUID from the video URL (e.g. the value of the "v" query parameter).  | validation: minLength 11, maxLength 11
                       - name: mediaBundleAsset | type: MediaBundleAsset | description: HTML5 media bundle asset.  
                          - name: data | type: bytes | description: Raw binary data of the ZIP bundle.  
                    - name: resourceName | type: string | description: Google Ads resource name representing the asset group asset relationship. Format: customers/{customer_id}/assetGroupAssets/{asset_group_id}~{asset_id}~{field_type}  | validation: maxLength 1000
                    - name: assetFieldType | type: AssetFieldType | description: The role this asset plays within the asset group (e.g. HEADLINE, MARKETING_IMAGE).  
                             - enum:
                             -     HEADLINE: Short headline shown in ads. At least 3 required; up to 15 allowed. Maximum 30 characters.
                             -     LONG_HEADLINE: Longer headline used in certain ad formats. Exactly 1 required. Maximum 90 characters.
                             -     DESCRIPTION: Description shown below the headline. At least 2 required; up to 4 allowed. Maximum 90 characters.
                             -     BUSINESS_NAME: Business name shown in the ad. Exactly 1 required. Maximum 25 characters.
                             -     MARKETING_IMAGE: Landscape marketing image with a 1.91:1 aspect ratio (e.g. 1200x628). Multiple images allowed.
                             -     SQUARE_MARKETING_IMAGE: Square marketing image with a 1:1 aspect ratio (e.g. 1200x1200). Multiple images allowed.
                             -     LOGO: Square logo with a 1:1 aspect ratio (e.g. 1200x1200). A transparent background is recommended.
                             -     PORTRAIT_MARKETING_IMAGE: Portrait marketing image with a 4:5 aspect ratio (e.g. 960x1200). Multiple images allowed.
                             -     LANDSCAPE_LOGO: Landscape logo with a 4:1 aspect ratio (e.g. 1200x300).
                             -     CALL_TO_ACTION_SELECTION: Call-to-action button label. Select a value from CallToActionType. Optional.
                             -     YOUTUBE_VIDEO: YouTube video asset identified by an 11-character video ID. 1 to 5 videos recommended.
                             -     MEDIA_BUNDLE: HTML5 media bundle (ZIP file). Mutate-only in Google Ads.
                    - name: status | type: AssetGroupAssetStatus | description: Current serving status of the asset as reported by Google Ads.  
                             - enum:
                             -     UNKNOWN: Unknown or unspecified status.
                             -     ELIGIBLE: The asset is eligible to serve.
                             -     LIMITED: The asset is serving in a limited capacity due to policy restrictions.
                             -     PENDING: The asset is under Google Ads policy review and may serve in the future.
                             -     PAUSED: The asset is paused because its campaign has been paused.
                             -     DISAPPROVED: The asset has been disapproved by Google Ads and is not eligible to serve.
                             -     NOT_ELIGIBLE: The asset is not eligible to serve for reasons other than policy disapproval.
                    - name: createdDate | type: string | description: Date and time the asset was added to the system.  | validation: format date-time
              - name: assetGroupSignals | type: AssetGroupSignals | description: Signals guiding Google's targeting for the asset group. Applicable to PERFORMANCE_MAX_LEADS only.  
                 - name: signals | type: array<AssetGroupSignal> | description: Signals (search themes, audiences, etc.) that guide Google's targeting for the asset group.  | validation: maxItems 25
                    - ONE-OF: 
                       - name: searchTheme | type: SearchThemeInfo | description: Search theme signal that tells Google which search queries are relevant to this asset group.  
                          - name: text | type: string | description: The search theme text.  | validation: maxLength 1000
                    - name: resourceName | type: string | description: Google Ads resource name for the asset group signal. Format: customers/{customer_id}/assetGroupSignals/{asset_group_id}~{signal_id}  | validation: maxLength 1000
                    - name: approvalStatus | type: AssetGroupSignalApprovalStatus | description: Google Ads policy review result for this signal.  
                             - enum:
                             -     APPROVED: Search theme passed Google Ads policy review and is fully eligible to serve.
                             -     LIMITED: Search theme passed review but serves with restrictions due to policy.
                             -     DISAPPROVED: Search theme was disapproved by Google Ads policy and will not serve.
                             -     UNDER_REVIEW: Search theme is currently under Google Ads policy review.
                    - name: disapprovalReasons | type: DisapprovalReasons | description: Reasons why this signal was disapproved, if applicable.  
                       - name: values | type: array<string> | description: List of disapproval reason strings. Maximum 50 items.  | validation: maxItems 50, maxLength 1000
              - name: status | type: AssetGroupStatus | description: Current serving status of the asset group.  
                     - enum:
                     -     UNKNOWN: Unknown or unexpected state.
                     -     ELIGIBLE: Asset group is eligible and serving normally.
                     -     LIMITED: Asset group is serving but with policy limitations.
                     -     PENDING: Asset group is pending policy review.
                     -     DISAPPROVED: Asset group has been disapproved by Google.
                     -     PAUSED: Asset group is paused because its campaign is paused.
                     -     UNSPECIFIED: Status has not been specified.
           - name: url | type: string | description: Landing page URL that the campaign directs users to.  | validation: format WEB_URL
           - name: excludedKeywords | type: array<ExcludedKeywordCriterion> | description: Negative keywords that prevent the campaign from serving on matching queries. Applicable to PERFORMANCE_MAX_LEADS only. Up to 10,000.  | validation: maxItems 10000
           - name: assetAutomationSettings | type: array<AssetAutomationSetting> | description: Asset automation settings controlling which types of auto-generated assets Google may create.  | validation: maxItems 10
              - name: type | type: AssetAutomationType | description: The type of asset automation this setting applies to.  
                     - enum:
                     -     UNKNOWN: Unknown asset automation type.
                     -     FINAL_URL_EXPANSION_TEXT_ASSET_AUTOMATION: Automatically expand the final URL to match more relevant landing pages.
                     -     TEXT_ASSET_AUTOMATION: Automatically generate additional text assets (headlines, descriptions) to improve performance.
                     -     GENERATE_IMAGE_ENHANCEMENT: Automatically enhance existing images with generated variations.
                     -     GENERATE_ENHANCED_YOUTUBE_VIDEOS: Automatically generate enhanced versions of YouTube videos for better ad performance.
                     -     GENERATE_IMAGE_EXTRACTION: Automatically extract still images from videos to use as image assets.
              - name: status | type: AssetAutomationStatus | description: Whether this automation type is opted in or opted out.  
                     - enum:
                     -     UNKNOWN: Unknown asset automation status.
                     -     OPTED_OUT: Google will not automatically generate assets of this type.
                     -     OPTED_IN: Google may automatically generate assets of this type to improve performance.
           - name: daysInLearning | type: integer | description: Number of days elapsed in the current learning period. Applicable to PERFORMANCE_MAX_LEADS only. Absent when the campaign is not in a learning phase.  | validation: format int32
           - name: phone | type: PhoneNumber | description: Phone number displayed in call-based ads. This is a PII field.  
     - name: id | type: string | description: Unique campaign GUID.  | validation: format GUID
     - name: accountId | type: string | description: Wix internal account GUID associated with this campaign.  | validation: format GUID
     - name: campaignType | type: CampaignType | description: Type of the campaign, either Smart or Performance Max.  
         - enum:
         -     UNKNOWN: Unknown campaign type.
         -     SMART: Simplified auto-managed campaign. Google handles bidding and ad delivery based on keyword themes and geo targets.
         -     PERFORMANCE_MAX: Goal-based campaign that runs across all Google channels (Search, Display, YouTube, etc.) using asset groups.
         -     PERFORMANCE_MAX_LEADS: Performance Max variant optimized for lead generation, such as phone calls and form fills.
     - name: status | type: CampaignStatus | description: Current campaign status, synced from Google Ads on each read.  
         - enum:
         -     UNKNOWN: Used for return value only. Represents a value unknown in this version.
         -     LIVE: Campaign is currently serving ads, depending on budget information.
         -     PAUSED: Campaign has been paused by the user.
         -     ENDED: Campaign has been ended.
         -     IN_REVIEW: The campaign was created but its budget hasn't been charged yet.
         -     ERROR: Error state.
         -     DISAPPROVED: Campaign is not approved.
         -     NOT_SERVING: Campaign is currently not serving due to budget limitations.
         -     DRAFT: Campaign is a draft.
         -     LEARNING: Campaign is in the learning phase. Currently supported only for Google Ads Performance Max leads campaigns.
     - name: resourceName | type: string | description: Google Ads resource name for this campaign, e.g. customers/{customerId}/campaigns/{campaignId}.  | validation: maxLength 1000
     - name: name | type: string | description: Display name of the campaign.  | validation: maxLength 1000
     - name: createdDate | type: string | description: Date and time the campaign was created.  | validation: format date-time
     - name: updatedDate | type: string | description: Date and time the campaign was last updated.  | validation: format date-time
     - name: actionDate | type: string | description: Date and time of the most recent lifecycle action (pause, resume, launch, etc.).  | validation: format date-time
     - name: budget | type: CampaignBudget | description: Daily budget for the campaign.  
        - name: resourceName | type: string | description: Google Ads resource name for the campaign budget.  | validation: maxLength 1000
        - name: amountMicros | type: string | description: Daily budget amount in micros using the account's local currency. 1,000,000 micros equals 1 currency unit (e.g. 6,400,000 = $6.40). Google caps monthly spend at 30.4 times this amount. Minimum is approximately $6.40 USD for standard subscribers; maximum is approximately $127.60 USD standard, or up to $1,500 for high-spend accounts.  | validation: maxLength 1000
     - name: locations | type: array<LocationCriterion> | description: Geographic locations targeted by this campaign.  | validation: maxItems 1000
        - name: resourceName | type: string | description: Google Ads campaign criterion resource name. Format: customers/{customerId}/campaignCriteria/{campaignId}~{criterionId}  | validation: maxLength 1000
        - name: location | type: Location | description: The location being targeted.  
           - ONE-OF: 
              - name: geoTargetConstant | type: string | description: Google geo target constant resource name (e.g. geoTargetConstants/1023191).  | validation: maxLength 1000
              - name: proximity | type: ProximityAddress | description: Proximity criterion defining a circular area by geo point and radius.  
                 - name: address | type: Address | description: Full address. The address is a description of the geo point that does not affect ad serving.  
                    - name: postalCode | type: string | description: Postal code.  
                    - name: provinceCode | type: string | description: Province or state code.  
                    - name: countryCode | type: string | description: Country code.  
                    - name: provinceName | type: string | description: Province or state name.  
                    - name: streetAddress | type: string | description: Street address line 1.  
                    - name: streetAddress2 | type: string | description: Street address line 2.  
                    - name: cityName | type: string | description: Name of the city.  
                 - name: radiusUnits | type: RadiusUnits | description: The unit of measurement of the radius.  
                         - enum: MILES, KILOMETERS
                 - name: radius | type: integer | description: The radius of the proximity.  | validation: format int32
        - name: displayName | type: string | description: Human-readable location name shown in the UI (e.g. "New York, New York").  | validation: maxLength 1000
     - name: adSchedule | type: WeeklyAdSchedule | description: Weekly ad schedule defining the days and hours when ads can run.  
        - name: adShowAnytime | type: boolean | description: Whether ads show at any time during the day. When `true`, the daily schedules below are ignored.  
        - name: sunday | type: DailyAdSchedule | description: Sunday ad show range.  
           - name: resourceName | type: string | description: Campaign criterion resource names have the form: customers/{customerId}/campaignCriteria/{campaignId}~{criterionId}  
           - name: startTime | type: AdTime | description: The start time of showing an ad in a specific day.  
              - name: hour | type: integer | description: Starting hour in 24 hour time. This field must be between 0 and 23, inclusive.  | validation: format int32
              - name: minute | type: MinuteOfHour | description: Minutes after the start hour at which this schedule starts.  
                     - enum:
                     -     ZERO: Zero minutes past the hour.
                     -     FIFTEEN: Fifteen minutes past the hour.
                     -     THIRTY: Thirty minutes past the hour.
                     -     FORTY_FIVE: Forty-five minutes past the hour.
           - name: endTime | type: AdTime | description: Stop showing the ad at this time in a specific day.  
        - name: monday | type: DailyAdSchedule | description: Monday ad show range.  
        - name: tuesday | type: DailyAdSchedule | description: Tuesday ad show range.  
        - name: wednesday | type: DailyAdSchedule | description: Wednesday ad show range.  
        - name: thursday | type: DailyAdSchedule | description: Thursday ad show range.  
        - name: friday | type: DailyAdSchedule | description: Friday ad show range.  
        - name: saturday | type: DailyAdSchedule | description: Saturday ad show range.  
     - name: reportingKey | type: string | description: Value used as the utm_campaign parameter for conversion tracking.  | validation: maxLength 1000
     - name: campaignBrief | type: CampaignBrief | description: The brief used to generate this campaign. Only present on campaigns created via the GetCampaignSuggestions endpoint of SuggestionsService.  
        - name: id | type: string | description: Campaign brief GUID (Wix internal)  | validation: format GUID
        - name: platformType | type: PlatformType | description: The type of platform the campaign will be created on (Google/FB)  
             - enum: UNKNOWN, GOOGLE, FACEBOOK
        - name: goal | type: string | description: Goal of the campaign  | validation: maxLength 1000
        - name: audience | type: string | description: Audience the campaign should target  | validation: maxLength 1000

 Possible Errors:
   HTTP Code: 404 | Status Code: NOT_FOUND | Application Code: ACCOUNT_NOT_FOUND | Description: Couldn't find the Google Ads account.
   HTTP Code: 428 | Status Code: FAILED_PRECONDITION | Application Code: ACCOUNT_CANCELED | Description: none


```

### Examples

### List Campaigns
```curl
curl -X GET \
  'https://www.wixapis.com/google-ads/v1/campaigns' \
  -H 'Authorization: <AUTH>'
```

---

## JavaScript SDK

### Schema

```
 Method: wixClientAdmin.promoteGoogleAds.campaigns.listCampaigns()
 Description: Retrieves all campaigns associated with the current site.
 Return type: PROMISE<ListCampaignsResponse>
  - name: campaigns | type: array<Campaign> | description: All campaigns associated with the site. Maximum 1,000 items.  | validation: maxItems 1000
     - ONE-OF: 
        - name: smartCampaign | type: SmartCampaign | description: Smart Campaign details. Present when campaignType is SMART.  
           - name: keywordThemes | type: array<KeywordCriterion> | description: Keyword themes that tell Google which search queries to match. Up to 10 themes are allowed.  | validation: maxItems 10
              - ONE-OF: 
                 - name: keywordThemeConstant | type: string | description: Google Ads keyword theme constant resource name (e.g. keywordThemes/12345).  | validation: maxLength 1000
                 - name: freeFormKeywordTheme | type: string | description: Free-text keyword theme. Google maps this to a matching keyword theme constant on a best-effort basis.  | validation: maxLength 1000
              - name: resourceName | type: string | description: Google Ads campaign criterion resource name. Format: customers/{customerId}/campaignCriteria/{campaignId}~{criterionId}  | validation: maxLength 1000
              - name: displayName | type: string | description: Human-readable keyword theme label shown in the UI.  | validation: maxLength 1000
           - name: excludedSearchTerms | type: array<ExcludedKeywordCriterion> | description: Search terms to exclude from keyword matching, used in the keyword manager.  | validation: maxItems 1000
              - name: resourceName | type: string | description: Google Ads campaign criterion resource name. Format: customers/{customerId}/campaignCriteria/{campaignId}~{criterionId}  | validation: maxLength 1000
              - name: freeFormKeywordTheme | type: string | description: Free-text search term to exclude. Google maps this to a matching keyword theme constant on a best-effort basis.  | validation: maxLength 1000
              - name: displayName | type: string | description: Human-readable label for the excluded keyword shown in the UI.  | validation: maxLength 1000
           - name: adGroups | type: array<AdGroup> | description: Ad groups containing the ad copy (headlines and descriptions) shown to users.  | validation: maxItems 100
              - name: resourceName | type: string | description: Google Ads resource name for the ad group. Format: customers/{customerId}/adGroups/{adGroupId}  | validation: maxLength 1000
              - name: ads | type: array<SmartCampaignAd> | description: Ads belonging to this ad group. Each ad contains the headlines and descriptions shown to users.  | validation: maxItems 100
                 - name: resourceName | type: string | description: Actual ad resource name. customers/{customerId}/adGroupAds/{adGroupId}~{ad_id}  
                 - name: headlines | type: array<string> | description: Headlines of the ad.  | validation: minItems 3, maxItems 3, maxLength 30
                 - name: descriptions | type: array<string> | description: Descriptions of the ad.  | validation: minItems 2, maxItems 2, maxLength 90
           - name: phone | type: PhoneNumber | description: Phone number displayed in call-based ads. This is a PII field.  
              - name: countryCode | type: string | description: Country code. For example, `+972`.  
              - name: phoneNumber | type: string | description: Phone number.  
              - name: resourceName | type: string | description: Campaign call-asset resource name.  | validation: maxLength 1000
           - name: businessName | type: string | description: Name of the advertised business shown in ads.  | validation: maxLength 1000
           - name: url | type: string | description: Landing page URL that the campaign directs users to.  | validation: format WEB_URL
           - name: languageCode | type: string | description: BCP-47 language code for the campaign, e.g. "en" or "fr".  | validation: maxLength 1000
           - name: rejectionInfo | type: RejectionInfo | description: Policy rejection information returned by Google Ads, if any assets or settings were disapproved.  
              - name: rejections | type: array<Rejection> | description: List of individual policy rejections. Maximum 100 items.  | validation: maxItems 100
                 - name: rejectionType | type: RejectionType | description: The category of the policy violation.  
                         - enum:
                         -     UNSPECIFIED: No rejection type has been specified.
                         -     UNKNOWN: The rejection type is not known in this API version.
                         -     PROHIBITED: The resource violates policy and will not serve.
                         -     LIMITED: The resource violates policy under certain conditions and may serve in a limited capacity.
                         -     FULLY_LIMITED: The resource violates policy for all current targeting criteria and will not serve at all.
                         -     DESCRIPTIVE: The finding is informational and does not affect how the resource is served.
                         -     BROADENING: The resource may serve beyond the normally targeted audience due to broadened reach.
                         -     AREA_OF_INTEREST_ONLY: The resource is constrained in all targeted countries but may still serve via area of interest targeting.
                 - name: topic | type: string | description: The policy topic that triggered this rejection (e.g. "ADULT_CONTENT").  | validation: maxLength 1000
                 - name: evidences | type: array<RejectionEvidence> | description: Evidence from the campaign content that triggered the rejection.  | validation: maxItems 100
                    - name: languageCode | type: string | description: IETF language tag of the language in which the offending content was detected (e.g. "en-US").  | validation: maxLength 1000
                    - name: texts | type: array<string> | description: Snippets of text from the resource that caused the rejection.  | validation: maxItems 100, maxLength 1000
           - name: businessProfileLocationId | type: string | description: Google Business Profile location GUID linked to this campaign.  | validation: maxLength 1000
        - name: performanceMaxCampaign | type: PerformanceMaxCampaign | description: Performance Max campaign details. Present when campaignType is PERFORMANCE_MAX or PERFORMANCE_MAX_LEADS.  
           - name: endDate | type: Date | description: Date on which the campaign ends, in YYYY-MM-DD format. Omit for a campaign with no end date.  
           - name: biddingStrategy | type: BiddingStrategy | description: Bidding strategy for the campaign. Server-enforced to MAXIMIZE_CONVERSIONS; callers do not need to set this field.  
                 - enum:
                 -     UNKNOWN: Unknown bidding strategy.
                 -     MAXIMIZE_CONVERSIONS: Automatically sets bids to maximize the total number of conversions within the budget.
                 -     MAXIMIZE_CONVERSION_VALUE: Automatically sets bids to maximize the total conversion value within the budget.
           - name: locationGroups | type: array<LocationGroupCriterion> | description: Location group criteria restricting geographic targeting.  | validation: maxItems 1000
              - name: isNegative | type: boolean | description: Whether this is an excluded (negative) location group.  
              - name: geoTargetConstant | type: string | description: Geo target constant restricting the geographic scope within the feed. Currently only one geo target constant is allowed. Cannot be set together with AssetSet fields.  | validation: maxLength 1000
              - name: radiusUnits | type: string | description: Unit of the radius value. Miles and meters are supported for geo target constants. Milli miles and meters are supported for feed item sets and asset sets. Required on CREATE operations.  | validation: maxLength 1000
              - name: feed | type: string | description: Feed specifying the locations for targeting. Cannot be set together with AssetSet fields. Required on CREATE operations.  | validation: maxLength 1000
              - name: radius | type: string | description: Distance from the targeted locations, in the units specified by radiusUnits. Required on CREATE operations.  
           - name: languages | type: array<LanguageCriterion> | description: Languages targeted by the campaign.  | validation: maxItems 100
              - name: resourceName | type: string | description: Google Ads campaign criterion resource name. Format: customers/{customerId}/campaignCriteria/{campaignId}~{criterionId}  | validation: maxLength 1000
              - name: languageConstant | type: string | description: Google Ads language constant resource name (e.g. languageConstants/1000).  | validation: maxLength 1000
              - name: languageCode | type: string | description: BCP-47 language code (e.g. "en", "iw", "zh_CN").  | validation: maxLength 1000
           - name: conversionGoals | type: array<CampaignConversionGoal> | description: Conversion goals that define which user actions count as conversions for this campaign.  | validation: maxItems 10
              - name: resourceName | type: string | description: Google Ads resource name for the campaign conversion goal. Format: customers/{customer_id}/campaignConversionGoals/{campaign_id}~{category}~{origin}  | validation: maxLength 1000
              - name: category | type: string | description: Category of conversions associated with a ConversionAction (e.g. PURCHASE, LEAD).  | validation: maxLength 1000
              - name: origin | type: string | description: Location where the conversion can occur (e.g. WEBSITE, APP, STORE, CALL_FROM_ADS).  | validation: maxLength 1000
           - name: feedLabel | type: string | description: Feed label from Google Merchant Center, used to filter products for Shopping inventory.  | validation: maxLength 1000
           - name: rejectionInfo | type: RejectionInfo | description: Policy rejection information returned by Google Ads, if any assets or settings were disapproved.  
           - name: assetGroups | type: array<AssetGroup> | description: Collections of creative assets (text, images, videos) used to auto-generate ads across Google channels.  | validation: maxItems 100
              - name: resourceName | type: string | description: Google Ads resource name for the asset group. Format: customers/{customer_id}/assetGroups/{asset_group_id}  | validation: maxLength 1000
              - name: assetGroupListingGroupFilters | type: array<AssetGroupListingGroupFilter> | description: Listing group filters that restrict which products from the feed are associated with this asset group.  | validation: maxItems 100
                 - name: resourceName | type: string | description: Google Ads resource name for the listing group filter. Format: customers/{customer_id}/assetGroupListingGroupFilters/{asset_group_id}~{listing_group_filter_id}  | validation: maxLength 1000
              - name: assetGroupAssets | type: AssetGroupAssets | description: Creative assets belonging to the asset group. Applicable to PERFORMANCE_MAX_LEADS only.  
                 - name: assets | type: array<AssetGroupAsset> | description: The creative assets (text, images, videos, etc.) belonging to the asset group.  | validation: maxItems 120
                    - ONE-OF: 
                       - name: headlineAsset | type: HeadlineTextAsset | description: Short headline text asset. Maximum 30 characters.  
                          - name: text | type: string | description: Headline text shown in the ad.  | validation: maxLength 30
                       - name: longHeadlineAsset | type: LongHeadlineTextAsset | description: Long headline text asset. Maximum 90 characters.  
                          - name: text | type: string | description: Long headline text shown in the ad.  | validation: maxLength 90
                       - name: descriptionAsset | type: DescriptionTextAsset | description: Description text asset. Maximum 90 characters.  
                          - name: text | type: string | description: Description text shown below the headline in the ad.  | validation: maxLength 90
                       - name: businessNameAsset | type: BusinessNameTextAsset | description: Business name text asset. Maximum 25 characters.  
                          - name: text | type: string | description: Business name shown in the ad.  | validation: maxLength 25
                       - name: imageAsset | type: ImageAsset | description: Image asset (landscape, square, portrait, or logo).  
                          - name: name | type: string | description: Display name for the image asset.  | validation: maxLength 1000
                          - name: url | type: string | description: URL of the image served from Wix Media Manager.  | validation: format WEB_URL
                       - name: callToActionSelectionAsset | type: CallToActionSelectionAsset | description: Call-to-action button label asset.  
                          - name: callToAction | type: CallToActionType | description: The call-to-action type to display on the button.  
                                     - enum:
                                     -     LEARN_MORE: "Learn More" button label.
                                     -     SHOP_NOW: "Shop Now" button label.
                                     -     SIGN_UP: "Sign Up" button label.
                                     -     CONTACT_US: "Contact Us" button label.
                       - name: youtubeVideoAsset | type: YouTubeVideoAsset | description: YouTube video asset.  
                          - name: title | type: string | description: Title of the YouTube video.  | validation: maxLength 300
                          - name: _id | type: string | description: 11-character YouTube video GUID from the video URL (e.g. the value of the "v" query parameter).  | validation: minLength 11, maxLength 11
                       - name: mediaBundleAsset | type: MediaBundleAsset | description: HTML5 media bundle asset.  
                          - name: data | type: bytes | description: Raw binary data of the ZIP bundle.  
                    - name: resourceName | type: string | description: Google Ads resource name representing the asset group asset relationship. Format: customers/{customer_id}/assetGroupAssets/{asset_group_id}~{asset_id}~{field_type}  | validation: maxLength 1000
                    - name: assetFieldType | type: AssetFieldType | description: The role this asset plays within the asset group (e.g. HEADLINE, MARKETING_IMAGE).  
                             - enum:
                             -     HEADLINE: Short headline shown in ads. At least 3 required; up to 15 allowed. Maximum 30 characters.
                             -     LONG_HEADLINE: Longer headline used in certain ad formats. Exactly 1 required. Maximum 90 characters.
                             -     DESCRIPTION: Description shown below the headline. At least 2 required; up to 4 allowed. Maximum 90 characters.
                             -     BUSINESS_NAME: Business name shown in the ad. Exactly 1 required. Maximum 25 characters.
                             -     MARKETING_IMAGE: Landscape marketing image with a 1.91:1 aspect ratio (e.g. 1200x628). Multiple images allowed.
                             -     SQUARE_MARKETING_IMAGE: Square marketing image with a 1:1 aspect ratio (e.g. 1200x1200). Multiple images allowed.
                             -     LOGO: Square logo with a 1:1 aspect ratio (e.g. 1200x1200). A transparent background is recommended.
                             -     PORTRAIT_MARKETING_IMAGE: Portrait marketing image with a 4:5 aspect ratio (e.g. 960x1200). Multiple images allowed.
                             -     LANDSCAPE_LOGO: Landscape logo with a 4:1 aspect ratio (e.g. 1200x300).
                             -     CALL_TO_ACTION_SELECTION: Call-to-action button label. Select a value from CallToActionType. Optional.
                             -     YOUTUBE_VIDEO: YouTube video asset identified by an 11-character video ID. 1 to 5 videos recommended.
                             -     MEDIA_BUNDLE: HTML5 media bundle (ZIP file). Mutate-only in Google Ads.
                    - name: status | type: AssetGroupAssetStatus | description: Current serving status of the asset as reported by Google Ads.  
                             - enum:
                             -     UNKNOWN: Unknown or unspecified status.
                             -     ELIGIBLE: The asset is eligible to serve.
                             -     LIMITED: The asset is serving in a limited capacity due to policy restrictions.
                             -     PENDING: The asset is under Google Ads policy review and may serve in the future.
                             -     PAUSED: The asset is paused because its campaign has been paused.
                             -     DISAPPROVED: The asset has been disapproved by Google Ads and is not eligible to serve.
                             -     NOT_ELIGIBLE: The asset is not eligible to serve for reasons other than policy disapproval.
                    - name: _createdDate | type: Date | description: Date and time the asset was added to the system.  
              - name: assetGroupSignals | type: AssetGroupSignals | description: Signals guiding Google's targeting for the asset group. Applicable to PERFORMANCE_MAX_LEADS only.  
                 - name: signals | type: array<AssetGroupSignal> | description: Signals (search themes, audiences, etc.) that guide Google's targeting for the asset group.  | validation: maxItems 25
                    - ONE-OF: 
                       - name: searchTheme | type: SearchThemeInfo | description: Search theme signal that tells Google which search queries are relevant to this asset group.  
                          - name: text | type: string | description: The search theme text.  | validation: maxLength 1000
                    - name: resourceName | type: string | description: Google Ads resource name for the asset group signal. Format: customers/{customer_id}/assetGroupSignals/{asset_group_id}~{signal_id}  | validation: maxLength 1000
                    - name: approvalStatus | type: AssetGroupSignalApprovalStatus | description: Google Ads policy review result for this signal.  
                             - enum:
                             -     APPROVED: Search theme passed Google Ads policy review and is fully eligible to serve.
                             -     LIMITED: Search theme passed review but serves with restrictions due to policy.
                             -     DISAPPROVED: Search theme was disapproved by Google Ads policy and will not serve.
                             -     UNDER_REVIEW: Search theme is currently under Google Ads policy review.
                    - name: disapprovalReasons | type: DisapprovalReasons | description: Reasons why this signal was disapproved, if applicable.  
                       - name: values | type: array<string> | description: List of disapproval reason strings. Maximum 50 items.  | validation: maxItems 50, maxLength 1000
              - name: status | type: AssetGroupStatus | description: Current serving status of the asset group.  
                     - enum:
                     -     UNKNOWN: Unknown or unexpected state.
                     -     ELIGIBLE: Asset group is eligible and serving normally.
                     -     LIMITED: Asset group is serving but with policy limitations.
                     -     PENDING: Asset group is pending policy review.
                     -     DISAPPROVED: Asset group has been disapproved by Google.
                     -     PAUSED: Asset group is paused because its campaign is paused.
                     -     UNSPECIFIED: Status has not been specified.
           - name: url | type: string | description: Landing page URL that the campaign directs users to.  | validation: format WEB_URL
           - name: excludedKeywords | type: array<ExcludedKeywordCriterion> | description: Negative keywords that prevent the campaign from serving on matching queries. Applicable to PERFORMANCE_MAX_LEADS only. Up to 10,000.  | validation: maxItems 10000
           - name: assetAutomationSettings | type: array<AssetAutomationSetting> | description: Asset automation settings controlling which types of auto-generated assets Google may create.  | validation: maxItems 10
              - name: type | type: AssetAutomationType | description: The type of asset automation this setting applies to.  
                     - enum:
                     -     UNKNOWN: Unknown asset automation type.
                     -     FINAL_URL_EXPANSION_TEXT_ASSET_AUTOMATION: Automatically expand the final URL to match more relevant landing pages.
                     -     TEXT_ASSET_AUTOMATION: Automatically generate additional text assets (headlines, descriptions) to improve performance.
                     -     GENERATE_IMAGE_ENHANCEMENT: Automatically enhance existing images with generated variations.
                     -     GENERATE_ENHANCED_YOUTUBE_VIDEOS: Automatically generate enhanced versions of YouTube videos for better ad performance.
                     -     GENERATE_IMAGE_EXTRACTION: Automatically extract still images from videos to use as image assets.
              - name: status | type: AssetAutomationStatus | description: Whether this automation type is opted in or opted out.  
                     - enum:
                     -     UNKNOWN: Unknown asset automation status.
                     -     OPTED_OUT: Google will not automatically generate assets of this type.
                     -     OPTED_IN: Google may automatically generate assets of this type to improve performance.
           - name: daysInLearning | type: integer | description: Number of days elapsed in the current learning period. Applicable to PERFORMANCE_MAX_LEADS only. Absent when the campaign is not in a learning phase.  | validation: format int32
           - name: phone | type: PhoneNumber | description: Phone number displayed in call-based ads. This is a PII field.  
     - name: _id | type: string | description: Unique campaign GUID.  | validation: format GUID
     - name: accountId | type: string | description: Wix internal account GUID associated with this campaign.  | validation: format GUID
     - name: campaignType | type: CampaignType | description: Type of the campaign, either Smart or Performance Max.  
         - enum:
         -     UNKNOWN: Unknown campaign type.
         -     SMART: Simplified auto-managed campaign. Google handles bidding and ad delivery based on keyword themes and geo targets.
         -     PERFORMANCE_MAX: Goal-based campaign that runs across all Google channels (Search, Display, YouTube, etc.) using asset groups.
         -     PERFORMANCE_MAX_LEADS: Performance Max variant optimized for lead generation, such as phone calls and form fills.
     - name: status | type: CampaignStatus | description: Current campaign status, synced from Google Ads on each read.  
         - enum:
         -     UNKNOWN: Used for return value only. Represents a value unknown in this version.
         -     LIVE: Campaign is currently serving ads, depending on budget information.
         -     PAUSED: Campaign has been paused by the user.
         -     ENDED: Campaign has been ended.
         -     IN_REVIEW: The campaign was created but its budget hasn't been charged yet.
         -     ERROR: Error state.
         -     DISAPPROVED: Campaign is not approved.
         -     NOT_SERVING: Campaign is currently not serving due to budget limitations.
         -     DRAFT: Campaign is a draft.
         -     LEARNING: Campaign is in the learning phase. Currently supported only for Google Ads Performance Max leads campaigns.
     - name: resourceName | type: string | description: Google Ads resource name for this campaign, e.g. customers/{customerId}/campaigns/{campaignId}.  | validation: maxLength 1000
     - name: name | type: string | description: Display name of the campaign.  | validation: maxLength 1000
     - name: _createdDate | type: Date | description: Date and time the campaign was created.  
     - name: _updatedDate | type: Date | description: Date and time the campaign was last updated.  
     - name: actionDate | type: Date | description: Date and time of the most recent lifecycle action (pause, resume, launch, etc.).  
     - name: budget | type: CampaignBudget | description: Daily budget for the campaign.  
        - name: resourceName | type: string | description: Google Ads resource name for the campaign budget.  | validation: maxLength 1000
        - name: amountMicros | type: string | description: Daily budget amount in micros using the account's local currency. 1,000,000 micros equals 1 currency unit (e.g. 6,400,000 = $6.40). Google caps monthly spend at 30.4 times this amount. Minimum is approximately $6.40 USD for standard subscribers; maximum is approximately $127.60 USD standard, or up to $1,500 for high-spend accounts.  | validation: maxLength 1000
     - name: locations | type: array<LocationCriterion> | description: Geographic locations targeted by this campaign.  | validation: maxItems 1000
        - name: resourceName | type: string | description: Google Ads campaign criterion resource name. Format: customers/{customerId}/campaignCriteria/{campaignId}~{criterionId}  | validation: maxLength 1000
        - name: location | type: Location | description: The location being targeted.  
           - ONE-OF: 
              - name: geoTargetConstant | type: string | description: Google geo target constant resource name (e.g. geoTargetConstants/1023191).  | validation: maxLength 1000
              - name: proximity | type: ProximityAddress | description: Proximity criterion defining a circular area by geo point and radius.  
                 - name: address | type: Address | description: Full address. The address is a description of the geo point that does not affect ad serving.  
                    - name: postalCode | type: string | description: Postal code.  
                    - name: provinceCode | type: string | description: Province or state code.  
                    - name: countryCode | type: string | description: Country code.  
                    - name: provinceName | type: string | description: Province or state name.  
                    - name: streetAddress | type: string | description: Street address line 1.  
                    - name: streetAddress2 | type: string | description: Street address line 2.  
                    - name: cityName | type: string | description: Name of the city.  
                 - name: radiusUnits | type: RadiusUnits | description: The unit of measurement of the radius.  
                         - enum: MILES, KILOMETERS
                 - name: radius | type: integer | description: The radius of the proximity.  | validation: format int32
        - name: displayName | type: string | description: Human-readable location name shown in the UI (e.g. "New York, New York").  | validation: maxLength 1000
     - name: adSchedule | type: WeeklyAdSchedule | description: Weekly ad schedule defining the days and hours when ads can run.  
        - name: adShowAnytime | type: boolean | description: Whether ads show at any time during the day. When `true`, the daily schedules below are ignored.  
        - name: sunday | type: DailyAdSchedule | description: Sunday ad show range.  
           - name: resourceName | type: string | description: Campaign criterion resource names have the form: customers/{customerId}/campaignCriteria/{campaignId}~{criterionId}  
           - name: startTime | type: AdTime | description: The start time of showing an ad in a specific day.  
              - name: hour | type: integer | description: Starting hour in 24 hour time. This field must be between 0 and 23, inclusive.  | validation: format int32
              - name: minute | type: MinuteOfHour | description: Minutes after the start hour at which this schedule starts.  
                     - enum:
                     -     ZERO: Zero minutes past the hour.
                     -     FIFTEEN: Fifteen minutes past the hour.
                     -     THIRTY: Thirty minutes past the hour.
                     -     FORTY_FIVE: Forty-five minutes past the hour.
           - name: endTime | type: AdTime | description: Stop showing the ad at this time in a specific day.  
        - name: monday | type: DailyAdSchedule | description: Monday ad show range.  
        - name: tuesday | type: DailyAdSchedule | description: Tuesday ad show range.  
        - name: wednesday | type: DailyAdSchedule | description: Wednesday ad show range.  
        - name: thursday | type: DailyAdSchedule | description: Thursday ad show range.  
        - name: friday | type: DailyAdSchedule | description: Friday ad show range.  
        - name: saturday | type: DailyAdSchedule | description: Saturday ad show range.  
     - name: reportingKey | type: string | description: Value used as the utm_campaign parameter for conversion tracking.  | validation: maxLength 1000
     - name: campaignBrief | type: CampaignBrief | description: The brief used to generate this campaign. Only present on campaigns created via the GetCampaignSuggestions endpoint of SuggestionsService.  
        - name: _id | type: string | description: Campaign brief GUID (Wix internal)  | validation: format GUID
        - name: platformType | type: PlatformType | description: The type of platform the campaign will be created on (Google/FB)  
             - enum: UNKNOWN, GOOGLE, FACEBOOK
        - name: goal | type: string | description: Goal of the campaign  | validation: maxLength 1000
        - name: audience | type: string | description: Audience the campaign should target  | validation: maxLength 1000

 Possible Errors:
   HTTP Code: 404 | Status Code: NOT_FOUND | Application Code: ACCOUNT_NOT_FOUND | Description: Couldn't find the Google Ads account.
   HTTP Code: 428 | Status Code: FAILED_PRECONDITION | Application Code: ACCOUNT_CANCELED | Description: none


```

### Examples

### List all campaigns for a site
```javascript
import { campaigns } from '@wix/promote-google-ads';

const response = await campaigns.listCampaigns();

/* Promise resolves to:
 * {
 *   "campaigns": [
 *     {
 *       "id": "c9d8e7f6-a5b4-3210-fedc-ba9876543210",
 *       "accountId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
 *       "campaignType": "SMART",
 *       "status": "LIVE",
 *       "name": "Spring Bakery Promotion",
 *       "budget": {
 *         "amountMicros": "15000000"
 *       },
 *       "createdDate": "2024-03-01T09:00:00.000Z",
 *       "updatedDate": "2024-03-01T09:00:00.000Z"
 *     }
 *   ]
 * }
 */

```

### listCampaigns (self-hosted)
Self-hosted SDK calls require you to [create a client](https://dev.wix.com/docs/sdk/articles/work-with-the-sdk/about-the-wix-client.md).

```javascript
import { createClient } from '@wix/sdk';
import { campaigns } from '@wix/promote-google-ads';
// Import the auth strategy for the relevant access type
// Import the relevant host module if needed

const myWixClient = createClient ({
  modules: { campaigns },
  // Include the auth strategy and host as relevant
});


async function listCampaigns() {
  const response = await myWixClient.campaigns.listCampaigns();
};
```

---