---
title: "POST /v23/customers/{+customerId}/searchAds360:mutate"
method: POST
path: "/v23/customers/{+customerId}/searchAds360:mutate"
tags: ["customers"]
---

# POST /v23/customers/{+customerId}/searchAds360:mutate

`POST /v23/customers/{+customerId}/searchAds360:mutate`

## Request

- Base URL: `https://searchads360.googleapis.com`
- URL: `https://searchads360.googleapis.com/v23/customers/{+customerId}/searchAds360:mutate`
- Auth: OAuth 2 (implicit, authorization URL `https://accounts.google.com/o/oauth2/auth`, scopes: `https://www.googleapis.com/auth/doubleclicksearch`) and OAuth 2 (authorization code, authorization URL `https://accounts.google.com/o/oauth2/auth`, token URL `https://accounts.google.com/o/oauth2/token`, scopes: `https://www.googleapis.com/auth/doubleclicksearch`)

This method is essentially a wrapper around a series of mutate methods. The only features it offers over calling those methods directly are: - Atomic transactions - Temp resource names (described below) - Somewhat reduced latency over making a series of mutate calls Note: Only resources that support atomic transactions are included, so this method can't replace all calls to individual services. ## Atomic Transaction Benefits Atomicity makes error handling much easier. If you're making a series of changes and one fails, it can leave your account in an inconsistent state. With atomicity, you either reach the chosen state directly, or the request fails and you can retry. ## Temp Resource Names Temp resource names are a special type of resource name used to create a resource and reference that resource in the same request. For example, if a is created with `resource_name` equal to ``, that resource name can be reused in the `` field in the same request. That way, the two resources are created and linked atomically. To create a temp resource name, put a negative number in the part of the name that the server would normally allocate. Note: - Resources must be created with a temp name before the name can be reused. For example, the previous example would fail if the mutate order was reversed. - Temp names are not remembered across requests. - There's no limit to the number of temp names in a request. - Each temp name must use a unique negative number, even if the resource types differ. ## Latency It's important to group mutates by resource type or the request may time out and fail. Latency is roughly equal to a series of calls to individual mutate methods, where each change in resource type is a new call. For example, mutating is like 2 calls, while mutating is like 4 calls. List of thrown errors: [AdCustomizerError]() [AdError]() [AdGroupAdError]() [AdGroupCriterionError]() [AdGroupError]() [AssetError]() [AuthenticationError]() [AuthorizationError]() [BiddingError]() [CampaignBudgetError]() [CampaignCriterionError]() [CampaignError]() [CampaignExperimentError]() [CampaignSharedSetError]() [CollectionSizeError]() [ContextError]() [ConversionActionError]() [CriterionError]() [CustomerFeedError]() [DatabaseError]() [DateError]() [DateRangeError]() [DistinctError]() [ExtensionFeedItemError]() [ExtensionSettingError]() [FeedAttributeReferenceError]() [FeedError]() [FeedItemError]() [FeedItemSetError]() [FieldError]() [FieldMaskError]() [FunctionParsingError]() [HeaderError]() [ImageError]() [InternalError]() [KeywordPlanAdGroupKeywordError]() [KeywordPlanCampaignError]() [KeywordPlanError]() [LabelError]() [ListOperationError]() [MediaUploadError]() [MutateError]() [NewResourceCreationError]() [NullError]() [OperationAccessDeniedError]() [PolicyFindingError]() [PolicyViolationError]() [QuotaError]() [RangeError]() [RequestError]() [ResourceCountLimitExceededError]() [SettingError]() [SharedSetError]() [SizeLimitError]() [StringFormatError]() [StringLengthError]() [UrlFieldError]() [UserListError]() [YoutubeVideoRegistrationError]()

## Path parameters

- `customerId` string, required

## Request body

- GoogleAdsSearchads360V23ServicesMutateSearchAds360Request: Request message for Service.Mutate.
  - `mutateOperations` GoogleAdsSearchads360V23ServicesMutateOperation[]: Required. The list of operations to perform on individual resources.
    - `adGroupAdLabelOperation` GoogleAdsSearchads360V23ServicesAdGroupAdLabelOperation: A single operation (create, remove) on an ad group ad label.
      - `create` GoogleAdsSearchads360V23ResourcesAdGroupAdLabel: A relationship between an ad group ad and a label.
        - `adGroupAd` string: Immutable. The ad group ad to which the label is attached.
        - `label` string: Immutable. The label assigned to the ad group ad.
        - `ownerCustomerId` string, int64: Output only. The ID of the Customer which owns the label.
        - `resourceName` string: Immutable. The resource name of the ad group ad label. Ad group ad label resource names have the form: `customers/{owner_customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id}~{label_id}`
      - `remove` string: Remove operation: A resource name for the ad group ad label being removed, in this format: `customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id}~{label_id}`
    - `adGroupAdOperation` GoogleAdsSearchads360V23ServicesAdGroupAdOperation: A single operation (create, update, remove) on an ad group ad.
      - `create` GoogleAdsSearchads360V23ResourcesAdGroupAd: An ad group ad.
        - `actionItems` string[]: Output only. A list of recommendations to improve the ad strength. For example, a recommendation could be "Try adding a few more unique headlines or unpinning some assets.".
        - `ad` GoogleAdsSearchads360V23ResourcesAd: An ad.
          - `addedByGoogleAds` boolean: Output only. Indicates if this ad was automatically added by Google Ads and not by a user. For example, this could happen when ads are automatically created as suggestions for new ads based on knowledge of how existing ads are performing.
          - `appAd` GoogleAdsSearchads360V23CommonAppAdInfo: An app ad.
            - `appDeepLink` GoogleAdsSearchads360V23CommonAdAppDeepLinkAsset: An app deep link used inside an ad.
              - …
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
              - …
            - `html5MediaBundles` GoogleAdsSearchads360V23CommonAdMediaBundleAsset[]: List of media bundle assets that may be used with the ad.
              - …
            - `images` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of image assets that may be displayed with the ad.
              - …
            - `mandatoryAdText` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `youtubeVideos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of YouTube video assets that may be displayed with the ad.
              - …
          - `appEngagementAd` GoogleAdsSearchads360V23CommonAppEngagementAdInfo: App engagement ads allow you to write text encouraging a specific action in the app, like checking in, making a purchase, or booking a flight. They allow you to send users to a specific part of your app where they can find what they're looking for easier and faster.
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
              - …
            - `images` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of image assets that may be displayed with the ad.
              - …
            - `videos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of video assets that may be displayed with the ad.
              - …
          - `appPreRegistrationAd` GoogleAdsSearchads360V23CommonAppPreRegistrationAdInfo: App pre-registration ads link to your app or game listing on Google Play, and can run on Google Play, on YouTube (in-stream only), and within other apps and mobile websites on the Display Network. It will help capture people's interest in your app or game and generate an early install base for your app or game before a launch.
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
              - …
            - `images` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of image asset IDs whose images may be displayed with the ad.
              - …
            - `youtubeVideos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of YouTube video asset IDs whose videos may be displayed with the ad.
              - …
          - `demandGenCarouselAd` GoogleAdsSearchads360V23CommonDemandGenCarouselAdInfo: A Demand Gen carousel ad.
            - `businessName` string: Required. The Advertiser/brand name.
            - `callToActionText` string: Call to action text.
            - `carouselCards` GoogleAdsSearchads360V23CommonAdDemandGenCarouselCardAsset[]: Required. Carousel cards that will display with the ad. Min 2 max 10.
              - …
            - `description` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `headline` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `logoImage` GoogleAdsSearchads360V23CommonAdImageAsset: An image asset used inside an ad.
              - …
          - `demandGenMultiAssetAd` GoogleAdsSearchads360V23CommonDemandGenMultiAssetAdInfo: A Demand Gen multi asset ad.
            - `businessName` string: The Advertiser/brand name. Maximum display width is 25. Required.
            - `callToActionText` string: Call to action text.
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: The descriptive text of the ad. Maximum display width is 90. At least 1 and max 5 descriptions can be specified.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: Headline text asset of the ad. Maximum display width is 30. At least 1 and max 5 headlines can be specified.
              - …
            - `logoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Logo image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must be 1:1 (+-1%). At least 1 and max 5 logo images can be specified.
              - …
            - `marketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Marketing image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must be 1.91:1 (+-1%). Required if square_marketing_images is not present.
              - …
            - `portraitMarketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Portrait marketing image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 480x600 and the aspect ratio must be 4:5 (+-1%).
              - …
            - `squareMarketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Square marketing image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must be 1:1 (+-1%). Required if marketing_images is not present.
              - …
            - `tallPortraitMarketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Tall portrait marketing image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 600x1067 and the aspect ratio must be 9:16 (+-1%). Combined with `marketing_images`, `square_marketing_images`, and `portrait_marketing_images`, the maximum is 20.
              - …
          - `demandGenProductAd` GoogleAdsSearchads360V23CommonDemandGenProductAdInfo: A Demand Gen product ad.
            - `breadcrumb1` string: First part of text that appears in the ad with the displayed URL.
            - `breadcrumb2` string: Second part of text that appears in the ad with the displayed URL.
            - `businessName` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `callToAction` GoogleAdsSearchads360V23CommonAdCallToActionAsset: A call to action asset used inside an ad.
              - …
            - `description` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `headline` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `logoImage` GoogleAdsSearchads360V23CommonAdImageAsset: An image asset used inside an ad.
              - …
          - `demandGenVideoResponsiveAd` GoogleAdsSearchads360V23CommonDemandGenVideoResponsiveAdInfo: A Demand Gen video responsive ad.
            - `breadcrumb1` string: First part of text that appears in the ad with the displayed URL.
            - `breadcrumb2` string: Second part of text that appears in the ad with the displayed URL.
            - `businessName` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `callToActions` GoogleAdsSearchads360V23CommonAdCallToActionAsset[]: Assets of type CallToActionAsset used for the "Call To Action" button.
              - …
            - `companionBanners` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of image assets used for the companion banner. Currently, only a single value for the companion banner asset is supported.
              - …
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets used for the description.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets used for the short headline.
              - …
            - `logoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Logo image to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must be 1:1 (+-1%).
              - …
            - `longHeadlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets used for the long headline.
              - …
            - `videos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of YouTube video assets used for the ad.
              - …
          - `devicePreference` 'UNSPECIFIED' | 'UNKNOWN' | 'MOBILE' | 'TABLET' | 'DESKTOP' | 'CONNECTED_TV' | 'OTHER': The device preference for the ad. You can only specify a preference for mobile devices. When this preference is set the ad will be preferred over other ads when being displayed on a mobile device. The ad can still be displayed on other device types, for example, if no other ads are available. If unspecified (no device preference), all devices are targeted. This is only supported by some ad types.
          - `displayUploadAd` GoogleAdsSearchads360V23CommonDisplayUploadAdInfo: A generic type of display ad. The exact ad format is controlled by the `display_upload_product_type` field, which determines what kinds of data need to be included with the ad.
            - `displayUploadProductType` 'UNSPECIFIED' | 'UNKNOWN' | 'HTML5_UPLOAD_AD' | 'DYNAMIC_HTML5_EDUCATION_AD' | 'DYNAMIC_HTML5_FLIGHT_AD' | 'DYNAMIC_HTML5_HOTEL_RENTAL_AD' | 'DYNAMIC_HTML5_JOB_AD' | 'DYNAMIC_HTML5_LOCAL_AD' | 'DYNAMIC_HTML5_REAL_ESTATE_AD' | 'DYNAMIC_HTML5_CUSTOM_AD' | 'DYNAMIC_HTML5_TRAVEL_AD' | 'DYNAMIC_HTML5_HOTEL_AD': The product type of this ad. See comments on the enum for details.
            - `mediaBundle` GoogleAdsSearchads360V23CommonAdMediaBundleAsset: A media bundle asset used inside an ad.
              - …
          - `displayUrl` string: The URL that appears in the ad description for some ad formats.
          - `expandedDynamicSearchAd` GoogleAdsSearchads360V23CommonExpandedDynamicSearchAdInfo: An expanded dynamic search ad.
            - `description` string: The description of the ad.
            - `description2` string: The second description of the ad.
          - `expandedTextAd` GoogleAdsSearchads360V23CommonExpandedTextAdInfo: An expanded text ad. Expanded text ads are deprecated.
            - `description` string: The description of the ad.
            - `description2` string: The second description of the ad.
            - `headlinePart1` string: The first part of the ad's headline.
            - `headlinePart2` string: The second part of the ad's headline.
            - `headlinePart3` string: The third part of the ad's headline.
            - `path1` string: The text that can appear alongside the ad's displayed URL.
            - `path2` string: Additional text that can appear alongside the ad's displayed URL.
          - `finalAppUrls` GoogleAdsSearchads360V23CommonFinalAppUrl[]: A list of final app URLs that will be used on mobile if the user has the specific app installed.
            - `osType` 'UNSPECIFIED' | 'UNKNOWN' | 'IOS' | 'ANDROID': The operating system targeted by this URL. Required.
            - `url` string: The app deep link URL. Deep links specify a location in an app that corresponds to the content you'd like to show, and should be of the form {scheme}://{host_path} The scheme identifies which app to open. For your app, you can use a custom scheme that starts with the app's name. The host and path specify the unique location in the app where your content exists. Example: "exampleapp://productid_1234". Required.
          - `finalMobileUrls` string[]: The list of possible final mobile URLs after all cross-domain redirects for the ad.
          - `finalUrlSuffix` string: The suffix to use when constructing a final URL.
          - `finalUrls` string[]: The list of possible final URLs after all cross-domain redirects for the ad.
          - `hotelAd` GoogleAdsSearchads360V23CommonHotelAdInfo: A hotel ad.
          - `id` string, int64: Output only. The ID of the ad.
          - `imageAd` GoogleAdsSearchads360V23CommonImageAdInfo: An image ad.
            - `adIdToCopyImageFrom` string, int64: An ad ID to copy the image from.
            - `data` string, byte: Raw image data as bytes.
            - `imageAsset` GoogleAdsSearchads360V23CommonAdImageAsset: An image asset used inside an ad.
              - …
            - `imageUrl` string: URL of the full size image.
            - `mimeType` 'UNSPECIFIED' | 'UNKNOWN' | 'IMAGE_JPEG' | 'IMAGE_GIF' | 'IMAGE_PNG' | 'FLASH' | 'TEXT_HTML' | 'PDF' | 'MSWORD' | 'MSEXCEL' | 'RTF' | 'AUDIO_WAV' | 'AUDIO_MP3' | 'HTML5_AD_ZIP': The mime type of the image.
            - `name` string: The name of the image. If the image was created from a MediaFile, this is the MediaFile's name. If the image was created from bytes, this is empty.
            - `pixelHeight` string, int64: Height in pixels of the full size image.
            - `pixelWidth` string, int64: Width in pixels of the full size image.
            - `previewImageUrl` string: URL of the preview size image.
            - `previewPixelHeight` string, int64: Height in pixels of the preview size image.
            - `previewPixelWidth` string, int64: Width in pixels of the preview size image.
          - `legacyAppInstallAd` GoogleAdsSearchads360V23CommonLegacyAppInstallAdInfo: A legacy app install ad that only can be used by a few select customers.
            - `appId` string: The ID of the mobile app.
            - `appStore` 'UNSPECIFIED' | 'UNKNOWN' | 'APPLE_APP_STORE' | 'GOOGLE_PLAY' | 'WINDOWS_STORE' | 'WINDOWS_PHONE_STORE' | 'CN_APP_STORE': The app store the mobile app is available in.
            - `description1` string: The first description line of the ad.
            - `description2` string: The second description line of the ad.
            - `headline` string: The headline of the ad.
          - `legacyResponsiveDisplayAd` GoogleAdsSearchads360V23CommonLegacyResponsiveDisplayAdInfo: A legacy responsive display ad. Ads of this type are labeled 'Responsive ads' in the Google Ads UI.
            - `accentColor` string: The accent color of the ad in hexadecimal, for example, #ffffff for white. If one of `main_color` and `accent_color` is set, the other is required as well.
            - `allowFlexibleColor` boolean: Advertiser's consent to allow flexible color. When true, the ad may be served with different color if necessary. When false, the ad will be served with the specified colors or a neutral color. The default value is `true`. Must be true if `main_color` and `accent_color` are not set.
            - `businessName` string: The business name in the ad.
            - `callToActionText` string: The call-to-action text for the ad.
            - `description` string: The description of the ad.
            - `formatSetting` 'UNSPECIFIED' | 'UNKNOWN' | 'ALL_FORMATS' | 'NON_NATIVE' | 'NATIVE': Specifies which format the ad will be served in. Default is ALL_FORMATS.
            - `logoImage` string: The MediaFile resource name of the logo image used in the ad.
            - `longHeadline` string: The long version of the ad's headline.
            - `mainColor` string: The main color of the ad in hexadecimal, for example, #ffffff for white. If one of `main_color` and `accent_color` is set, the other is required as well.
            - `marketingImage` string: The MediaFile resource name of the marketing image used in the ad.
            - `pricePrefix` string: Prefix before price. For example, 'as low as'.
            - `promoText` string: Promotion text used for dynamic formats of responsive ads. For example 'Free two-day shipping'.
            - `shortHeadline` string: The short version of the ad's headline.
            - `squareLogoImage` string: The MediaFile resource name of the square logo image used in the ad.
            - `squareMarketingImage` string: The MediaFile resource name of the square marketing image used in the ad.
          - `localAd` GoogleAdsSearchads360V23CommonLocalAdInfo: A local ad.
            - `callToActions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for call-to-actions. When the ad serves the call-to-actions will be selected from this list. At least 1 and at most 5 call-to-actions must be specified.
              - …
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list. At least 1 and at most 5 descriptions must be specified.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list. At least 1 and at most 5 headlines must be specified.
              - …
            - `logoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of logo image assets that may be displayed with the ad. The images must be 128x128 pixels and not larger than 120KB. At least 1 and at most 5 image assets must be specified.
              - …
            - `marketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of marketing image assets that may be displayed with the ad. The images must be 314x600 pixels or 320x320 pixels. At least 1 and at most 20 image assets must be specified.
              - …
            - `path1` string: First part of optional text that can be appended to the URL in the ad.
            - `path2` string: Second part of optional text that can be appended to the URL in the ad. This field can only be set when `path1` is also set.
            - `videos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of YouTube video assets that may be displayed with the ad. At least 1 and at most 20 video assets must be specified.
              - …
          - `name` string: Immutable. The name of the ad. This is only used to be able to identify the ad. It does not need to be unique and does not affect the served ad.
          - `productAd` GoogleAdsSearchads360V23CommonSearchAds360ProductAdInfo: A Search Ads 360 product ad.
          - `resourceName` string: Immutable. The resource name of the ad. Ad resource names have the form: `customers/{customer_id}/ads/{ad_id}`
          - `responsiveDisplayAd` GoogleAdsSearchads360V23CommonResponsiveDisplayAdInfo: A responsive display ad.
            - `accentColor` string: The accent color of the ad in hexadecimal, for example, #ffffff for white. If one of `main_color` and `accent_color` is set, the other is required as well.
            - `allowFlexibleColor` boolean: Advertiser's consent to allow flexible color. When true, the ad may be served with different color if necessary. When false, the ad will be served with the specified colors or a neutral color. The default value is `true`. Must be true if `main_color` and `accent_color` are not set.
            - `businessName` string: The advertiser/brand name. Maximum display width is 25.
            - `callToActionText` string: The call-to-action text for the ad. Maximum display width is 30.
            - `controlSpec` GoogleAdsSearchads360V23CommonResponsiveDisplayAdControlSpec: Specification for various creative controls for a responsive display ad.
              - …
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: Descriptive texts for the ad. The maximum length is 90 characters. At least 1 and max 5 headlines can be specified.
              - …
            - `formatSetting` 'UNSPECIFIED' | 'UNKNOWN' | 'ALL_FORMATS' | 'NON_NATIVE' | 'NATIVE': Specifies which format the ad will be served in. Default is ALL_FORMATS.
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: Short format headlines for the ad. The maximum length is 30 characters. At least 1 and max 5 headlines can be specified.
              - …
            - `logoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Logo images to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 512x128 and the aspect ratio must be 4:1 (+-1%). Combined with `square_logo_images`, the maximum is 5.
              - …
            - `longHeadline` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `mainColor` string: The main color of the ad in hexadecimal, for example, #ffffff for white. If one of `main_color` and `accent_color` is set, the other is required as well.
            - `marketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Marketing images to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must be 1.91:1 (+-1%). At least one `marketing_image` is required. Combined with `square_marketing_images`, the maximum is 15.
              - …
            - `pricePrefix` string: Prefix before price. For example, 'as low as'.
            - `promoText` string: Promotion text used for dynamic formats of responsive ads. For example 'Free two-day shipping'.
            - `squareLogoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Square logo images to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must be 1:1 (+-1%). Combined with `logo_images`, the maximum is 5.
              - …
            - `squareMarketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Square marketing images to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must be 1:1 (+-1%). At least one square `marketing_image` is required. Combined with `marketing_images`, the maximum is 15.
              - …
            - `youtubeVideos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: Optional YouTube videos for the ad. A maximum of 5 videos can be specified.
              - …
          - `responsiveSearchAd` GoogleAdsSearchads360V23CommonResponsiveSearchAdInfo: A responsive search ad. Responsive search ads let you create an ad that adapts to show more text, and more relevant messages, to your customers. Enter multiple headlines and descriptions when creating a responsive search ad, and over time, Google Ads will automatically test different combinations and learn which combinations perform best. By adapting your ad's content to more closely match potential customers' search terms, responsive search ads may improve your campaign's performance. More information at https://support.google.com/google-ads/answer/7684791
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
              - …
            - `path1` string: First part of text that can be appended to the URL in the ad.
            - `path2` string: Second part of text that can be appended to the URL in the ad. This field can only be set when `path1` is also set.
          - `searchAds360ExpandedDynamicSearchAd` GoogleAdsSearchads360V23CommonSearchAds360ExpandedDynamicSearchAdInfo: An expanded dynamic search ad.
            - `adTrackingId` string, int64: The tracking id of the ad.
            - `description1` string: The first line of the ad's description.
            - `description2` string: The second line of the ad's description.
          - `searchAds360ExpandedTextAd` GoogleAdsSearchads360V23CommonSearchAds360ExpandedTextAdInfo: A Search Ads 360 expanded text ad. Expanded text ads are deprecated. Use SearchAds360ResponsiveSearchAd instead.
            - `adTrackingId` string, int64: The tracking id of the ad.
            - `description1` string: The first line of the ad's description.
            - `description2` string: The second line of the ad's description.
            - `headline` string: The headline of the ad.
            - `headline2` string: The second headline of the ad.
            - `headline3` string: The third headline of the ad.
            - `path1` string: Text appended to the auto-generated visible URL with a delimiter.
            - `path2` string: Text appended to path1 with a delimiter.
          - `searchAds360ResponsiveSearchAd` GoogleAdsSearchads360V23CommonSearchAds360ResponsiveSearchAdInfo: A Search Ads 360 responsive search ad.
            - `adTrackingId` string, int64: The tracking id of the ad.
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
              - …
            - `path1` string: Text appended to the auto-generated visible URL with a delimiter.
            - `path2` string: Text appended to path1 with a delimiter.
          - `searchAds360TextAd` GoogleAdsSearchads360V23CommonSearchAds360TextAdInfo: A Search Ads 360 text ad.
            - `adTrackingId` string, int64: The tracking id of the ad.
            - `description1` string: The first line of the ad's description.
            - `description2` string: The second line of the ad's description.
            - `displayMobileUrl` string: The displayed mobile URL of the ad.
            - `displayUrl` string: The displayed URL of the ad.
            - `headline` string: The headline of the ad.
          - `shoppingComparisonListingAd` GoogleAdsSearchads360V23CommonShoppingComparisonListingAdInfo: A Shopping Comparison Listing ad.
            - `headline` string: Headline of the ad. This field is required. Allowed length is between 25 and 45 characters.
          - `shoppingProductAd` GoogleAdsSearchads360V23CommonShoppingProductAdInfo: A standard Shopping ad.
          - `shoppingSmartAd` GoogleAdsSearchads360V23CommonShoppingSmartAdInfo: A Smart Shopping ad.
          - `smartCampaignAd` GoogleAdsSearchads360V23CommonSmartCampaignAdInfo: A Smart campaign ad.
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets, each of which corresponds to a description when the ad serves. This list consists of a minimum of 2 and up to 4 text assets.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets, each of which corresponds to a headline when the ad serves. This list consists of a minimum of 3 and up to 15 text assets.
              - …
          - `syntheticContentInfo` GoogleAdsSearchads360V23CommonSyntheticContentInfo: Container for synthetic content attestations from different sources, such as the advertiser and Google systems.
            - `advertiserAttestation` GoogleAdsSearchads360V23CommonSyntheticContentAttestation: Represents an attestation about synthetic content from a single source.
              - …
            - `systemAttestation` GoogleAdsSearchads360V23CommonSyntheticContentAttestation: Represents an attestation about synthetic content from a single source.
              - …
          - `systemManagedResourceSource` 'UNSPECIFIED' | 'UNKNOWN' | 'AD_VARIATIONS': Output only. If this ad is system managed, then this field will indicate the source. This field is read-only.
          - `textAd` GoogleAdsSearchads360V23CommonTextAdInfo: A text ad.
            - `description1` string: The first line of the ad's description.
            - `description2` string: The second line of the ad's description.
            - `headline` string: The headline of the ad.
          - `trackingUrlTemplate` string: The URL template for constructing a tracking URL.
          - `travelAd` GoogleAdsSearchads360V23CommonTravelAdInfo: A travel ad.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'TEXT_AD' | 'EXPANDED_TEXT_AD' | 'EXPANDED_DYNAMIC_SEARCH_AD' | 'HOTEL_AD' | 'SHOPPING_SMART_AD' | 'SHOPPING_PRODUCT_AD' | 'VIDEO_AD' | 'IMAGE_AD' | 'RESPONSIVE_SEARCH_AD' | 'LEGACY_RESPONSIVE_DISPLAY_AD' | 'APP_AD' | 'LEGACY_APP_INSTALL_AD' | 'RESPONSIVE_DISPLAY_AD' | 'LOCAL_AD' | 'HTML5_UPLOAD_AD' | 'DYNAMIC_HTML5_AD' | 'APP_ENGAGEMENT_AD' | 'SHOPPING_COMPARISON_LISTING_AD' | 'VIDEO_BUMPER_AD' | 'VIDEO_NON_SKIPPABLE_IN_STREAM_AD' | 'VIDEO_TRUEVIEW_IN_STREAM_AD' | 'VIDEO_RESPONSIVE_AD' | 'SMART_CAMPAIGN_AD' | 'CALL_AD' | 'APP_PRE_REGISTRATION_AD' | 'DEMAND_GEN_MULTI_ASSET_AD' | 'DEMAND_GEN_CAROUSEL_AD' | 'TRAVEL_AD' | 'DEMAND_GEN_VIDEO_RESPONSIVE_AD' | 'DEMAND_GEN_PRODUCT_AD' | 'MULTIMEDIA_AD': Output only. The type of ad.
          - `urlCollections` GoogleAdsSearchads360V23CommonUrlCollection[]: Additional URLs for the ad that are tagged with a unique identifier that can be referenced from other fields in the ad.
            - `finalMobileUrls` string[]: A list of possible final mobile URLs.
            - `finalUrls` string[]: A list of possible final URLs.
            - `trackingUrlTemplate` string: URL template for constructing a tracking URL.
            - `urlCollectionId` string: Unique identifier for this UrlCollection instance.
          - `urlCustomParameters` GoogleAdsSearchads360V23CommonCustomParameter[]: The list of mappings that can be used to substitute custom parameter tags in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`. For mutates, use url custom parameter operations.
            - `key` string: The key matching the parameter tag name.
            - `value` string: The value to be substituted.
        - `adGroup` string: Immutable. The ad group to which the ad belongs.
        - `adGroupAdAssetAutomationSettings` GoogleAdsSearchads360V23ResourcesAdGroupAdAssetAutomationSetting[]: Settings that control the types of asset automation. See the AssetAutomationTypeEnum documentation for the default opt in/out behavior of each type.
          - `assetAutomationStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'OPTED_IN' | 'OPTED_OUT': The opt-in/out status for the specified asset automation type.
          - `assetAutomationType` 'UNSPECIFIED' | 'UNKNOWN' | 'TEXT_ASSET_AUTOMATION' | 'GENERATE_VERTICAL_YOUTUBE_VIDEOS' | 'GENERATE_SHORTER_YOUTUBE_VIDEOS' | 'GENERATE_LANDING_PAGE_PREVIEW' | 'GENERATE_LANDING_PAGE_TEXT' | 'GENERATE_ENHANCED_YOUTUBE_VIDEOS' | 'GENERATE_IMAGE_ENHANCEMENT' | 'GENERATE_IMAGE_EXTRACTION' | 'GENERATE_DESIGN_VERSIONS_FOR_IMAGES' | 'FINAL_URL_EXPANSION_TEXT_ASSET_AUTOMATION' | 'GENERATE_VIDEOS_FROM_OTHER_ASSETS': The asset automation type that this setting configures.
        - `adStrength` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'NO_ADS' | 'POOR' | 'AVERAGE' | 'GOOD' | 'EXCELLENT': Output only. Overall ad strength for this ad group ad.
        - `creationTime` string: Output only. The timestamp when this ad_group_ad was created. The datetime is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss.ssssss" format.
        - `effectiveLabels` string[]: Output only. The resource names of effective labels attached to this ad. An effective label is a label inherited or directly assigned to this ad.
        - `engineId` string: Output only. ID of the ad in the external engine account. This field is for Search Ads 360 account only, for example, Yahoo Japan, Microsoft, Baidu etc. For non-Search Ads 360 entity, use "ad_group_ad.ad.id" instead.
        - `engineStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'AD_GROUP_AD_ELIGIBLE' | 'AD_GROUP_AD_INAPPROPRIATE_FOR_CAMPAIGN' | 'AD_GROUP_AD_MOBILE_URL_UNDER_REVIEW' | 'AD_GROUP_AD_PARTIALLY_INVALID' | 'AD_GROUP_AD_TO_BE_ACTIVATED' | 'AD_GROUP_AD_NOT_REVIEWED' | 'AD_GROUP_AD_ON_HOLD' | 'AD_GROUP_AD_PAUSED' | 'AD_GROUP_AD_REMOVED' | 'AD_GROUP_AD_PENDING_REVIEW' | 'AD_GROUP_AD_UNDER_REVIEW' | 'AD_GROUP_AD_APPROVED' | 'AD_GROUP_AD_DISAPPROVED' | 'AD_GROUP_AD_SERVING' | 'AD_GROUP_AD_ACCOUNT_PAUSED' | 'AD_GROUP_AD_CAMPAIGN_PAUSED' | 'AD_GROUP_AD_AD_GROUP_PAUSED': Output only. Additional status of the ad in the external engine account. Possible statuses (depending on the type of external account) include active, eligible, pending review, etc.
        - `labels` string[]: Output only. The resource names of labels attached to this ad group ad.
        - `lastModifiedTime` string: Output only. The datetime when this ad group ad was last modified. The datetime is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss.ssssss" format.
        - `policySummary` GoogleAdsSearchads360V23ResourcesAdGroupAdPolicySummary: Contains policy information for an ad.
          - `approvalStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'DISAPPROVED' | 'APPROVED_LIMITED' | 'APPROVED' | 'AREA_OF_INTEREST_ONLY': Output only. The overall approval status of this ad, calculated based on the status of its individual policy topic entries.
          - `policyTopicEntries` GoogleAdsSearchads360V23CommonPolicyTopicEntry[]: Output only. The list of policy findings for this ad.
            - `constraints` GoogleAdsSearchads360V23CommonPolicyTopicConstraint[]: Indicates how serving of this resource may be affected (for example, not serving in a country).
              - …
            - `evidences` GoogleAdsSearchads360V23CommonPolicyTopicEvidence[]: Additional information that explains policy finding (for example, the brand name for a trademark finding).
              - …
            - `topic` string: Policy topic this finding refers to. For example, "ALCOHOL", "TRADEMARKS_IN_AD_TEXT", or "DESTINATION_NOT_WORKING". The set of possible policy topics is not fixed for a particular API version and may change at any time.
            - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'PROHIBITED' | 'LIMITED' | 'FULLY_LIMITED' | 'DESCRIPTIVE' | 'BROADENING' | 'AREA_OF_INTEREST_ONLY': Describes the negative or positive effect this policy will have on serving.
          - `reviewStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'REVIEW_IN_PROGRESS' | 'REVIEWED' | 'UNDER_APPEAL' | 'ELIGIBLE_MAY_SERVE': Output only. Where in the review process this ad is.
        - `primaryStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'LIMITED' | 'NOT_ELIGIBLE': Output only. Provides aggregated view into why an ad group ad is not serving or not serving optimally.
        - `primaryStatusReasons` string[]: Output only. Provides reasons for why an ad group ad is not serving or not serving optimally.
        - `resourceName` string: Immutable. The resource name of the ad. Ad group ad resource names have the form: `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}`
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'PAUSED' | 'REMOVED': The status of the ad.
      - `policyValidationParameter` GoogleAdsSearchads360V23CommonPolicyValidationParameter: Parameter for controlling how policy exemption is done.
        - `exemptPolicyViolationKeys` GoogleAdsSearchads360V23CommonPolicyViolationKey[]: The list of policy violation keys that should not cause a `PolicyViolationError` to be reported. Not all policy violations are exemptable. Refer to the `is_exemptible` field in the returned `PolicyViolationError`. This field is used for keyword policy exemptions. If this field is populated, then `ignorable_policy_topics` must be empty. Resources that violate these policies will be saved, but will not be eligible to serve. They may begin serving at a later time due to a change in policies, re-review of the resource, or a change in advertiser certificates.
          - `policyName` string: Unique ID of the violated policy.
          - `violatingText` string: The text that violates the policy if specified. Otherwise, refers to the policy in general (for example, when requesting to be exempt from the whole policy). If not specified for criterion exemptions, the whole policy is implied. Must be specified for ad exemptions.
        - `ignorablePolicyTopics` string[]: The list of policy topics that should not cause a `PolicyFindingError` to be reported. This field is used for ad policy exemptions. It corresponds to the `PolicyTopicEntry.topic` field. If this field is populated, then `exempt_policy_violation_keys` must be empty. Resources that violate these policies will be saved, but will not be eligible to serve. They may begin serving at a later time due to a change in policies, re-review of the resource, or a change in advertiser certificates.
      - `remove` string: Remove operation: A resource name for the removed ad is expected, in this format: `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}`
      - `update` GoogleAdsSearchads360V23ResourcesAdGroupAd: An ad group ad.
        - `actionItems` string[]: Output only. A list of recommendations to improve the ad strength. For example, a recommendation could be "Try adding a few more unique headlines or unpinning some assets.".
        - `ad` GoogleAdsSearchads360V23ResourcesAd: An ad.
          - `addedByGoogleAds` boolean: Output only. Indicates if this ad was automatically added by Google Ads and not by a user. For example, this could happen when ads are automatically created as suggestions for new ads based on knowledge of how existing ads are performing.
          - `appAd` GoogleAdsSearchads360V23CommonAppAdInfo: An app ad.
            - `appDeepLink` GoogleAdsSearchads360V23CommonAdAppDeepLinkAsset: An app deep link used inside an ad.
              - …
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
              - …
            - `html5MediaBundles` GoogleAdsSearchads360V23CommonAdMediaBundleAsset[]: List of media bundle assets that may be used with the ad.
              - …
            - `images` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of image assets that may be displayed with the ad.
              - …
            - `mandatoryAdText` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `youtubeVideos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of YouTube video assets that may be displayed with the ad.
              - …
          - `appEngagementAd` GoogleAdsSearchads360V23CommonAppEngagementAdInfo: App engagement ads allow you to write text encouraging a specific action in the app, like checking in, making a purchase, or booking a flight. They allow you to send users to a specific part of your app where they can find what they're looking for easier and faster.
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
              - …
            - `images` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of image assets that may be displayed with the ad.
              - …
            - `videos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of video assets that may be displayed with the ad.
              - …
          - `appPreRegistrationAd` GoogleAdsSearchads360V23CommonAppPreRegistrationAdInfo: App pre-registration ads link to your app or game listing on Google Play, and can run on Google Play, on YouTube (in-stream only), and within other apps and mobile websites on the Display Network. It will help capture people's interest in your app or game and generate an early install base for your app or game before a launch.
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
              - …
            - `images` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of image asset IDs whose images may be displayed with the ad.
              - …
            - `youtubeVideos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of YouTube video asset IDs whose videos may be displayed with the ad.
              - …
          - `demandGenCarouselAd` GoogleAdsSearchads360V23CommonDemandGenCarouselAdInfo: A Demand Gen carousel ad.
            - `businessName` string: Required. The Advertiser/brand name.
            - `callToActionText` string: Call to action text.
            - `carouselCards` GoogleAdsSearchads360V23CommonAdDemandGenCarouselCardAsset[]: Required. Carousel cards that will display with the ad. Min 2 max 10.
              - …
            - `description` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `headline` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `logoImage` GoogleAdsSearchads360V23CommonAdImageAsset: An image asset used inside an ad.
              - …
          - `demandGenMultiAssetAd` GoogleAdsSearchads360V23CommonDemandGenMultiAssetAdInfo: A Demand Gen multi asset ad.
            - `businessName` string: The Advertiser/brand name. Maximum display width is 25. Required.
            - `callToActionText` string: Call to action text.
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: The descriptive text of the ad. Maximum display width is 90. At least 1 and max 5 descriptions can be specified.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: Headline text asset of the ad. Maximum display width is 30. At least 1 and max 5 headlines can be specified.
              - …
            - `logoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Logo image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must be 1:1 (+-1%). At least 1 and max 5 logo images can be specified.
              - …
            - `marketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Marketing image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must be 1.91:1 (+-1%). Required if square_marketing_images is not present.
              - …
            - `portraitMarketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Portrait marketing image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 480x600 and the aspect ratio must be 4:5 (+-1%).
              - …
            - `squareMarketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Square marketing image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must be 1:1 (+-1%). Required if marketing_images is not present.
              - …
            - `tallPortraitMarketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Tall portrait marketing image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 600x1067 and the aspect ratio must be 9:16 (+-1%). Combined with `marketing_images`, `square_marketing_images`, and `portrait_marketing_images`, the maximum is 20.
              - …
          - `demandGenProductAd` GoogleAdsSearchads360V23CommonDemandGenProductAdInfo: A Demand Gen product ad.
            - `breadcrumb1` string: First part of text that appears in the ad with the displayed URL.
            - `breadcrumb2` string: Second part of text that appears in the ad with the displayed URL.
            - `businessName` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `callToAction` GoogleAdsSearchads360V23CommonAdCallToActionAsset: A call to action asset used inside an ad.
              - …
            - `description` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `headline` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `logoImage` GoogleAdsSearchads360V23CommonAdImageAsset: An image asset used inside an ad.
              - …
          - `demandGenVideoResponsiveAd` GoogleAdsSearchads360V23CommonDemandGenVideoResponsiveAdInfo: A Demand Gen video responsive ad.
            - `breadcrumb1` string: First part of text that appears in the ad with the displayed URL.
            - `breadcrumb2` string: Second part of text that appears in the ad with the displayed URL.
            - `businessName` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `callToActions` GoogleAdsSearchads360V23CommonAdCallToActionAsset[]: Assets of type CallToActionAsset used for the "Call To Action" button.
              - …
            - `companionBanners` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of image assets used for the companion banner. Currently, only a single value for the companion banner asset is supported.
              - …
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets used for the description.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets used for the short headline.
              - …
            - `logoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Logo image to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must be 1:1 (+-1%).
              - …
            - `longHeadlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets used for the long headline.
              - …
            - `videos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of YouTube video assets used for the ad.
              - …
          - `devicePreference` 'UNSPECIFIED' | 'UNKNOWN' | 'MOBILE' | 'TABLET' | 'DESKTOP' | 'CONNECTED_TV' | 'OTHER': The device preference for the ad. You can only specify a preference for mobile devices. When this preference is set the ad will be preferred over other ads when being displayed on a mobile device. The ad can still be displayed on other device types, for example, if no other ads are available. If unspecified (no device preference), all devices are targeted. This is only supported by some ad types.
          - `displayUploadAd` GoogleAdsSearchads360V23CommonDisplayUploadAdInfo: A generic type of display ad. The exact ad format is controlled by the `display_upload_product_type` field, which determines what kinds of data need to be included with the ad.
            - `displayUploadProductType` 'UNSPECIFIED' | 'UNKNOWN' | 'HTML5_UPLOAD_AD' | 'DYNAMIC_HTML5_EDUCATION_AD' | 'DYNAMIC_HTML5_FLIGHT_AD' | 'DYNAMIC_HTML5_HOTEL_RENTAL_AD' | 'DYNAMIC_HTML5_JOB_AD' | 'DYNAMIC_HTML5_LOCAL_AD' | 'DYNAMIC_HTML5_REAL_ESTATE_AD' | 'DYNAMIC_HTML5_CUSTOM_AD' | 'DYNAMIC_HTML5_TRAVEL_AD' | 'DYNAMIC_HTML5_HOTEL_AD': The product type of this ad. See comments on the enum for details.
            - `mediaBundle` GoogleAdsSearchads360V23CommonAdMediaBundleAsset: A media bundle asset used inside an ad.
              - …
          - `displayUrl` string: The URL that appears in the ad description for some ad formats.
          - `expandedDynamicSearchAd` GoogleAdsSearchads360V23CommonExpandedDynamicSearchAdInfo: An expanded dynamic search ad.
            - `description` string: The description of the ad.
            - `description2` string: The second description of the ad.
          - `expandedTextAd` GoogleAdsSearchads360V23CommonExpandedTextAdInfo: An expanded text ad. Expanded text ads are deprecated.
            - `description` string: The description of the ad.
            - `description2` string: The second description of the ad.
            - `headlinePart1` string: The first part of the ad's headline.
            - `headlinePart2` string: The second part of the ad's headline.
            - `headlinePart3` string: The third part of the ad's headline.
            - `path1` string: The text that can appear alongside the ad's displayed URL.
            - `path2` string: Additional text that can appear alongside the ad's displayed URL.
          - `finalAppUrls` GoogleAdsSearchads360V23CommonFinalAppUrl[]: A list of final app URLs that will be used on mobile if the user has the specific app installed.
            - `osType` 'UNSPECIFIED' | 'UNKNOWN' | 'IOS' | 'ANDROID': The operating system targeted by this URL. Required.
            - `url` string: The app deep link URL. Deep links specify a location in an app that corresponds to the content you'd like to show, and should be of the form {scheme}://{host_path} The scheme identifies which app to open. For your app, you can use a custom scheme that starts with the app's name. The host and path specify the unique location in the app where your content exists. Example: "exampleapp://productid_1234". Required.
          - `finalMobileUrls` string[]: The list of possible final mobile URLs after all cross-domain redirects for the ad.
          - `finalUrlSuffix` string: The suffix to use when constructing a final URL.
          - `finalUrls` string[]: The list of possible final URLs after all cross-domain redirects for the ad.
          - `hotelAd` GoogleAdsSearchads360V23CommonHotelAdInfo: A hotel ad.
          - `id` string, int64: Output only. The ID of the ad.
          - `imageAd` GoogleAdsSearchads360V23CommonImageAdInfo: An image ad.
            - `adIdToCopyImageFrom` string, int64: An ad ID to copy the image from.
            - `data` string, byte: Raw image data as bytes.
            - `imageAsset` GoogleAdsSearchads360V23CommonAdImageAsset: An image asset used inside an ad.
              - …
            - `imageUrl` string: URL of the full size image.
            - `mimeType` 'UNSPECIFIED' | 'UNKNOWN' | 'IMAGE_JPEG' | 'IMAGE_GIF' | 'IMAGE_PNG' | 'FLASH' | 'TEXT_HTML' | 'PDF' | 'MSWORD' | 'MSEXCEL' | 'RTF' | 'AUDIO_WAV' | 'AUDIO_MP3' | 'HTML5_AD_ZIP': The mime type of the image.
            - `name` string: The name of the image. If the image was created from a MediaFile, this is the MediaFile's name. If the image was created from bytes, this is empty.
            - `pixelHeight` string, int64: Height in pixels of the full size image.
            - `pixelWidth` string, int64: Width in pixels of the full size image.
            - `previewImageUrl` string: URL of the preview size image.
            - `previewPixelHeight` string, int64: Height in pixels of the preview size image.
            - `previewPixelWidth` string, int64: Width in pixels of the preview size image.
          - `legacyAppInstallAd` GoogleAdsSearchads360V23CommonLegacyAppInstallAdInfo: A legacy app install ad that only can be used by a few select customers.
            - `appId` string: The ID of the mobile app.
            - `appStore` 'UNSPECIFIED' | 'UNKNOWN' | 'APPLE_APP_STORE' | 'GOOGLE_PLAY' | 'WINDOWS_STORE' | 'WINDOWS_PHONE_STORE' | 'CN_APP_STORE': The app store the mobile app is available in.
            - `description1` string: The first description line of the ad.
            - `description2` string: The second description line of the ad.
            - `headline` string: The headline of the ad.
          - `legacyResponsiveDisplayAd` GoogleAdsSearchads360V23CommonLegacyResponsiveDisplayAdInfo: A legacy responsive display ad. Ads of this type are labeled 'Responsive ads' in the Google Ads UI.
            - `accentColor` string: The accent color of the ad in hexadecimal, for example, #ffffff for white. If one of `main_color` and `accent_color` is set, the other is required as well.
            - `allowFlexibleColor` boolean: Advertiser's consent to allow flexible color. When true, the ad may be served with different color if necessary. When false, the ad will be served with the specified colors or a neutral color. The default value is `true`. Must be true if `main_color` and `accent_color` are not set.
            - `businessName` string: The business name in the ad.
            - `callToActionText` string: The call-to-action text for the ad.
            - `description` string: The description of the ad.
            - `formatSetting` 'UNSPECIFIED' | 'UNKNOWN' | 'ALL_FORMATS' | 'NON_NATIVE' | 'NATIVE': Specifies which format the ad will be served in. Default is ALL_FORMATS.
            - `logoImage` string: The MediaFile resource name of the logo image used in the ad.
            - `longHeadline` string: The long version of the ad's headline.
            - `mainColor` string: The main color of the ad in hexadecimal, for example, #ffffff for white. If one of `main_color` and `accent_color` is set, the other is required as well.
            - `marketingImage` string: The MediaFile resource name of the marketing image used in the ad.
            - `pricePrefix` string: Prefix before price. For example, 'as low as'.
            - `promoText` string: Promotion text used for dynamic formats of responsive ads. For example 'Free two-day shipping'.
            - `shortHeadline` string: The short version of the ad's headline.
            - `squareLogoImage` string: The MediaFile resource name of the square logo image used in the ad.
            - `squareMarketingImage` string: The MediaFile resource name of the square marketing image used in the ad.
          - `localAd` GoogleAdsSearchads360V23CommonLocalAdInfo: A local ad.
            - `callToActions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for call-to-actions. When the ad serves the call-to-actions will be selected from this list. At least 1 and at most 5 call-to-actions must be specified.
              - …
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list. At least 1 and at most 5 descriptions must be specified.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list. At least 1 and at most 5 headlines must be specified.
              - …
            - `logoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of logo image assets that may be displayed with the ad. The images must be 128x128 pixels and not larger than 120KB. At least 1 and at most 5 image assets must be specified.
              - …
            - `marketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of marketing image assets that may be displayed with the ad. The images must be 314x600 pixels or 320x320 pixels. At least 1 and at most 20 image assets must be specified.
              - …
            - `path1` string: First part of optional text that can be appended to the URL in the ad.
            - `path2` string: Second part of optional text that can be appended to the URL in the ad. This field can only be set when `path1` is also set.
            - `videos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of YouTube video assets that may be displayed with the ad. At least 1 and at most 20 video assets must be specified.
              - …
          - `name` string: Immutable. The name of the ad. This is only used to be able to identify the ad. It does not need to be unique and does not affect the served ad.
          - `productAd` GoogleAdsSearchads360V23CommonSearchAds360ProductAdInfo: A Search Ads 360 product ad.
          - `resourceName` string: Immutable. The resource name of the ad. Ad resource names have the form: `customers/{customer_id}/ads/{ad_id}`
          - `responsiveDisplayAd` GoogleAdsSearchads360V23CommonResponsiveDisplayAdInfo: A responsive display ad.
            - `accentColor` string: The accent color of the ad in hexadecimal, for example, #ffffff for white. If one of `main_color` and `accent_color` is set, the other is required as well.
            - `allowFlexibleColor` boolean: Advertiser's consent to allow flexible color. When true, the ad may be served with different color if necessary. When false, the ad will be served with the specified colors or a neutral color. The default value is `true`. Must be true if `main_color` and `accent_color` are not set.
            - `businessName` string: The advertiser/brand name. Maximum display width is 25.
            - `callToActionText` string: The call-to-action text for the ad. Maximum display width is 30.
            - `controlSpec` GoogleAdsSearchads360V23CommonResponsiveDisplayAdControlSpec: Specification for various creative controls for a responsive display ad.
              - …
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: Descriptive texts for the ad. The maximum length is 90 characters. At least 1 and max 5 headlines can be specified.
              - …
            - `formatSetting` 'UNSPECIFIED' | 'UNKNOWN' | 'ALL_FORMATS' | 'NON_NATIVE' | 'NATIVE': Specifies which format the ad will be served in. Default is ALL_FORMATS.
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: Short format headlines for the ad. The maximum length is 30 characters. At least 1 and max 5 headlines can be specified.
              - …
            - `logoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Logo images to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 512x128 and the aspect ratio must be 4:1 (+-1%). Combined with `square_logo_images`, the maximum is 5.
              - …
            - `longHeadline` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
              - …
            - `mainColor` string: The main color of the ad in hexadecimal, for example, #ffffff for white. If one of `main_color` and `accent_color` is set, the other is required as well.
            - `marketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Marketing images to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must be 1.91:1 (+-1%). At least one `marketing_image` is required. Combined with `square_marketing_images`, the maximum is 15.
              - …
            - `pricePrefix` string: Prefix before price. For example, 'as low as'.
            - `promoText` string: Promotion text used for dynamic formats of responsive ads. For example 'Free two-day shipping'.
            - `squareLogoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Square logo images to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must be 1:1 (+-1%). Combined with `logo_images`, the maximum is 5.
              - …
            - `squareMarketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Square marketing images to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must be 1:1 (+-1%). At least one square `marketing_image` is required. Combined with `marketing_images`, the maximum is 15.
              - …
            - `youtubeVideos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: Optional YouTube videos for the ad. A maximum of 5 videos can be specified.
              - …
          - `responsiveSearchAd` GoogleAdsSearchads360V23CommonResponsiveSearchAdInfo: A responsive search ad. Responsive search ads let you create an ad that adapts to show more text, and more relevant messages, to your customers. Enter multiple headlines and descriptions when creating a responsive search ad, and over time, Google Ads will automatically test different combinations and learn which combinations perform best. By adapting your ad's content to more closely match potential customers' search terms, responsive search ads may improve your campaign's performance. More information at https://support.google.com/google-ads/answer/7684791
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
              - …
            - `path1` string: First part of text that can be appended to the URL in the ad.
            - `path2` string: Second part of text that can be appended to the URL in the ad. This field can only be set when `path1` is also set.
          - `searchAds360ExpandedDynamicSearchAd` GoogleAdsSearchads360V23CommonSearchAds360ExpandedDynamicSearchAdInfo: An expanded dynamic search ad.
            - `adTrackingId` string, int64: The tracking id of the ad.
            - `description1` string: The first line of the ad's description.
            - `description2` string: The second line of the ad's description.
          - `searchAds360ExpandedTextAd` GoogleAdsSearchads360V23CommonSearchAds360ExpandedTextAdInfo: A Search Ads 360 expanded text ad. Expanded text ads are deprecated. Use SearchAds360ResponsiveSearchAd instead.
            - `adTrackingId` string, int64: The tracking id of the ad.
            - `description1` string: The first line of the ad's description.
            - `description2` string: The second line of the ad's description.
            - `headline` string: The headline of the ad.
            - `headline2` string: The second headline of the ad.
            - `headline3` string: The third headline of the ad.
            - `path1` string: Text appended to the auto-generated visible URL with a delimiter.
            - `path2` string: Text appended to path1 with a delimiter.
          - `searchAds360ResponsiveSearchAd` GoogleAdsSearchads360V23CommonSearchAds360ResponsiveSearchAdInfo: A Search Ads 360 responsive search ad.
            - `adTrackingId` string, int64: The tracking id of the ad.
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
              - …
            - `path1` string: Text appended to the auto-generated visible URL with a delimiter.
            - `path2` string: Text appended to path1 with a delimiter.
          - `searchAds360TextAd` GoogleAdsSearchads360V23CommonSearchAds360TextAdInfo: A Search Ads 360 text ad.
            - `adTrackingId` string, int64: The tracking id of the ad.
            - `description1` string: The first line of the ad's description.
            - `description2` string: The second line of the ad's description.
            - `displayMobileUrl` string: The displayed mobile URL of the ad.
            - `displayUrl` string: The displayed URL of the ad.
            - `headline` string: The headline of the ad.
          - `shoppingComparisonListingAd` GoogleAdsSearchads360V23CommonShoppingComparisonListingAdInfo: A Shopping Comparison Listing ad.
            - `headline` string: Headline of the ad. This field is required. Allowed length is between 25 and 45 characters.
          - `shoppingProductAd` GoogleAdsSearchads360V23CommonShoppingProductAdInfo: A standard Shopping ad.
          - `shoppingSmartAd` GoogleAdsSearchads360V23CommonShoppingSmartAdInfo: A Smart Shopping ad.
          - `smartCampaignAd` GoogleAdsSearchads360V23CommonSmartCampaignAdInfo: A Smart campaign ad.
            - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets, each of which corresponds to a description when the ad serves. This list consists of a minimum of 2 and up to 4 text assets.
              - …
            - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets, each of which corresponds to a headline when the ad serves. This list consists of a minimum of 3 and up to 15 text assets.
              - …
          - `syntheticContentInfo` GoogleAdsSearchads360V23CommonSyntheticContentInfo: Container for synthetic content attestations from different sources, such as the advertiser and Google systems.
            - `advertiserAttestation` GoogleAdsSearchads360V23CommonSyntheticContentAttestation: Represents an attestation about synthetic content from a single source.
              - …
            - `systemAttestation` GoogleAdsSearchads360V23CommonSyntheticContentAttestation: Represents an attestation about synthetic content from a single source.
              - …
          - `systemManagedResourceSource` 'UNSPECIFIED' | 'UNKNOWN' | 'AD_VARIATIONS': Output only. If this ad is system managed, then this field will indicate the source. This field is read-only.
          - `textAd` GoogleAdsSearchads360V23CommonTextAdInfo: A text ad.
            - `description1` string: The first line of the ad's description.
            - `description2` string: The second line of the ad's description.
            - `headline` string: The headline of the ad.
          - `trackingUrlTemplate` string: The URL template for constructing a tracking URL.
          - `travelAd` GoogleAdsSearchads360V23CommonTravelAdInfo: A travel ad.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'TEXT_AD' | 'EXPANDED_TEXT_AD' | 'EXPANDED_DYNAMIC_SEARCH_AD' | 'HOTEL_AD' | 'SHOPPING_SMART_AD' | 'SHOPPING_PRODUCT_AD' | 'VIDEO_AD' | 'IMAGE_AD' | 'RESPONSIVE_SEARCH_AD' | 'LEGACY_RESPONSIVE_DISPLAY_AD' | 'APP_AD' | 'LEGACY_APP_INSTALL_AD' | 'RESPONSIVE_DISPLAY_AD' | 'LOCAL_AD' | 'HTML5_UPLOAD_AD' | 'DYNAMIC_HTML5_AD' | 'APP_ENGAGEMENT_AD' | 'SHOPPING_COMPARISON_LISTING_AD' | 'VIDEO_BUMPER_AD' | 'VIDEO_NON_SKIPPABLE_IN_STREAM_AD' | 'VIDEO_TRUEVIEW_IN_STREAM_AD' | 'VIDEO_RESPONSIVE_AD' | 'SMART_CAMPAIGN_AD' | 'CALL_AD' | 'APP_PRE_REGISTRATION_AD' | 'DEMAND_GEN_MULTI_ASSET_AD' | 'DEMAND_GEN_CAROUSEL_AD' | 'TRAVEL_AD' | 'DEMAND_GEN_VIDEO_RESPONSIVE_AD' | 'DEMAND_GEN_PRODUCT_AD' | 'MULTIMEDIA_AD': Output only. The type of ad.
          - `urlCollections` GoogleAdsSearchads360V23CommonUrlCollection[]: Additional URLs for the ad that are tagged with a unique identifier that can be referenced from other fields in the ad.
            - `finalMobileUrls` string[]: A list of possible final mobile URLs.
            - `finalUrls` string[]: A list of possible final URLs.
            - `trackingUrlTemplate` string: URL template for constructing a tracking URL.
            - `urlCollectionId` string: Unique identifier for this UrlCollection instance.
          - `urlCustomParameters` GoogleAdsSearchads360V23CommonCustomParameter[]: The list of mappings that can be used to substitute custom parameter tags in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`. For mutates, use url custom parameter operations.
            - `key` string: The key matching the parameter tag name.
            - `value` string: The value to be substituted.
        - `adGroup` string: Immutable. The ad group to which the ad belongs.
        - `adGroupAdAssetAutomationSettings` GoogleAdsSearchads360V23ResourcesAdGroupAdAssetAutomationSetting[]: Settings that control the types of asset automation. See the AssetAutomationTypeEnum documentation for the default opt in/out behavior of each type.
          - `assetAutomationStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'OPTED_IN' | 'OPTED_OUT': The opt-in/out status for the specified asset automation type.
          - `assetAutomationType` 'UNSPECIFIED' | 'UNKNOWN' | 'TEXT_ASSET_AUTOMATION' | 'GENERATE_VERTICAL_YOUTUBE_VIDEOS' | 'GENERATE_SHORTER_YOUTUBE_VIDEOS' | 'GENERATE_LANDING_PAGE_PREVIEW' | 'GENERATE_LANDING_PAGE_TEXT' | 'GENERATE_ENHANCED_YOUTUBE_VIDEOS' | 'GENERATE_IMAGE_ENHANCEMENT' | 'GENERATE_IMAGE_EXTRACTION' | 'GENERATE_DESIGN_VERSIONS_FOR_IMAGES' | 'FINAL_URL_EXPANSION_TEXT_ASSET_AUTOMATION' | 'GENERATE_VIDEOS_FROM_OTHER_ASSETS': The asset automation type that this setting configures.
        - `adStrength` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'NO_ADS' | 'POOR' | 'AVERAGE' | 'GOOD' | 'EXCELLENT': Output only. Overall ad strength for this ad group ad.
        - `creationTime` string: Output only. The timestamp when this ad_group_ad was created. The datetime is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss.ssssss" format.
        - `effectiveLabels` string[]: Output only. The resource names of effective labels attached to this ad. An effective label is a label inherited or directly assigned to this ad.
        - `engineId` string: Output only. ID of the ad in the external engine account. This field is for Search Ads 360 account only, for example, Yahoo Japan, Microsoft, Baidu etc. For non-Search Ads 360 entity, use "ad_group_ad.ad.id" instead.
        - `engineStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'AD_GROUP_AD_ELIGIBLE' | 'AD_GROUP_AD_INAPPROPRIATE_FOR_CAMPAIGN' | 'AD_GROUP_AD_MOBILE_URL_UNDER_REVIEW' | 'AD_GROUP_AD_PARTIALLY_INVALID' | 'AD_GROUP_AD_TO_BE_ACTIVATED' | 'AD_GROUP_AD_NOT_REVIEWED' | 'AD_GROUP_AD_ON_HOLD' | 'AD_GROUP_AD_PAUSED' | 'AD_GROUP_AD_REMOVED' | 'AD_GROUP_AD_PENDING_REVIEW' | 'AD_GROUP_AD_UNDER_REVIEW' | 'AD_GROUP_AD_APPROVED' | 'AD_GROUP_AD_DISAPPROVED' | 'AD_GROUP_AD_SERVING' | 'AD_GROUP_AD_ACCOUNT_PAUSED' | 'AD_GROUP_AD_CAMPAIGN_PAUSED' | 'AD_GROUP_AD_AD_GROUP_PAUSED': Output only. Additional status of the ad in the external engine account. Possible statuses (depending on the type of external account) include active, eligible, pending review, etc.
        - `labels` string[]: Output only. The resource names of labels attached to this ad group ad.
        - `lastModifiedTime` string: Output only. The datetime when this ad group ad was last modified. The datetime is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss.ssssss" format.
        - `policySummary` GoogleAdsSearchads360V23ResourcesAdGroupAdPolicySummary: Contains policy information for an ad.
          - `approvalStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'DISAPPROVED' | 'APPROVED_LIMITED' | 'APPROVED' | 'AREA_OF_INTEREST_ONLY': Output only. The overall approval status of this ad, calculated based on the status of its individual policy topic entries.
          - `policyTopicEntries` GoogleAdsSearchads360V23CommonPolicyTopicEntry[]: Output only. The list of policy findings for this ad.
            - `constraints` GoogleAdsSearchads360V23CommonPolicyTopicConstraint[]: Indicates how serving of this resource may be affected (for example, not serving in a country).
              - …
            - `evidences` GoogleAdsSearchads360V23CommonPolicyTopicEvidence[]: Additional information that explains policy finding (for example, the brand name for a trademark finding).
              - …
            - `topic` string: Policy topic this finding refers to. For example, "ALCOHOL", "TRADEMARKS_IN_AD_TEXT", or "DESTINATION_NOT_WORKING". The set of possible policy topics is not fixed for a particular API version and may change at any time.
            - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'PROHIBITED' | 'LIMITED' | 'FULLY_LIMITED' | 'DESCRIPTIVE' | 'BROADENING' | 'AREA_OF_INTEREST_ONLY': Describes the negative or positive effect this policy will have on serving.
          - `reviewStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'REVIEW_IN_PROGRESS' | 'REVIEWED' | 'UNDER_APPEAL' | 'ELIGIBLE_MAY_SERVE': Output only. Where in the review process this ad is.
        - `primaryStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'LIMITED' | 'NOT_ELIGIBLE': Output only. Provides aggregated view into why an ad group ad is not serving or not serving optimally.
        - `primaryStatusReasons` string[]: Output only. Provides reasons for why an ad group ad is not serving or not serving optimally.
        - `resourceName` string: Immutable. The resource name of the ad. Ad group ad resource names have the form: `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}`
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'PAUSED' | 'REMOVED': The status of the ad.
      - `updateMask` string, google-fieldmask: FieldMask that determines which resource fields are modified in an update.
    - `adGroupAssetOperation` GoogleAdsSearchads360V23ServicesAdGroupAssetOperation: A single operation (create, update, remove) on an ad group asset.
      - `create` GoogleAdsSearchads360V23ResourcesAdGroupAsset: A link between an ad group and an asset.
        - `adGroup` string: Required. Immutable. The ad group to which the asset is linked.
        - `asset` string: Required. Immutable. The asset which is linked to the ad group.
        - `fieldType` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE' | 'DESCRIPTION' | 'MANDATORY_AD_TEXT' | 'MARKETING_IMAGE' | 'MEDIA_BUNDLE' | 'YOUTUBE_VIDEO' | 'BOOK_ON_GOOGLE' | 'LEAD_FORM' | 'PROMOTION' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'SITELINK' | 'MOBILE_APP' | 'HOTEL_CALLOUT' | 'CALL' | 'PRICE' | 'LONG_HEADLINE' | 'BUSINESS_NAME' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'VIDEO' | 'CALL_TO_ACTION_SELECTION' | 'AD_IMAGE' | 'BUSINESS_LOGO' | 'HOTEL_PROPERTY' | 'DEMAND_GEN_CAROUSEL_CARD' | 'BUSINESS_MESSAGE' | 'TALL_PORTRAIT_MARKETING_IMAGE' | 'LANDING_PAGE_PREVIEW' | 'LONG_DESCRIPTION' | 'CALL_TO_ACTION': Required. Immutable. Role that the asset takes under the linked ad group.
        - `primaryStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'LIMITED' | 'NOT_ELIGIBLE': Output only. Provides the PrimaryStatus of this asset link. Primary status is meant essentially to differentiate between the plain "status" field, which has advertiser set values of enabled, paused, or removed. The primary status takes into account other signals (for assets its mainly policy and quality approvals) to come up with a more comprehensive status to indicate its serving state.
        - `primaryStatusDetails` GoogleAdsSearchads360V23CommonAssetLinkPrimaryStatusDetails[]: Output only. Provides the details of the primary status and its associated reasons.
          - `assetDisapproved` GoogleAdsSearchads360V23CommonAssetDisapproved: Details related to AssetLinkPrimaryStatusReasonPB.ASSET_DISAPPROVED
            - `offlineEvaluationErrorReasons` string[]: Provides the quality evaluation disapproval reason of an asset.
          - `reason` 'UNSPECIFIED' | 'UNKNOWN' | 'ASSET_LINK_PAUSED' | 'ASSET_LINK_REMOVED' | 'ASSET_DISAPPROVED' | 'ASSET_UNDER_REVIEW' | 'ASSET_APPROVED_LABELED': Provides the reason of this PrimaryStatus.
          - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'LIMITED' | 'NOT_ELIGIBLE': Provides the PrimaryStatus of this status detail.
        - `primaryStatusReasons` string[]: Output only. Provides a list of reasons for why an asset is not serving or not serving at full capacity.
        - `resourceName` string: Immutable. The resource name of the ad group asset. AdGroupAsset resource names have the form: `customers/{customer_id}/adGroupAssets/{ad_group_id}~{asset_id}~{field_type}`
        - `source` 'UNSPECIFIED' | 'UNKNOWN' | 'ADVERTISER' | 'AUTOMATICALLY_CREATED': Output only. Source of the adgroup asset link.
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED' | 'PAUSED': Status of the ad group asset.
      - `remove` string: Remove operation: A resource name for the removed ad group asset is expected, in this format: `customers/{customer_id}/adGroupAssets/{ad_group_id}~{asset_id}~{field_type}`
      - `update` GoogleAdsSearchads360V23ResourcesAdGroupAsset: A link between an ad group and an asset.
        - `adGroup` string: Required. Immutable. The ad group to which the asset is linked.
        - `asset` string: Required. Immutable. The asset which is linked to the ad group.
        - `fieldType` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE' | 'DESCRIPTION' | 'MANDATORY_AD_TEXT' | 'MARKETING_IMAGE' | 'MEDIA_BUNDLE' | 'YOUTUBE_VIDEO' | 'BOOK_ON_GOOGLE' | 'LEAD_FORM' | 'PROMOTION' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'SITELINK' | 'MOBILE_APP' | 'HOTEL_CALLOUT' | 'CALL' | 'PRICE' | 'LONG_HEADLINE' | 'BUSINESS_NAME' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'VIDEO' | 'CALL_TO_ACTION_SELECTION' | 'AD_IMAGE' | 'BUSINESS_LOGO' | 'HOTEL_PROPERTY' | 'DEMAND_GEN_CAROUSEL_CARD' | 'BUSINESS_MESSAGE' | 'TALL_PORTRAIT_MARKETING_IMAGE' | 'LANDING_PAGE_PREVIEW' | 'LONG_DESCRIPTION' | 'CALL_TO_ACTION': Required. Immutable. Role that the asset takes under the linked ad group.
        - `primaryStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'LIMITED' | 'NOT_ELIGIBLE': Output only. Provides the PrimaryStatus of this asset link. Primary status is meant essentially to differentiate between the plain "status" field, which has advertiser set values of enabled, paused, or removed. The primary status takes into account other signals (for assets its mainly policy and quality approvals) to come up with a more comprehensive status to indicate its serving state.
        - `primaryStatusDetails` GoogleAdsSearchads360V23CommonAssetLinkPrimaryStatusDetails[]: Output only. Provides the details of the primary status and its associated reasons.
          - `assetDisapproved` GoogleAdsSearchads360V23CommonAssetDisapproved: Details related to AssetLinkPrimaryStatusReasonPB.ASSET_DISAPPROVED
            - `offlineEvaluationErrorReasons` string[]: Provides the quality evaluation disapproval reason of an asset.
          - `reason` 'UNSPECIFIED' | 'UNKNOWN' | 'ASSET_LINK_PAUSED' | 'ASSET_LINK_REMOVED' | 'ASSET_DISAPPROVED' | 'ASSET_UNDER_REVIEW' | 'ASSET_APPROVED_LABELED': Provides the reason of this PrimaryStatus.
          - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'LIMITED' | 'NOT_ELIGIBLE': Provides the PrimaryStatus of this status detail.
        - `primaryStatusReasons` string[]: Output only. Provides a list of reasons for why an asset is not serving or not serving at full capacity.
        - `resourceName` string: Immutable. The resource name of the ad group asset. AdGroupAsset resource names have the form: `customers/{customer_id}/adGroupAssets/{ad_group_id}~{asset_id}~{field_type}`
        - `source` 'UNSPECIFIED' | 'UNKNOWN' | 'ADVERTISER' | 'AUTOMATICALLY_CREATED': Output only. Source of the adgroup asset link.
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED' | 'PAUSED': Status of the ad group asset.
      - `updateMask` string, google-fieldmask: FieldMask that determines which resource fields are modified in an update.
    - `adGroupBidModifierOperation` GoogleAdsSearchads360V23ServicesAdGroupBidModifierOperation: A single operation (create, remove, update) on an ad group bid modifier.
      - `create` GoogleAdsSearchads360V23ResourcesAdGroupBidModifier: Represents an ad group bid modifier.
        - `adGroup` string: Immutable. The ad group to which this criterion belongs.
        - `baseAdGroup` string: Output only. The base ad group from which this draft/trial adgroup bid modifier was created. If ad_group is a base ad group then this field will be equal to ad_group. If the ad group was created in the draft or trial and has no corresponding base ad group, then this field will be null. This field is readonly.
        - `bidModifier` number, double: The modifier for the bid when the criterion matches. The modifier must be in the range: 0.1 - 10.0. Use 0 to opt out of a Device type.
        - `bidModifierSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN' | 'AD_GROUP': Output only. Bid modifier source.
        - `criterionId` string, int64: Output only. The ID of the criterion to bid modify. This field is ignored for mutates.
        - `device` GoogleAdsSearchads360V23CommonDeviceInfo: A device criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'MOBILE' | 'TABLET' | 'DESKTOP' | 'CONNECTED_TV' | 'OTHER': Type of the device.
        - `hotelAdvanceBookingWindow` GoogleAdsSearchads360V23CommonHotelAdvanceBookingWindowInfo: Criterion for number of days prior to the stay the booking is being made.
          - `maxDays` string, int64: High end of the number of days prior to the stay.
          - `minDays` string, int64: Low end of the number of days prior to the stay.
        - `hotelCheckInDateRange` GoogleAdsSearchads360V23CommonHotelCheckInDateRangeInfo: Criterion for a check-in date range.
          - `endDate` string: End date in the YYYY-MM-DD format.
          - `startDate` string: Start date in the YYYY-MM-DD format.
        - `hotelCheckInDay` GoogleAdsSearchads360V23CommonHotelCheckInDayInfo: Criterion for day of the week the booking is for.
          - `dayOfWeek` 'UNSPECIFIED' | 'UNKNOWN' | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY': The day of the week.
        - `hotelDateSelectionType` GoogleAdsSearchads360V23CommonHotelDateSelectionTypeInfo: Criterion for hotel date selection (default dates versus user selected).
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'DEFAULT_SELECTION' | 'USER_SELECTED': Type of the hotel date selection
        - `hotelLengthOfStay` GoogleAdsSearchads360V23CommonHotelLengthOfStayInfo: Criterion for length of hotel stay in nights.
          - `maxNights` string, int64: High end of the number of nights in the stay.
          - `minNights` string, int64: Low end of the number of nights in the stay.
        - `resourceName` string: Immutable. The resource name of the ad group bid modifier. Ad group bid modifier resource names have the form: `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}`
      - `remove` string: Remove operation: A resource name for the removed ad group bid modifier is expected, in this format: `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}`
      - `update` GoogleAdsSearchads360V23ResourcesAdGroupBidModifier: Represents an ad group bid modifier.
        - `adGroup` string: Immutable. The ad group to which this criterion belongs.
        - `baseAdGroup` string: Output only. The base ad group from which this draft/trial adgroup bid modifier was created. If ad_group is a base ad group then this field will be equal to ad_group. If the ad group was created in the draft or trial and has no corresponding base ad group, then this field will be null. This field is readonly.
        - `bidModifier` number, double: The modifier for the bid when the criterion matches. The modifier must be in the range: 0.1 - 10.0. Use 0 to opt out of a Device type.
        - `bidModifierSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN' | 'AD_GROUP': Output only. Bid modifier source.
        - `criterionId` string, int64: Output only. The ID of the criterion to bid modify. This field is ignored for mutates.
        - `device` GoogleAdsSearchads360V23CommonDeviceInfo: A device criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'MOBILE' | 'TABLET' | 'DESKTOP' | 'CONNECTED_TV' | 'OTHER': Type of the device.
        - `hotelAdvanceBookingWindow` GoogleAdsSearchads360V23CommonHotelAdvanceBookingWindowInfo: Criterion for number of days prior to the stay the booking is being made.
          - `maxDays` string, int64: High end of the number of days prior to the stay.
          - `minDays` string, int64: Low end of the number of days prior to the stay.
        - `hotelCheckInDateRange` GoogleAdsSearchads360V23CommonHotelCheckInDateRangeInfo: Criterion for a check-in date range.
          - `endDate` string: End date in the YYYY-MM-DD format.
          - `startDate` string: Start date in the YYYY-MM-DD format.
        - `hotelCheckInDay` GoogleAdsSearchads360V23CommonHotelCheckInDayInfo: Criterion for day of the week the booking is for.
          - `dayOfWeek` 'UNSPECIFIED' | 'UNKNOWN' | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY': The day of the week.
        - `hotelDateSelectionType` GoogleAdsSearchads360V23CommonHotelDateSelectionTypeInfo: Criterion for hotel date selection (default dates versus user selected).
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'DEFAULT_SELECTION' | 'USER_SELECTED': Type of the hotel date selection
        - `hotelLengthOfStay` GoogleAdsSearchads360V23CommonHotelLengthOfStayInfo: Criterion for length of hotel stay in nights.
          - `maxNights` string, int64: High end of the number of nights in the stay.
          - `minNights` string, int64: Low end of the number of nights in the stay.
        - `resourceName` string: Immutable. The resource name of the ad group bid modifier. Ad group bid modifier resource names have the form: `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}`
      - `updateMask` string, google-fieldmask: FieldMask that determines which resource fields are modified in an update.
    - `adGroupCriterionCustomizerOperation` GoogleAdsSearchads360V23ServicesAdGroupCriterionCustomizerOperation: A single operation (create, remove) on a customizer attribute.
      - `create` GoogleAdsSearchads360V23ResourcesAdGroupCriterionCustomizer: A customizer value for the associated CustomizerAttribute at the AdGroupCriterion level.
        - `adGroupCriterion` string: Immutable. The ad group criterion to which the customizer attribute is linked. It must be a keyword criterion.
        - `customizerAttribute` string: Required. Immutable. The customizer attribute which is linked to the ad group criterion.
        - `resourceName` string: Immutable. The resource name of the ad group criterion customizer. Ad group criterion customizer resource names have the form: `customers/{customer_id}/adGroupCriterionCustomizers/{ad_group_id}~{criterion_id}~{customizer_attribute_id}`
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED': Output only. The status of the ad group criterion customizer.
        - `value` GoogleAdsSearchads360V23CommonCustomizerValue: A customizer value that is referenced in customizer linkage entities like CustomerCustomizer, CampaignCustomizer, etc.
          - `stringValue` string: Required. Value to insert in creative text. Customizer values of all types are stored as string to make formatting unambiguous.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'TEXT' | 'NUMBER' | 'PRICE' | 'PERCENT': Required. The data type for the customizer value. It must match the attribute type. The string_value content must match the constraints associated with the type.
      - `remove` string: Remove operation: A resource name for the removed ad group criterion customizer is expected, in this format: `customers/{customer_id}/adGroupCriterionCustomizers/{ad_group_id}~{criterion_id}~{customizer_attribute_id}`
    - `adGroupCriterionLabelOperation` GoogleAdsSearchads360V23ServicesAdGroupCriterionLabelOperation: A single operation (create, remove) on an ad group criterion label.
      - `create` GoogleAdsSearchads360V23ResourcesAdGroupCriterionLabel: A relationship between an ad group criterion and a label.
        - `adGroupCriterion` string: Immutable. The ad group criterion to which the label is attached.
        - `label` string: Immutable. The label assigned to the ad group criterion.
        - `ownerCustomerId` string, int64: Output only. The ID of the Customer which owns the label.
        - `resourceName` string: Immutable. The resource name of the ad group criterion label. Ad group criterion label resource names have the form: `customers/{owner_customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}`
      - `remove` string: Remove operation: A resource name for the ad group criterion label being removed, in this format: `customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}`
    - `adGroupCriterionOperation` GoogleAdsSearchads360V23ServicesAdGroupCriterionOperation: A single operation (create, remove, update) on an ad group criterion.
      - `create` GoogleAdsSearchads360V23ResourcesAdGroupCriterion: An ad group criterion. The ad_group_criterion report only returns criteria that were explicitly added to the ad group.
        - `adGroup` string: Immutable. The ad group to which the criterion belongs.
        - `ageRange` GoogleAdsSearchads360V23CommonAgeRangeInfo: An age range criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'AGE_RANGE_18_24' | 'AGE_RANGE_25_34' | 'AGE_RANGE_35_44' | 'AGE_RANGE_45_54' | 'AGE_RANGE_55_64' | 'AGE_RANGE_65_UP' | 'AGE_RANGE_UNDETERMINED': Type of the age range.
        - `appPaymentModel` GoogleAdsSearchads360V23CommonAppPaymentModelInfo: An app payment model criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'PAID': Type of the app payment model.
        - `approvalStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'APPROVED' | 'DISAPPROVED' | 'PENDING_REVIEW' | 'UNDER_REVIEW': Output only. Approval status of the criterion.
        - `audience` GoogleAdsSearchads360V23CommonAudienceInfo: An audience criterion.
          - `audience` string: The Audience resource name.
        - `bidModifier` number, double: The modifier for the bid when the criterion matches. The modifier must be in the range: 0.1 - 10.0. Most targetable criteria types support modifiers.
        - `brandList` GoogleAdsSearchads360V23CommonBrandListInfo: A Brand List Criterion is used to specify a list of brands. The list is represented as a SharedSet id type BRAND_HINT. A criterion of this type can be either targeted or excluded.
          - `sharedSet` string: Shared set resource name of the brand list.
        - `combinedAudience` GoogleAdsSearchads360V23CommonCombinedAudienceInfo: A combined audience criterion.
          - `combinedAudience` string: The CombinedAudience resource name.
        - `cpcBidMicros` string, int64: The CPC (cost-per-click) bid.
        - `cpmBidMicros` string, int64: The CPM (cost-per-thousand viewable impressions) bid.
        - `cpvBidMicros` string, int64: The CPV (cost-per-view) bid.
        - `creationTime` string: Output only. The timestamp when this ad group criterion was created. The timestamp is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss" format.
        - `criterionId` string, int64: Output only. The ID of the criterion.
        - `customAffinity` GoogleAdsSearchads360V23CommonCustomAffinityInfo: A custom affinity criterion. A criterion of this type is only targetable.
          - `customAffinity` string: The CustomInterest resource name.
        - `customAudience` GoogleAdsSearchads360V23CommonCustomAudienceInfo: A custom audience criterion.
          - `customAudience` string: The CustomAudience resource name.
        - `customIntent` GoogleAdsSearchads360V23CommonCustomIntentInfo: A custom intent criterion. A criterion of this type is only targetable.
          - `customIntent` string: The CustomInterest resource name.
        - `disapprovalReasons` string[]: Output only. List of disapproval reasons of the criterion. The different reasons for disapproving a criterion can be found here: https://support.google.com/adspolicy/answer/6008942 This field is read-only.
        - `displayName` string: Output only. The display name of the criterion.
        - `effectiveCpcBidMicros` string, int64: Output only. The effective CPC (cost-per-click) bid.
        - `effectiveCpcBidSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective CPC bid.
        - `effectiveCpmBidMicros` string, int64: Output only. The effective CPM (cost-per-thousand viewable impressions) bid.
        - `effectiveCpmBidSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective CPM bid.
        - `effectiveCpvBidMicros` string, int64: Output only. The effective CPV (cost-per-view) bid.
        - `effectiveCpvBidSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective CPV bid.
        - `effectiveLabels` string[]: Output only. The resource names of effective labels attached to this ad group criterion. An effective label is a label inherited or directly assigned to this ad group criterion.
        - `effectivePercentCpcBidMicros` string, int64: Output only. The effective Percent CPC bid amount.
        - `effectivePercentCpcBidSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective Percent CPC bid.
        - `engineId` string: Output only. ID of the ad group criterion in the external engine account. This field is for non-Google Ads account only, for example, Yahoo Japan, Microsoft, Baidu etc. For Google Ads entity, use "ad_group_criterion.criterion_id" instead.
        - `engineStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'AD_GROUP_CRITERION_ELIGIBLE' | 'AD_GROUP_CRITERION_INAPPROPRIATE_FOR_CAMPAIGN' | 'AD_GROUP_CRITERION_INVALID_MOBILE_SEARCH' | 'AD_GROUP_CRITERION_INVALID_PC_SEARCH' | 'AD_GROUP_CRITERION_INVALID_SEARCH' | 'AD_GROUP_CRITERION_LOW_SEARCH_VOLUME' | 'AD_GROUP_CRITERION_MOBILE_URL_UNDER_REVIEW' | 'AD_GROUP_CRITERION_PARTIALLY_INVALID' | 'AD_GROUP_CRITERION_TO_BE_ACTIVATED' | 'AD_GROUP_CRITERION_UNDER_REVIEW' | 'AD_GROUP_CRITERION_NOT_REVIEWED' | 'AD_GROUP_CRITERION_ON_HOLD' | 'AD_GROUP_CRITERION_PENDING_REVIEW' | 'AD_GROUP_CRITERION_PAUSED' | 'AD_GROUP_CRITERION_REMOVED' | 'AD_GROUP_CRITERION_APPROVED' | 'AD_GROUP_CRITERION_DISAPPROVED' | 'AD_GROUP_CRITERION_SERVING' | 'AD_GROUP_CRITERION_ACCOUNT_PAUSED': Output only. The Engine Status for ad group criterion.
        - `extendedDemographic` GoogleAdsSearchads360V23CommonExtendedDemographicInfo: Represents an extended demographic criterion.
          - `extendedDemographicId` string, int64: Taxonomy id of the extended demographic group.
        - `finalMobileUrls` string[]: The list of possible final mobile URLs after all cross-domain redirects.
        - `finalUrlSuffix` string: URL template for appending params to final URL.
        - `finalUrls` string[]: The list of possible final URLs after all cross-domain redirects for the ad.
        - `gender` GoogleAdsSearchads360V23CommonGenderInfo: A gender criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'MALE' | 'FEMALE' | 'UNDETERMINED': Type of the gender.
        - `incomeRange` GoogleAdsSearchads360V23CommonIncomeRangeInfo: An income range criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'INCOME_RANGE_0_50' | 'INCOME_RANGE_50_60' | 'INCOME_RANGE_60_70' | 'INCOME_RANGE_70_80' | 'INCOME_RANGE_80_90' | 'INCOME_RANGE_90_UP' | 'INCOME_RANGE_UNDETERMINED': Type of the income range.
        - `keyword` GoogleAdsSearchads360V23CommonKeywordInfo: A keyword criterion.
          - `matchType` 'UNSPECIFIED' | 'UNKNOWN' | 'EXACT' | 'PHRASE' | 'BROAD': The match type of the keyword.
          - `text` string: The text of the keyword (at most 80 characters and 10 words).
        - `labels` string[]: Output only. The resource names of labels attached to this ad group criterion.
        - `language` GoogleAdsSearchads360V23CommonLanguageInfo: A language criterion.
          - `languageConstant` string: The language constant resource name.
        - `lastModifiedTime` string: Output only. The datetime when this ad group criterion was last modified. The datetime is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss.ssssss" format.
        - `lifeEvent` GoogleAdsSearchads360V23CommonLifeEventInfo: Represents a life event criterion.
          - `lifeEventId` string, int64: Taxonomy id of the life event.
        - `listingGroup` GoogleAdsSearchads360V23CommonListingGroupInfo: A listing group criterion.
          - `caseValue` GoogleAdsSearchads360V23CommonListingDimensionInfo: Listing dimensions for listing group criterion.
            - `activityCity` GoogleAdsSearchads360V23CommonActivityCityInfo: The city where the travel activity is available.
              - …
            - `activityCountry` GoogleAdsSearchads360V23CommonActivityCountryInfo: The country where the travel activity is available.
              - …
            - `activityId` GoogleAdsSearchads360V23CommonActivityIdInfo: Advertiser-specific activity ID.
              - …
            - `activityRating` GoogleAdsSearchads360V23CommonActivityRatingInfo: Rating of the activity as a number 1 to 5, where 5 is the best.
              - …
            - `activityState` GoogleAdsSearchads360V23CommonActivityStateInfo: The state where the travel activity is available.
              - …
            - `hotelCity` GoogleAdsSearchads360V23CommonHotelCityInfo: City the hotel is located in.
              - …
            - `hotelClass` GoogleAdsSearchads360V23CommonHotelClassInfo: Class of the hotel as a number of stars 1 to 5.
              - …
            - `hotelCountryRegion` GoogleAdsSearchads360V23CommonHotelCountryRegionInfo: Country or Region the hotel is located in.
              - …
            - `hotelId` GoogleAdsSearchads360V23CommonHotelIdInfo: Advertiser-specific hotel ID.
              - …
            - `hotelState` GoogleAdsSearchads360V23CommonHotelStateInfo: State the hotel is located in.
              - …
            - `productBrand` GoogleAdsSearchads360V23CommonProductBrandInfo: Brand of the product.
              - …
            - `productCategory` GoogleAdsSearchads360V23CommonProductCategoryInfo: Category of a product offer.
              - …
            - `productChannel` GoogleAdsSearchads360V23CommonProductChannelInfo: Locality of a product offer.
              - …
            - `productChannelExclusivity` GoogleAdsSearchads360V23CommonProductChannelExclusivityInfo: Availability of a product offer.
              - …
            - `productCondition` GoogleAdsSearchads360V23CommonProductConditionInfo: Condition of a product offer.
              - …
            - `productCustomAttribute` GoogleAdsSearchads360V23CommonProductCustomAttributeInfo: Custom attribute of a product offer.
              - …
            - `productGrouping` GoogleAdsSearchads360V23CommonProductGroupingInfo: Grouping of a product offer. This listing dimension is deprecated and it is supported only in Display campaigns.
              - …
            - `productItemId` GoogleAdsSearchads360V23CommonProductItemIdInfo: Item id of a product offer.
              - …
            - `productLabels` GoogleAdsSearchads360V23CommonProductLabelsInfo: Labels of a product offer. This listing dimension is deprecated and it is supported only in Display campaigns.
              - …
            - `productLegacyCondition` GoogleAdsSearchads360V23CommonProductLegacyConditionInfo: Legacy condition of a product offer. This listing dimension is deprecated and it is supported only in Display campaigns.
              - …
            - `productType` GoogleAdsSearchads360V23CommonProductTypeInfo: Type of a product offer.
              - …
            - `productTypeFull` GoogleAdsSearchads360V23CommonProductTypeFullInfo: Full type of a product offer. This listing dimension is deprecated and it is supported only in Display campaigns.
              - …
            - `unknownListingDimension` GoogleAdsSearchads360V23CommonUnknownListingDimensionInfo: Unknown listing dimension.
          - `parentAdGroupCriterion` string: Resource name of ad group criterion which is the parent listing group subdivision. Null for the root group.
          - `path` GoogleAdsSearchads360V23CommonListingDimensionPath: The path of dimensions defining a listing group.
            - `dimensions` GoogleAdsSearchads360V23CommonListingDimensionInfo[]: The complete path of dimensions through the listing group hierarchy, from the root (excluding the root itself) to this listing group.
              - …
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'SUBDIVISION' | 'UNIT': Type of the listing group.
        - `location` GoogleAdsSearchads360V23CommonLocationInfo: A location criterion.
          - `geoTargetConstant` string: The geo target constant resource name.
        - `mobileAppCategory` GoogleAdsSearchads360V23CommonMobileAppCategoryInfo: A mobile app category criterion.
          - `mobileAppCategoryConstant` string: The mobile app category constant resource name.
        - `mobileApplication` GoogleAdsSearchads360V23CommonMobileApplicationInfo: A mobile application criterion.
          - `appId` string: A string that uniquely identifies a mobile application to Google Ads API. The format of this string is "{platform}-{platform_native_id}", where platform is "1" for iOS apps and "2" for Android apps, and where platform_native_id is the mobile application identifier native to the corresponding platform. For iOS, this native identifier is the 9 digit string that appears at the end of an App Store URL (for example, "476943146" for "Flood-It! 2" whose App Store link is "http://itunes.apple.com/us/app/flood-it!-2/id476943146"). For Android, this native identifier is the application's package name (for example, "com.labpixies.colordrips" for "Color Drips" given Google Play link "https://play.google.com/store/apps/details?id=com.labpixies.colordrips"). A well formed app id for Google Ads API would thus be "1-476943146" for iOS and "2-com.labpixies.colordrips" for Android. This field is required and must be set in CREATE operations.
          - `name` string: Name of this mobile application.
        - `negative` boolean: Immutable. Whether to target (`false`) or exclude (`true`) the criterion. This field is immutable. To switch a criterion from positive to negative, remove then re-add it.
        - `parentalStatus` GoogleAdsSearchads360V23CommonParentalStatusInfo: A parental status criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'PARENT' | 'NOT_A_PARENT' | 'UNDETERMINED': Type of the parental status.
        - `percentCpcBidMicros` string, int64: The CPC bid amount, expressed as a fraction of the advertised price for some good or service. The valid range for the fraction is [0,1) and the value stored here is 1,000,000 * [fraction].
        - `placement` GoogleAdsSearchads360V23CommonPlacementInfo: A placement criterion. This can be used to modify bids for sites when targeting the content network.
          - `url` string: URL of the placement. For example, "http://www.domain.com".
        - `positionEstimates` GoogleAdsSearchads360V23ResourcesAdGroupCriterionPositionEstimates: Estimates for criterion bids at various positions.
          - `estimatedAddClicksAtFirstPositionCpc` string, int64: Output only. Estimate of how many clicks per week you might get by changing your keyword bid to the value in first_position_cpc_micros.
          - `estimatedAddCostAtFirstPositionCpc` string, int64: Output only. Estimate of how your cost per week might change when changing your keyword bid to the value in first_position_cpc_micros.
          - `firstPageCpcMicros` string, int64: Output only. The estimate of the CPC bid required for ad to be shown on first page of search results.
          - `firstPositionCpcMicros` string, int64: Output only. The estimate of the CPC bid required for ad to be displayed in first position, at the top of the first page of search results.
          - `topOfPageCpcMicros` string, int64: Output only. The estimate of the CPC bid required for ad to be displayed at the top of the first page of search results.
        - `primaryStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'NOT_ELIGIBLE': Output only. The primary status for the ad group criterion.
        - `primaryStatusReasons` string[]: Output only. The primary status reasons for the ad group criterion.
        - `qualityInfo` GoogleAdsSearchads360V23ResourcesAdGroupCriterionQualityInfo: A container for ad group criterion quality information.
          - `creativeQualityScore` 'UNSPECIFIED' | 'UNKNOWN' | 'BELOW_AVERAGE' | 'AVERAGE' | 'ABOVE_AVERAGE': Output only. The performance of the ad compared to other advertisers.
          - `postClickQualityScore` 'UNSPECIFIED' | 'UNKNOWN' | 'BELOW_AVERAGE' | 'AVERAGE' | 'ABOVE_AVERAGE': Output only. The quality score of the landing page.
          - `qualityScore` integer: Output only. The quality score. This field may not be populated if Google does not have enough information to determine a value.
          - `searchPredictedCtr` 'UNSPECIFIED' | 'UNKNOWN' | 'BELOW_AVERAGE' | 'AVERAGE' | 'ABOVE_AVERAGE': Output only. The click-through rate compared to that of other advertisers.
        - `resourceName` string: Immutable. The resource name of the ad group criterion. Ad group criterion resource names have the form: `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}`
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'PAUSED' | 'REMOVED': The status of the criterion. This is the status of the ad group criterion entity, set by the client. Note: UI reports may incorporate additional information that affects whether a criterion is eligible to run. In some cases a criterion that's REMOVED in the API can still show as enabled in the UI. For example, campaigns by default show to users of all age ranges unless excluded. The UI will show each age range as "enabled", since they're eligible to see the ads; but AdGroupCriterion.status will show "removed", since no positive criterion was added.
        - `systemServingStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'RARELY_SERVED': Output only. Serving status of the criterion.
        - `topic` GoogleAdsSearchads360V23CommonTopicInfo: A topic criterion. Use topics to target or exclude placements in the Google Display Network based on the category into which the placement falls (for example, "Pets & Animals/Pets/Dogs").
          - `path` string[]: The category to target or exclude. Each subsequent element in the array describes a more specific sub-category. For example, "Pets & Animals", "Pets", "Dogs" represents the "Pets & Animals/Pets/Dogs" category.
          - `topicConstant` string: The Topic Constant resource name.
        - `trackingUrlTemplate` string: The URL template for constructing a tracking URL.
        - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'KEYWORD' | 'PLACEMENT' | 'MOBILE_APP_CATEGORY' | 'MOBILE_APPLICATION' | 'DEVICE' | 'LOCATION' | 'LISTING_GROUP' | 'AD_SCHEDULE' | 'AGE_RANGE' | 'GENDER' | 'INCOME_RANGE' | 'PARENTAL_STATUS' | 'YOUTUBE_VIDEO' | 'YOUTUBE_CHANNEL' | 'USER_LIST' | 'PROXIMITY' | 'TOPIC' | 'LISTING_SCOPE' | 'LANGUAGE' | 'IP_BLOCK' | 'CONTENT_LABEL' | 'CARRIER' | 'USER_INTEREST' | 'WEBPAGE' | 'OPERATING_SYSTEM_VERSION' | 'APP_PAYMENT_MODEL' | 'MOBILE_DEVICE' | 'CUSTOM_AFFINITY' | 'CUSTOM_INTENT' | 'LOCATION_GROUP' | 'CUSTOM_AUDIENCE' | 'COMBINED_AUDIENCE' | 'KEYWORD_THEME' | 'AUDIENCE' | 'NEGATIVE_KEYWORD_LIST' | 'LOCAL_SERVICE_ID' | 'SEARCH_THEME' | 'BRAND' | 'BRAND_LIST' | 'LIFE_EVENT' | 'WEBPAGE_LIST' | 'VIDEO_LINEUP' | 'PLACEMENT_LIST' | 'VERTICAL_ADS_ITEM_GROUP_RULE_LIST' | 'VERTICAL_ADS_ITEM_GROUP_RULE': Output only. The type of the criterion.
        - `urlCustomParameters` GoogleAdsSearchads360V23CommonCustomParameter[]: The list of mappings used to substitute custom parameter tags in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
          - `key` string: The key matching the parameter tag name.
          - `value` string: The value to be substituted.
        - `userInterest` GoogleAdsSearchads360V23CommonUserInterestInfo: Represents a particular interest-based topic to be targeted.
          - `userInterestCategory` string: The UserInterest resource name.
        - `userList` GoogleAdsSearchads360V23CommonUserListInfo: A User List criterion. Represents a user list that is defined by the advertiser to be targeted.
          - `userList` string: The User List resource name.
        - `verticalAdsItemGroupRuleList` GoogleAdsSearchads360V23CommonVerticalAdsItemGroupRuleListInfo: A criterion for targeting a shared set of rules for item groups in Vertical Ads (e.g., for hotel ads).
          - `sharedSet` string: The shared set resource name of the vertical ads item group rule list.
        - `videoLineup` GoogleAdsSearchads360V23CommonVideoLineupInfo: A Video lineup criterion.
          - `videoLineupId` string, int64: ID for a Video lineup. Contact your Google business development representative for details.
        - `webpage` GoogleAdsSearchads360V23CommonWebpageInfo: Represents a criterion for targeting webpages of an advertiser's website.
          - `conditions` GoogleAdsSearchads360V23CommonWebpageConditionInfo[]: Conditions, or logical expressions, for webpage targeting. The list of webpage targeting conditions are and-ed together when evaluated for targeting. An empty list of conditions indicates all pages of the campaign's website are targeted. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `argument` string: Argument of webpage targeting condition.
            - `operand` 'UNSPECIFIED' | 'UNKNOWN' | 'URL' | 'CATEGORY' | 'PAGE_TITLE' | 'PAGE_CONTENT' | 'CUSTOM_LABEL': Operand of webpage targeting condition.
            - `operator` 'UNSPECIFIED' | 'UNKNOWN' | 'EQUALS' | 'CONTAINS': Operator of webpage targeting condition.
          - `coveragePercentage` number, double: Website criteria coverage percentage. This is the computed percentage of website coverage based on the website target, negative website target and negative keywords in the ad group and campaign. For instance, when coverage returns as 1, it indicates it has 100% coverage. This field is read-only.
          - `criterionName` string: The name of the criterion that is defined by this parameter. The name value will be used for identifying, sorting and filtering criteria with this type of parameters. This field is required for CREATE operations and is prohibited on UPDATE operations.
          - `sample` GoogleAdsSearchads360V23CommonWebpageSampleInfo: List of sample urls that match the website target
            - `sampleUrls` string[]: Webpage sample urls
        - `youtubeChannel` GoogleAdsSearchads360V23CommonYouTubeChannelInfo: A YouTube Channel criterion.
          - `channelId` string: The YouTube uploader channel id or the channel code of a YouTube channel.
        - `youtubeVideo` GoogleAdsSearchads360V23CommonYouTubeVideoInfo: A YouTube Video criterion.
          - `videoId` string: YouTube video id as it appears on the YouTube watch page.
      - `exemptPolicyViolationKeys` GoogleAdsSearchads360V23CommonPolicyViolationKey[]: The list of policy violation keys that should not cause a PolicyViolationError to be reported. Not all policy violations are exemptable, refer to the is_exemptible field in the returned PolicyViolationError. Resources violating these polices will be saved, but will not be eligible to serve. They may begin serving at a later time due to a change in policies, re-review of the resource, or a change in advertiser certificates.
        - `policyName` string: Unique ID of the violated policy.
        - `violatingText` string: The text that violates the policy if specified. Otherwise, refers to the policy in general (for example, when requesting to be exempt from the whole policy). If not specified for criterion exemptions, the whole policy is implied. Must be specified for ad exemptions.
      - `remove` string: Remove operation: A resource name for the removed criterion is expected, in this format: `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}`
      - `update` GoogleAdsSearchads360V23ResourcesAdGroupCriterion: An ad group criterion. The ad_group_criterion report only returns criteria that were explicitly added to the ad group.
        - `adGroup` string: Immutable. The ad group to which the criterion belongs.
        - `ageRange` GoogleAdsSearchads360V23CommonAgeRangeInfo: An age range criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'AGE_RANGE_18_24' | 'AGE_RANGE_25_34' | 'AGE_RANGE_35_44' | 'AGE_RANGE_45_54' | 'AGE_RANGE_55_64' | 'AGE_RANGE_65_UP' | 'AGE_RANGE_UNDETERMINED': Type of the age range.
        - `appPaymentModel` GoogleAdsSearchads360V23CommonAppPaymentModelInfo: An app payment model criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'PAID': Type of the app payment model.
        - `approvalStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'APPROVED' | 'DISAPPROVED' | 'PENDING_REVIEW' | 'UNDER_REVIEW': Output only. Approval status of the criterion.
        - `audience` GoogleAdsSearchads360V23CommonAudienceInfo: An audience criterion.
          - `audience` string: The Audience resource name.
        - `bidModifier` number, double: The modifier for the bid when the criterion matches. The modifier must be in the range: 0.1 - 10.0. Most targetable criteria types support modifiers.
        - `brandList` GoogleAdsSearchads360V23CommonBrandListInfo: A Brand List Criterion is used to specify a list of brands. The list is represented as a SharedSet id type BRAND_HINT. A criterion of this type can be either targeted or excluded.
          - `sharedSet` string: Shared set resource name of the brand list.
        - `combinedAudience` GoogleAdsSearchads360V23CommonCombinedAudienceInfo: A combined audience criterion.
          - `combinedAudience` string: The CombinedAudience resource name.
        - `cpcBidMicros` string, int64: The CPC (cost-per-click) bid.
        - `cpmBidMicros` string, int64: The CPM (cost-per-thousand viewable impressions) bid.
        - `cpvBidMicros` string, int64: The CPV (cost-per-view) bid.
        - `creationTime` string: Output only. The timestamp when this ad group criterion was created. The timestamp is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss" format.
        - `criterionId` string, int64: Output only. The ID of the criterion.
        - `customAffinity` GoogleAdsSearchads360V23CommonCustomAffinityInfo: A custom affinity criterion. A criterion of this type is only targetable.
          - `customAffinity` string: The CustomInterest resource name.
        - `customAudience` GoogleAdsSearchads360V23CommonCustomAudienceInfo: A custom audience criterion.
          - `customAudience` string: The CustomAudience resource name.
        - `customIntent` GoogleAdsSearchads360V23CommonCustomIntentInfo: A custom intent criterion. A criterion of this type is only targetable.
          - `customIntent` string: The CustomInterest resource name.
        - `disapprovalReasons` string[]: Output only. List of disapproval reasons of the criterion. The different reasons for disapproving a criterion can be found here: https://support.google.com/adspolicy/answer/6008942 This field is read-only.
        - `displayName` string: Output only. The display name of the criterion.
        - `effectiveCpcBidMicros` string, int64: Output only. The effective CPC (cost-per-click) bid.
        - `effectiveCpcBidSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective CPC bid.
        - `effectiveCpmBidMicros` string, int64: Output only. The effective CPM (cost-per-thousand viewable impressions) bid.
        - `effectiveCpmBidSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective CPM bid.
        - `effectiveCpvBidMicros` string, int64: Output only. The effective CPV (cost-per-view) bid.
        - `effectiveCpvBidSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective CPV bid.
        - `effectiveLabels` string[]: Output only. The resource names of effective labels attached to this ad group criterion. An effective label is a label inherited or directly assigned to this ad group criterion.
        - `effectivePercentCpcBidMicros` string, int64: Output only. The effective Percent CPC bid amount.
        - `effectivePercentCpcBidSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective Percent CPC bid.
        - `engineId` string: Output only. ID of the ad group criterion in the external engine account. This field is for non-Google Ads account only, for example, Yahoo Japan, Microsoft, Baidu etc. For Google Ads entity, use "ad_group_criterion.criterion_id" instead.
        - `engineStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'AD_GROUP_CRITERION_ELIGIBLE' | 'AD_GROUP_CRITERION_INAPPROPRIATE_FOR_CAMPAIGN' | 'AD_GROUP_CRITERION_INVALID_MOBILE_SEARCH' | 'AD_GROUP_CRITERION_INVALID_PC_SEARCH' | 'AD_GROUP_CRITERION_INVALID_SEARCH' | 'AD_GROUP_CRITERION_LOW_SEARCH_VOLUME' | 'AD_GROUP_CRITERION_MOBILE_URL_UNDER_REVIEW' | 'AD_GROUP_CRITERION_PARTIALLY_INVALID' | 'AD_GROUP_CRITERION_TO_BE_ACTIVATED' | 'AD_GROUP_CRITERION_UNDER_REVIEW' | 'AD_GROUP_CRITERION_NOT_REVIEWED' | 'AD_GROUP_CRITERION_ON_HOLD' | 'AD_GROUP_CRITERION_PENDING_REVIEW' | 'AD_GROUP_CRITERION_PAUSED' | 'AD_GROUP_CRITERION_REMOVED' | 'AD_GROUP_CRITERION_APPROVED' | 'AD_GROUP_CRITERION_DISAPPROVED' | 'AD_GROUP_CRITERION_SERVING' | 'AD_GROUP_CRITERION_ACCOUNT_PAUSED': Output only. The Engine Status for ad group criterion.
        - `extendedDemographic` GoogleAdsSearchads360V23CommonExtendedDemographicInfo: Represents an extended demographic criterion.
          - `extendedDemographicId` string, int64: Taxonomy id of the extended demographic group.
        - `finalMobileUrls` string[]: The list of possible final mobile URLs after all cross-domain redirects.
        - `finalUrlSuffix` string: URL template for appending params to final URL.
        - `finalUrls` string[]: The list of possible final URLs after all cross-domain redirects for the ad.
        - `gender` GoogleAdsSearchads360V23CommonGenderInfo: A gender criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'MALE' | 'FEMALE' | 'UNDETERMINED': Type of the gender.
        - `incomeRange` GoogleAdsSearchads360V23CommonIncomeRangeInfo: An income range criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'INCOME_RANGE_0_50' | 'INCOME_RANGE_50_60' | 'INCOME_RANGE_60_70' | 'INCOME_RANGE_70_80' | 'INCOME_RANGE_80_90' | 'INCOME_RANGE_90_UP' | 'INCOME_RANGE_UNDETERMINED': Type of the income range.
        - `keyword` GoogleAdsSearchads360V23CommonKeywordInfo: A keyword criterion.
          - `matchType` 'UNSPECIFIED' | 'UNKNOWN' | 'EXACT' | 'PHRASE' | 'BROAD': The match type of the keyword.
          - `text` string: The text of the keyword (at most 80 characters and 10 words).
        - `labels` string[]: Output only. The resource names of labels attached to this ad group criterion.
        - `language` GoogleAdsSearchads360V23CommonLanguageInfo: A language criterion.
          - `languageConstant` string: The language constant resource name.
        - `lastModifiedTime` string: Output only. The datetime when this ad group criterion was last modified. The datetime is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss.ssssss" format.
        - `lifeEvent` GoogleAdsSearchads360V23CommonLifeEventInfo: Represents a life event criterion.
          - `lifeEventId` string, int64: Taxonomy id of the life event.
        - `listingGroup` GoogleAdsSearchads360V23CommonListingGroupInfo: A listing group criterion.
          - `caseValue` GoogleAdsSearchads360V23CommonListingDimensionInfo: Listing dimensions for listing group criterion.
            - `activityCity` GoogleAdsSearchads360V23CommonActivityCityInfo: The city where the travel activity is available.
              - …
            - `activityCountry` GoogleAdsSearchads360V23CommonActivityCountryInfo: The country where the travel activity is available.
              - …
            - `activityId` GoogleAdsSearchads360V23CommonActivityIdInfo: Advertiser-specific activity ID.
              - …
            - `activityRating` GoogleAdsSearchads360V23CommonActivityRatingInfo: Rating of the activity as a number 1 to 5, where 5 is the best.
              - …
            - `activityState` GoogleAdsSearchads360V23CommonActivityStateInfo: The state where the travel activity is available.
              - …
            - `hotelCity` GoogleAdsSearchads360V23CommonHotelCityInfo: City the hotel is located in.
              - …
            - `hotelClass` GoogleAdsSearchads360V23CommonHotelClassInfo: Class of the hotel as a number of stars 1 to 5.
              - …
            - `hotelCountryRegion` GoogleAdsSearchads360V23CommonHotelCountryRegionInfo: Country or Region the hotel is located in.
              - …
            - `hotelId` GoogleAdsSearchads360V23CommonHotelIdInfo: Advertiser-specific hotel ID.
              - …
            - `hotelState` GoogleAdsSearchads360V23CommonHotelStateInfo: State the hotel is located in.
              - …
            - `productBrand` GoogleAdsSearchads360V23CommonProductBrandInfo: Brand of the product.
              - …
            - `productCategory` GoogleAdsSearchads360V23CommonProductCategoryInfo: Category of a product offer.
              - …
            - `productChannel` GoogleAdsSearchads360V23CommonProductChannelInfo: Locality of a product offer.
              - …
            - `productChannelExclusivity` GoogleAdsSearchads360V23CommonProductChannelExclusivityInfo: Availability of a product offer.
              - …
            - `productCondition` GoogleAdsSearchads360V23CommonProductConditionInfo: Condition of a product offer.
              - …
            - `productCustomAttribute` GoogleAdsSearchads360V23CommonProductCustomAttributeInfo: Custom attribute of a product offer.
              - …
            - `productGrouping` GoogleAdsSearchads360V23CommonProductGroupingInfo: Grouping of a product offer. This listing dimension is deprecated and it is supported only in Display campaigns.
              - …
            - `productItemId` GoogleAdsSearchads360V23CommonProductItemIdInfo: Item id of a product offer.
              - …
            - `productLabels` GoogleAdsSearchads360V23CommonProductLabelsInfo: Labels of a product offer. This listing dimension is deprecated and it is supported only in Display campaigns.
              - …
            - `productLegacyCondition` GoogleAdsSearchads360V23CommonProductLegacyConditionInfo: Legacy condition of a product offer. This listing dimension is deprecated and it is supported only in Display campaigns.
              - …
            - `productType` GoogleAdsSearchads360V23CommonProductTypeInfo: Type of a product offer.
              - …
            - `productTypeFull` GoogleAdsSearchads360V23CommonProductTypeFullInfo: Full type of a product offer. This listing dimension is deprecated and it is supported only in Display campaigns.
              - …
            - `unknownListingDimension` GoogleAdsSearchads360V23CommonUnknownListingDimensionInfo: Unknown listing dimension.
          - `parentAdGroupCriterion` string: Resource name of ad group criterion which is the parent listing group subdivision. Null for the root group.
          - `path` GoogleAdsSearchads360V23CommonListingDimensionPath: The path of dimensions defining a listing group.
            - `dimensions` GoogleAdsSearchads360V23CommonListingDimensionInfo[]: The complete path of dimensions through the listing group hierarchy, from the root (excluding the root itself) to this listing group.
              - …
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'SUBDIVISION' | 'UNIT': Type of the listing group.
        - `location` GoogleAdsSearchads360V23CommonLocationInfo: A location criterion.
          - `geoTargetConstant` string: The geo target constant resource name.
        - `mobileAppCategory` GoogleAdsSearchads360V23CommonMobileAppCategoryInfo: A mobile app category criterion.
          - `mobileAppCategoryConstant` string: The mobile app category constant resource name.
        - `mobileApplication` GoogleAdsSearchads360V23CommonMobileApplicationInfo: A mobile application criterion.
          - `appId` string: A string that uniquely identifies a mobile application to Google Ads API. The format of this string is "{platform}-{platform_native_id}", where platform is "1" for iOS apps and "2" for Android apps, and where platform_native_id is the mobile application identifier native to the corresponding platform. For iOS, this native identifier is the 9 digit string that appears at the end of an App Store URL (for example, "476943146" for "Flood-It! 2" whose App Store link is "http://itunes.apple.com/us/app/flood-it!-2/id476943146"). For Android, this native identifier is the application's package name (for example, "com.labpixies.colordrips" for "Color Drips" given Google Play link "https://play.google.com/store/apps/details?id=com.labpixies.colordrips"). A well formed app id for Google Ads API would thus be "1-476943146" for iOS and "2-com.labpixies.colordrips" for Android. This field is required and must be set in CREATE operations.
          - `name` string: Name of this mobile application.
        - `negative` boolean: Immutable. Whether to target (`false`) or exclude (`true`) the criterion. This field is immutable. To switch a criterion from positive to negative, remove then re-add it.
        - `parentalStatus` GoogleAdsSearchads360V23CommonParentalStatusInfo: A parental status criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'PARENT' | 'NOT_A_PARENT' | 'UNDETERMINED': Type of the parental status.
        - `percentCpcBidMicros` string, int64: The CPC bid amount, expressed as a fraction of the advertised price for some good or service. The valid range for the fraction is [0,1) and the value stored here is 1,000,000 * [fraction].
        - `placement` GoogleAdsSearchads360V23CommonPlacementInfo: A placement criterion. This can be used to modify bids for sites when targeting the content network.
          - `url` string: URL of the placement. For example, "http://www.domain.com".
        - `positionEstimates` GoogleAdsSearchads360V23ResourcesAdGroupCriterionPositionEstimates: Estimates for criterion bids at various positions.
          - `estimatedAddClicksAtFirstPositionCpc` string, int64: Output only. Estimate of how many clicks per week you might get by changing your keyword bid to the value in first_position_cpc_micros.
          - `estimatedAddCostAtFirstPositionCpc` string, int64: Output only. Estimate of how your cost per week might change when changing your keyword bid to the value in first_position_cpc_micros.
          - `firstPageCpcMicros` string, int64: Output only. The estimate of the CPC bid required for ad to be shown on first page of search results.
          - `firstPositionCpcMicros` string, int64: Output only. The estimate of the CPC bid required for ad to be displayed in first position, at the top of the first page of search results.
          - `topOfPageCpcMicros` string, int64: Output only. The estimate of the CPC bid required for ad to be displayed at the top of the first page of search results.
        - `primaryStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'NOT_ELIGIBLE': Output only. The primary status for the ad group criterion.
        - `primaryStatusReasons` string[]: Output only. The primary status reasons for the ad group criterion.
        - `qualityInfo` GoogleAdsSearchads360V23ResourcesAdGroupCriterionQualityInfo: A container for ad group criterion quality information.
          - `creativeQualityScore` 'UNSPECIFIED' | 'UNKNOWN' | 'BELOW_AVERAGE' | 'AVERAGE' | 'ABOVE_AVERAGE': Output only. The performance of the ad compared to other advertisers.
          - `postClickQualityScore` 'UNSPECIFIED' | 'UNKNOWN' | 'BELOW_AVERAGE' | 'AVERAGE' | 'ABOVE_AVERAGE': Output only. The quality score of the landing page.
          - `qualityScore` integer: Output only. The quality score. This field may not be populated if Google does not have enough information to determine a value.
          - `searchPredictedCtr` 'UNSPECIFIED' | 'UNKNOWN' | 'BELOW_AVERAGE' | 'AVERAGE' | 'ABOVE_AVERAGE': Output only. The click-through rate compared to that of other advertisers.
        - `resourceName` string: Immutable. The resource name of the ad group criterion. Ad group criterion resource names have the form: `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}`
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'PAUSED' | 'REMOVED': The status of the criterion. This is the status of the ad group criterion entity, set by the client. Note: UI reports may incorporate additional information that affects whether a criterion is eligible to run. In some cases a criterion that's REMOVED in the API can still show as enabled in the UI. For example, campaigns by default show to users of all age ranges unless excluded. The UI will show each age range as "enabled", since they're eligible to see the ads; but AdGroupCriterion.status will show "removed", since no positive criterion was added.
        - `systemServingStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'RARELY_SERVED': Output only. Serving status of the criterion.
        - `topic` GoogleAdsSearchads360V23CommonTopicInfo: A topic criterion. Use topics to target or exclude placements in the Google Display Network based on the category into which the placement falls (for example, "Pets & Animals/Pets/Dogs").
          - `path` string[]: The category to target or exclude. Each subsequent element in the array describes a more specific sub-category. For example, "Pets & Animals", "Pets", "Dogs" represents the "Pets & Animals/Pets/Dogs" category.
          - `topicConstant` string: The Topic Constant resource name.
        - `trackingUrlTemplate` string: The URL template for constructing a tracking URL.
        - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'KEYWORD' | 'PLACEMENT' | 'MOBILE_APP_CATEGORY' | 'MOBILE_APPLICATION' | 'DEVICE' | 'LOCATION' | 'LISTING_GROUP' | 'AD_SCHEDULE' | 'AGE_RANGE' | 'GENDER' | 'INCOME_RANGE' | 'PARENTAL_STATUS' | 'YOUTUBE_VIDEO' | 'YOUTUBE_CHANNEL' | 'USER_LIST' | 'PROXIMITY' | 'TOPIC' | 'LISTING_SCOPE' | 'LANGUAGE' | 'IP_BLOCK' | 'CONTENT_LABEL' | 'CARRIER' | 'USER_INTEREST' | 'WEBPAGE' | 'OPERATING_SYSTEM_VERSION' | 'APP_PAYMENT_MODEL' | 'MOBILE_DEVICE' | 'CUSTOM_AFFINITY' | 'CUSTOM_INTENT' | 'LOCATION_GROUP' | 'CUSTOM_AUDIENCE' | 'COMBINED_AUDIENCE' | 'KEYWORD_THEME' | 'AUDIENCE' | 'NEGATIVE_KEYWORD_LIST' | 'LOCAL_SERVICE_ID' | 'SEARCH_THEME' | 'BRAND' | 'BRAND_LIST' | 'LIFE_EVENT' | 'WEBPAGE_LIST' | 'VIDEO_LINEUP' | 'PLACEMENT_LIST' | 'VERTICAL_ADS_ITEM_GROUP_RULE_LIST' | 'VERTICAL_ADS_ITEM_GROUP_RULE': Output only. The type of the criterion.
        - `urlCustomParameters` GoogleAdsSearchads360V23CommonCustomParameter[]: The list of mappings used to substitute custom parameter tags in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
          - `key` string: The key matching the parameter tag name.
          - `value` string: The value to be substituted.
        - `userInterest` GoogleAdsSearchads360V23CommonUserInterestInfo: Represents a particular interest-based topic to be targeted.
          - `userInterestCategory` string: The UserInterest resource name.
        - `userList` GoogleAdsSearchads360V23CommonUserListInfo: A User List criterion. Represents a user list that is defined by the advertiser to be targeted.
          - `userList` string: The User List resource name.
        - `verticalAdsItemGroupRuleList` GoogleAdsSearchads360V23CommonVerticalAdsItemGroupRuleListInfo: A criterion for targeting a shared set of rules for item groups in Vertical Ads (e.g., for hotel ads).
          - `sharedSet` string: The shared set resource name of the vertical ads item group rule list.
        - `videoLineup` GoogleAdsSearchads360V23CommonVideoLineupInfo: A Video lineup criterion.
          - `videoLineupId` string, int64: ID for a Video lineup. Contact your Google business development representative for details.
        - `webpage` GoogleAdsSearchads360V23CommonWebpageInfo: Represents a criterion for targeting webpages of an advertiser's website.
          - `conditions` GoogleAdsSearchads360V23CommonWebpageConditionInfo[]: Conditions, or logical expressions, for webpage targeting. The list of webpage targeting conditions are and-ed together when evaluated for targeting. An empty list of conditions indicates all pages of the campaign's website are targeted. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `argument` string: Argument of webpage targeting condition.
            - `operand` 'UNSPECIFIED' | 'UNKNOWN' | 'URL' | 'CATEGORY' | 'PAGE_TITLE' | 'PAGE_CONTENT' | 'CUSTOM_LABEL': Operand of webpage targeting condition.
            - `operator` 'UNSPECIFIED' | 'UNKNOWN' | 'EQUALS' | 'CONTAINS': Operator of webpage targeting condition.
          - `coveragePercentage` number, double: Website criteria coverage percentage. This is the computed percentage of website coverage based on the website target, negative website target and negative keywords in the ad group and campaign. For instance, when coverage returns as 1, it indicates it has 100% coverage. This field is read-only.
          - `criterionName` string: The name of the criterion that is defined by this parameter. The name value will be used for identifying, sorting and filtering criteria with this type of parameters. This field is required for CREATE operations and is prohibited on UPDATE operations.
          - `sample` GoogleAdsSearchads360V23CommonWebpageSampleInfo: List of sample urls that match the website target
            - `sampleUrls` string[]: Webpage sample urls
        - `youtubeChannel` GoogleAdsSearchads360V23CommonYouTubeChannelInfo: A YouTube Channel criterion.
          - `channelId` string: The YouTube uploader channel id or the channel code of a YouTube channel.
        - `youtubeVideo` GoogleAdsSearchads360V23CommonYouTubeVideoInfo: A YouTube Video criterion.
          - `videoId` string: YouTube video id as it appears on the YouTube watch page.
      - `updateMask` string, google-fieldmask: FieldMask that determines which resource fields are modified in an update.
    - `adGroupCustomizerOperation` GoogleAdsSearchads360V23ServicesAdGroupCustomizerOperation: A single operation (create, remove) on a customizer attribute.
      - `create` GoogleAdsSearchads360V23ResourcesAdGroupCustomizer: A customizer value for the associated CustomizerAttribute at the AdGroup level.
        - `adGroup` string: Immutable. The ad group to which the customizer attribute is linked.
        - `customizerAttribute` string: Required. Immutable. The customizer attribute which is linked to the ad group.
        - `resourceName` string: Immutable. The resource name of the ad group customizer. Ad group customizer resource names have the form: `customers/{customer_id}/adGroupCustomizers/{ad_group_id}~{customizer_attribute_id}`
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED': Output only. The status of the ad group customizer.
        - `value` GoogleAdsSearchads360V23CommonCustomizerValue: A customizer value that is referenced in customizer linkage entities like CustomerCustomizer, CampaignCustomizer, etc.
          - `stringValue` string: Required. Value to insert in creative text. Customizer values of all types are stored as string to make formatting unambiguous.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'TEXT' | 'NUMBER' | 'PRICE' | 'PERCENT': Required. The data type for the customizer value. It must match the attribute type. The string_value content must match the constraints associated with the type.
      - `remove` string: Remove operation: A resource name for the removed ad group customizer is expected, in this format: `customers/{customer_id}/adGroupCustomizers/{ad_group_id}~{customizer_attribute_id}`
    - `adGroupLabelOperation` GoogleAdsSearchads360V23ServicesAdGroupLabelOperation: A single operation (create, remove) on an ad group label.
      - `create` GoogleAdsSearchads360V23ResourcesAdGroupLabel: A relationship between an ad group and a label.
        - `adGroup` string: Immutable. The ad group to which the label is attached.
        - `label` string: Immutable. The label assigned to the ad group.
        - `ownerCustomerId` string, int64: Output only. The ID of the Customer which owns the label.
        - `resourceName` string: Immutable. The resource name of the ad group label. Ad group label resource names have the form: `customers/{owner_customer_id}/adGroupLabels/{ad_group_id}~{label_id}`
      - `remove` string: Remove operation: A resource name for the ad group label being removed, in this format: `customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}`
    - `adGroupOperation` GoogleAdsSearchads360V23ServicesAdGroupOperation: A single operation (create, update, remove) on an ad group.
      - `create` GoogleAdsSearchads360V23ResourcesAdGroup: An ad group.
        - `adRotationMode` 'UNSPECIFIED' | 'UNKNOWN' | 'OPTIMIZE' | 'ROTATE_FOREVER': The ad rotation mode of the ad group.
        - `aiMaxAdGroupSetting` GoogleAdsSearchads360V23ResourcesAdGroupAiMaxAdGroupSetting: Settings for AI Max feature in standard search adgroups.
          - `disableSearchTermMatching` boolean: Disable search term matching for this adgroup when AI Max is enabled. Search term matching uses broad match, asset-based, and landing page-based technology to improve reach.
        - `audienceSetting` GoogleAdsSearchads360V23ResourcesAdGroupAudienceSetting: Settings for the audience targeting.
          - `useAudienceGrouped` boolean: Immutable. If true, this ad group uses an Audience resource for audience targeting. If false, this ad group may use audience segment criteria instead.
        - `baseAdGroup` string: Output only. For draft or experiment ad groups, this field is the resource name of the base ad group from which this ad group was created. If a draft or experiment ad group does not have a base ad group, then this field is null. For base ad groups, this field equals the ad group resource name. This field is read-only.
        - `campaign` string: Immutable. The campaign to which the ad group belongs.
        - `cpcBidMicros` string, int64: The maximum CPC (cost-per-click) bid. This field is used when the ad group's effective bidding strategy is Manual CPC. This field is not applicable and will be ignored if the ad group's campaign is using a portfolio bidding strategy.
        - `cpmBidMicros` string, int64: The maximum CPM (cost-per-thousand viewable impressions) bid.
        - `cpvBidMicros` string, int64: The CPV (cost-per-view) bid.
        - `creationTime` string: Output only. The timestamp when this ad_group was created. The timestamp is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss" format.
        - `demandGenAdGroupSettings` GoogleAdsSearchads360V23ResourcesAdGroupDemandGenAdGroupSettings: Settings for Demand Gen ad groups.
          - `channelControls` GoogleAdsSearchads360V23ResourcesAdGroupDemandGenAdGroupSettingsDemandGenChannelControls: Channel controls for Demand Gen ad groups.
            - `channelConfig` 'UNSPECIFIED' | 'UNKNOWN' | 'CHANNEL_STRATEGY' | 'SELECTED_CHANNELS': Output only. Channel configuration reflecting which field in the oneof is populated.
            - `channelStrategy` 'UNSPECIFIED' | 'UNKNOWN' | 'ALL_CHANNELS' | 'ALL_OWNED_AND_OPERATED_CHANNELS': High level channel strategy.
            - `selectedChannels` GoogleAdsSearchads360V23ResourcesAdGroupDemandGenAdGroupSettingsDemandGenChannelControlsDemandGenSelectedChannels: Explicitly selected channels for channel controls in Demand Gen ad groups.
              - …
        - `displayCustomBidDimension` 'UNSPECIFIED' | 'UNKNOWN' | 'KEYWORD' | 'AUDIENCE' | 'TOPIC' | 'GENDER' | 'AGE_RANGE' | 'PLACEMENT' | 'PARENTAL_STATUS' | 'INCOME_RANGE': Lets advertisers specify a targeting dimension on which to place absolute bids. This is only applicable for campaigns that target only the display network and not search.
        - `effectiveCpcBidMicros` string, int64: Output only. Value will be same as that of the CPC (cost-per-click) bid value when the bidding strategy is one of manual cpc, enhanced cpc, page one promoted or target outrank share, otherwise the value will be null.
        - `effectiveLabels` string[]: Output only. The resource names of effective labels attached to this ad group. An effective label is a label inherited or directly assigned to this ad group.
        - `effectiveTargetCpaMicros` string, int64: Output only. The effective target CPA (cost-per-acquisition). This field is read-only.
        - `effectiveTargetCpaSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective target CPA. This field is read-only.
        - `effectiveTargetCpc` string, int64: Output only. The effective target CPC (cost-per-click). This field is read-only.
        - `effectiveTargetCpcSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective target CPC. This field is read-only.
        - `effectiveTargetRoas` number, double: Output only. The effective target ROAS (return-on-ad-spend). This field is read-only.
        - `effectiveTargetRoasSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective target ROAS. This field is read-only.
        - `endDate` string: Output only. Date when the ad group ends serving ads. By default, the ad group ends on the ad group's end date. If this field is set, then the ad group ends at the end of the specified date in the customer's time zone. This field is only available for Microsoft Advertising and Facebook gateway accounts. Format: YYYY-MM-DD Example: 2019-03-14
        - `engineId` string: Output only. ID of the ad group in the external engine account. This field is for non-Google Ads account only, for example, Yahoo Japan, Microsoft, Baidu etc. For Google Ads entity, use "ad_group.id" instead.
        - `engineStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'AD_GROUP_ELIGIBLE' | 'AD_GROUP_EXPIRED' | 'AD_GROUP_REMOVED' | 'AD_GROUP_DRAFT' | 'AD_GROUP_PAUSED' | 'AD_GROUP_SERVING' | 'AD_GROUP_SUBMITTED' | 'CAMPAIGN_PAUSED' | 'ACCOUNT_PAUSED': Output only. The Engine Status for ad group.
        - `excludeDemographicExpansion` boolean: When this value is true, demographics will be excluded from the types of targeting which are expanded when optimized_targeting_enabled is true. When optimized_targeting_enabled is false, this field is ignored. Default is false.
        - `excludedParentAssetFieldTypes` string[]: The asset field types that should be excluded from this ad group. Asset links with these field types will not be inherited by this ad group from the upper levels.
        - `excludedParentAssetSetTypes` string[]: The asset set types that should be excluded from this ad group. Asset set links with these types will not be inherited by this ad group from the upper levels. Location group types (GMB_DYNAMIC_LOCATION_GROUP, CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all location group asset sets are not allowed to be linked to this ad group, and all Location Extension (LE) and Affiliate Location Extensions (ALE) will not be served under this ad group. Only LOCATION_SYNC is currently supported.
        - `finalUrlSuffix` string: URL template for appending params to Final URL.
        - `fixedCpmMicros` string, int64: The fixed amount in micros that the advertiser pays for every thousand impressions of the ad.
        - `id` string, int64: Output only. The ID of the ad group.
        - `labels` string[]: Output only. The resource names of labels attached to this ad group.
        - `languageCode` string: Output only. The language of the ads and keywords in an ad group. This field is only available for Microsoft Advertising accounts. More details: https://docs.microsoft.com/en-us/advertising/guides/ad-languages?view=bingads-13#adlanguage
        - `lastModifiedTime` string: Output only. The datetime when this ad group was last modified. The datetime is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss.ssssss" format.
        - `name` string: The name of the ad group. This field is required and should not be empty when creating new ad groups. It must contain fewer than 255 UTF-8 full-width characters. It must not contain any null (code point 0x0), NL line feed (code point 0xA) or carriage return (code point 0xD) characters.
        - `optimizedTargetingEnabled` boolean: True if optimized targeting is enabled. Optimized Targeting is the replacement for Audience Expansion.
        - `percentCpcBidMicros` string, int64: The percent cpc bid amount, expressed as a fraction of the advertised price for some good or service. The valid range for the fraction is [0,1) and the value stored here is 1,000,000 * [fraction].
        - `primaryStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'NOT_ELIGIBLE' | 'LIMITED': Output only. Provides aggregated view into why an ad group is not serving or not serving optimally.
        - `primaryStatusReasons` string[]: Output only. Provides reasons for why an ad group is not serving or not serving optimally.
        - `resourceName` string: Immutable. The resource name of the ad group. Ad group resource names have the form: `customers/{customer_id}/adGroups/{ad_group_id}`
        - `startDate` string: Output only. Date when this ad group starts serving ads. By default, the ad group starts now or the ad group's start date, whichever is later. If this field is set, then the ad group starts at the beginning of the specified date in the customer's time zone. This field is only available for Microsoft Advertising and Facebook gateway accounts. Format: YYYY-MM-DD Example: 2019-03-14
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'PAUSED' | 'REMOVED': The status of the ad group.
        - `targetCpaMicros` string, int64: The target CPA (cost-per-acquisition). If the ad group's campaign bidding strategy is TargetCpa or MaximizeConversions (with its target_cpa field set), then this field overrides the target CPA specified in the campaign's bidding strategy. Otherwise, this value is ignored.
        - `targetCpcMicros` string, int64: Average amount in micros that the advertiser is willing to pay for every ad click. Overrides the target CPC configured at the campaign level.
        - `targetCpmMicros` string, int64: Average amount in micros that the advertiser is willing to pay for every thousand times the ad is shown.
        - `targetCpvMicros` string, int64: Average amount in micros that the advertiser is willing to pay for every ad view.
        - `targetRoas` number, double: The target ROAS (return-on-ad-spend) for this ad group. This field lets you override the target ROAS specified in the campaign's bidding strategy, but only if the campaign is using a standard (not portfolio) `TargetRoas` strategy or a standard `MaximizeConversionValue` strategy with its `target_roas` field set. If the campaign is using a portfolio bidding strategy, this field cannot be set and attempting to do so will result in an error. For any other bidding strategies, this value is ignored. To see the actual target ROAS being used by the ad group, considering potential overrides, query the `effective_target_roas` and `effective_target_roas_source` fields.
        - `targetingSetting` GoogleAdsSearchads360V23CommonTargetingSetting: Settings for the targeting-related features, at the campaign and ad group levels. For more details about the targeting setting, visit https://support.google.com/google-ads/answer/7365594
          - `targetRestrictionOperations` GoogleAdsSearchads360V23CommonTargetRestrictionOperation[]: The list of operations changing the target restrictions. Adding a target restriction with a targeting dimension that already exists causes the existing target restriction to be replaced with the new value.
            - `operator` 'UNSPECIFIED' | 'UNKNOWN' | 'ADD' | 'REMOVE': Type of list operation to perform.
            - `value` GoogleAdsSearchads360V23CommonTargetRestriction: The list of per-targeting-dimension targeting settings.
              - …
          - `targetRestrictions` GoogleAdsSearchads360V23CommonTargetRestriction[]: The per-targeting-dimension setting to restrict the reach of your campaign or ad group.
            - `bidOnly` boolean: Indicates whether to restrict your ads to show only for the criteria you have selected for this targeting_dimension, or to target all values for this targeting_dimension and show ads based on your targeting in other TargetingDimensions. A value of `true` means that these criteria will only apply bid modifiers, and not affect targeting. A value of `false` means that these criteria will restrict targeting as well as applying bid modifiers.
            - `targetingDimension` 'UNSPECIFIED' | 'UNKNOWN' | 'KEYWORD' | 'AUDIENCE' | 'TOPIC' | 'GENDER' | 'AGE_RANGE' | 'PLACEMENT' | 'PARENTAL_STATUS' | 'INCOME_RANGE': The targeting dimension that these settings apply to.
        - `trackingUrlTemplate` string: The URL template for constructing a tracking URL.
        - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'SEARCH_STANDARD' | 'DISPLAY_STANDARD' | 'SHOPPING_PRODUCT_ADS' | 'HOTEL_ADS' | 'SHOPPING_SMART_ADS' | 'VIDEO_BUMPER' | 'VIDEO_TRUE_VIEW_IN_STREAM' | 'VIDEO_TRUE_VIEW_IN_DISPLAY' | 'VIDEO_NON_SKIPPABLE_IN_STREAM' | 'SEARCH_DYNAMIC_ADS' | 'SHOPPING_COMPARISON_LISTING_ADS' | 'PROMOTED_HOTEL_ADS' | 'VIDEO_RESPONSIVE' | 'VIDEO_EFFICIENT_REACH' | 'SMART_CAMPAIGN_ADS' | 'TRAVEL_ADS': Immutable. The type of the ad group.
        - `urlCustomParameters` GoogleAdsSearchads360V23CommonCustomParameter[]: The list of mappings used to substitute custom parameter tags in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
          - `key` string: The key matching the parameter tag name.
          - `value` string: The value to be substituted.
        - `verticalAdsFormatSetting` GoogleAdsSearchads360V23ResourcesAdGroupVerticalAdsFormatSetting: Vertical ads setting feature to enable/disable ad group format controls in search campaigns.
          - `disableTextAds` boolean: If true, text ads will be disabled for this ad group.
          - `enableBookingLinks` boolean: If true, booking links will be enabled for this ad group.
          - `enableVerticalPromotionAds` boolean: If true, vertical promotion ads will be enabled for this ad group.
      - `remove` string: Remove operation: A resource name for the removed ad group is expected, in this format: `customers/{customer_id}/adGroups/{ad_group_id}`
      - `update` GoogleAdsSearchads360V23ResourcesAdGroup: An ad group.
        - `adRotationMode` 'UNSPECIFIED' | 'UNKNOWN' | 'OPTIMIZE' | 'ROTATE_FOREVER': The ad rotation mode of the ad group.
        - `aiMaxAdGroupSetting` GoogleAdsSearchads360V23ResourcesAdGroupAiMaxAdGroupSetting: Settings for AI Max feature in standard search adgroups.
          - `disableSearchTermMatching` boolean: Disable search term matching for this adgroup when AI Max is enabled. Search term matching uses broad match, asset-based, and landing page-based technology to improve reach.
        - `audienceSetting` GoogleAdsSearchads360V23ResourcesAdGroupAudienceSetting: Settings for the audience targeting.
          - `useAudienceGrouped` boolean: Immutable. If true, this ad group uses an Audience resource for audience targeting. If false, this ad group may use audience segment criteria instead.
        - `baseAdGroup` string: Output only. For draft or experiment ad groups, this field is the resource name of the base ad group from which this ad group was created. If a draft or experiment ad group does not have a base ad group, then this field is null. For base ad groups, this field equals the ad group resource name. This field is read-only.
        - `campaign` string: Immutable. The campaign to which the ad group belongs.
        - `cpcBidMicros` string, int64: The maximum CPC (cost-per-click) bid. This field is used when the ad group's effective bidding strategy is Manual CPC. This field is not applicable and will be ignored if the ad group's campaign is using a portfolio bidding strategy.
        - `cpmBidMicros` string, int64: The maximum CPM (cost-per-thousand viewable impressions) bid.
        - `cpvBidMicros` string, int64: The CPV (cost-per-view) bid.
        - `creationTime` string: Output only. The timestamp when this ad_group was created. The timestamp is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss" format.
        - `demandGenAdGroupSettings` GoogleAdsSearchads360V23ResourcesAdGroupDemandGenAdGroupSettings: Settings for Demand Gen ad groups.
          - `channelControls` GoogleAdsSearchads360V23ResourcesAdGroupDemandGenAdGroupSettingsDemandGenChannelControls: Channel controls for Demand Gen ad groups.
            - `channelConfig` 'UNSPECIFIED' | 'UNKNOWN' | 'CHANNEL_STRATEGY' | 'SELECTED_CHANNELS': Output only. Channel configuration reflecting which field in the oneof is populated.
            - `channelStrategy` 'UNSPECIFIED' | 'UNKNOWN' | 'ALL_CHANNELS' | 'ALL_OWNED_AND_OPERATED_CHANNELS': High level channel strategy.
            - `selectedChannels` GoogleAdsSearchads360V23ResourcesAdGroupDemandGenAdGroupSettingsDemandGenChannelControlsDemandGenSelectedChannels: Explicitly selected channels for channel controls in Demand Gen ad groups.
              - …
        - `displayCustomBidDimension` 'UNSPECIFIED' | 'UNKNOWN' | 'KEYWORD' | 'AUDIENCE' | 'TOPIC' | 'GENDER' | 'AGE_RANGE' | 'PLACEMENT' | 'PARENTAL_STATUS' | 'INCOME_RANGE': Lets advertisers specify a targeting dimension on which to place absolute bids. This is only applicable for campaigns that target only the display network and not search.
        - `effectiveCpcBidMicros` string, int64: Output only. Value will be same as that of the CPC (cost-per-click) bid value when the bidding strategy is one of manual cpc, enhanced cpc, page one promoted or target outrank share, otherwise the value will be null.
        - `effectiveLabels` string[]: Output only. The resource names of effective labels attached to this ad group. An effective label is a label inherited or directly assigned to this ad group.
        - `effectiveTargetCpaMicros` string, int64: Output only. The effective target CPA (cost-per-acquisition). This field is read-only.
        - `effectiveTargetCpaSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective target CPA. This field is read-only.
        - `effectiveTargetCpc` string, int64: Output only. The effective target CPC (cost-per-click). This field is read-only.
        - `effectiveTargetCpcSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective target CPC. This field is read-only.
        - `effectiveTargetRoas` number, double: Output only. The effective target ROAS (return-on-ad-spend). This field is read-only.
        - `effectiveTargetRoasSource` 'UNSPECIFIED' | 'UNKNOWN' | 'CAMPAIGN_BIDDING_STRATEGY' | 'AD_GROUP' | 'AD_GROUP_CRITERION': Output only. Source of the effective target ROAS. This field is read-only.
        - `endDate` string: Output only. Date when the ad group ends serving ads. By default, the ad group ends on the ad group's end date. If this field is set, then the ad group ends at the end of the specified date in the customer's time zone. This field is only available for Microsoft Advertising and Facebook gateway accounts. Format: YYYY-MM-DD Example: 2019-03-14
        - `engineId` string: Output only. ID of the ad group in the external engine account. This field is for non-Google Ads account only, for example, Yahoo Japan, Microsoft, Baidu etc. For Google Ads entity, use "ad_group.id" instead.
        - `engineStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'AD_GROUP_ELIGIBLE' | 'AD_GROUP_EXPIRED' | 'AD_GROUP_REMOVED' | 'AD_GROUP_DRAFT' | 'AD_GROUP_PAUSED' | 'AD_GROUP_SERVING' | 'AD_GROUP_SUBMITTED' | 'CAMPAIGN_PAUSED' | 'ACCOUNT_PAUSED': Output only. The Engine Status for ad group.
        - `excludeDemographicExpansion` boolean: When this value is true, demographics will be excluded from the types of targeting which are expanded when optimized_targeting_enabled is true. When optimized_targeting_enabled is false, this field is ignored. Default is false.
        - `excludedParentAssetFieldTypes` string[]: The asset field types that should be excluded from this ad group. Asset links with these field types will not be inherited by this ad group from the upper levels.
        - `excludedParentAssetSetTypes` string[]: The asset set types that should be excluded from this ad group. Asset set links with these types will not be inherited by this ad group from the upper levels. Location group types (GMB_DYNAMIC_LOCATION_GROUP, CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all location group asset sets are not allowed to be linked to this ad group, and all Location Extension (LE) and Affiliate Location Extensions (ALE) will not be served under this ad group. Only LOCATION_SYNC is currently supported.
        - `finalUrlSuffix` string: URL template for appending params to Final URL.
        - `fixedCpmMicros` string, int64: The fixed amount in micros that the advertiser pays for every thousand impressions of the ad.
        - `id` string, int64: Output only. The ID of the ad group.
        - `labels` string[]: Output only. The resource names of labels attached to this ad group.
        - `languageCode` string: Output only. The language of the ads and keywords in an ad group. This field is only available for Microsoft Advertising accounts. More details: https://docs.microsoft.com/en-us/advertising/guides/ad-languages?view=bingads-13#adlanguage
        - `lastModifiedTime` string: Output only. The datetime when this ad group was last modified. The datetime is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss.ssssss" format.
        - `name` string: The name of the ad group. This field is required and should not be empty when creating new ad groups. It must contain fewer than 255 UTF-8 full-width characters. It must not contain any null (code point 0x0), NL line feed (code point 0xA) or carriage return (code point 0xD) characters.
        - `optimizedTargetingEnabled` boolean: True if optimized targeting is enabled. Optimized Targeting is the replacement for Audience Expansion.
        - `percentCpcBidMicros` string, int64: The percent cpc bid amount, expressed as a fraction of the advertised price for some good or service. The valid range for the fraction is [0,1) and the value stored here is 1,000,000 * [fraction].
        - `primaryStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'NOT_ELIGIBLE' | 'LIMITED': Output only. Provides aggregated view into why an ad group is not serving or not serving optimally.
        - `primaryStatusReasons` string[]: Output only. Provides reasons for why an ad group is not serving or not serving optimally.
        - `resourceName` string: Immutable. The resource name of the ad group. Ad group resource names have the form: `customers/{customer_id}/adGroups/{ad_group_id}`
        - `startDate` string: Output only. Date when this ad group starts serving ads. By default, the ad group starts now or the ad group's start date, whichever is later. If this field is set, then the ad group starts at the beginning of the specified date in the customer's time zone. This field is only available for Microsoft Advertising and Facebook gateway accounts. Format: YYYY-MM-DD Example: 2019-03-14
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'PAUSED' | 'REMOVED': The status of the ad group.
        - `targetCpaMicros` string, int64: The target CPA (cost-per-acquisition). If the ad group's campaign bidding strategy is TargetCpa or MaximizeConversions (with its target_cpa field set), then this field overrides the target CPA specified in the campaign's bidding strategy. Otherwise, this value is ignored.
        - `targetCpcMicros` string, int64: Average amount in micros that the advertiser is willing to pay for every ad click. Overrides the target CPC configured at the campaign level.
        - `targetCpmMicros` string, int64: Average amount in micros that the advertiser is willing to pay for every thousand times the ad is shown.
        - `targetCpvMicros` string, int64: Average amount in micros that the advertiser is willing to pay for every ad view.
        - `targetRoas` number, double: The target ROAS (return-on-ad-spend) for this ad group. This field lets you override the target ROAS specified in the campaign's bidding strategy, but only if the campaign is using a standard (not portfolio) `TargetRoas` strategy or a standard `MaximizeConversionValue` strategy with its `target_roas` field set. If the campaign is using a portfolio bidding strategy, this field cannot be set and attempting to do so will result in an error. For any other bidding strategies, this value is ignored. To see the actual target ROAS being used by the ad group, considering potential overrides, query the `effective_target_roas` and `effective_target_roas_source` fields.
        - `targetingSetting` GoogleAdsSearchads360V23CommonTargetingSetting: Settings for the targeting-related features, at the campaign and ad group levels. For more details about the targeting setting, visit https://support.google.com/google-ads/answer/7365594
          - `targetRestrictionOperations` GoogleAdsSearchads360V23CommonTargetRestrictionOperation[]: The list of operations changing the target restrictions. Adding a target restriction with a targeting dimension that already exists causes the existing target restriction to be replaced with the new value.
            - `operator` 'UNSPECIFIED' | 'UNKNOWN' | 'ADD' | 'REMOVE': Type of list operation to perform.
            - `value` GoogleAdsSearchads360V23CommonTargetRestriction: The list of per-targeting-dimension targeting settings.
              - …
          - `targetRestrictions` GoogleAdsSearchads360V23CommonTargetRestriction[]: The per-targeting-dimension setting to restrict the reach of your campaign or ad group.
            - `bidOnly` boolean: Indicates whether to restrict your ads to show only for the criteria you have selected for this targeting_dimension, or to target all values for this targeting_dimension and show ads based on your targeting in other TargetingDimensions. A value of `true` means that these criteria will only apply bid modifiers, and not affect targeting. A value of `false` means that these criteria will restrict targeting as well as applying bid modifiers.
            - `targetingDimension` 'UNSPECIFIED' | 'UNKNOWN' | 'KEYWORD' | 'AUDIENCE' | 'TOPIC' | 'GENDER' | 'AGE_RANGE' | 'PLACEMENT' | 'PARENTAL_STATUS' | 'INCOME_RANGE': The targeting dimension that these settings apply to.
        - `trackingUrlTemplate` string: The URL template for constructing a tracking URL.
        - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'SEARCH_STANDARD' | 'DISPLAY_STANDARD' | 'SHOPPING_PRODUCT_ADS' | 'HOTEL_ADS' | 'SHOPPING_SMART_ADS' | 'VIDEO_BUMPER' | 'VIDEO_TRUE_VIEW_IN_STREAM' | 'VIDEO_TRUE_VIEW_IN_DISPLAY' | 'VIDEO_NON_SKIPPABLE_IN_STREAM' | 'SEARCH_DYNAMIC_ADS' | 'SHOPPING_COMPARISON_LISTING_ADS' | 'PROMOTED_HOTEL_ADS' | 'VIDEO_RESPONSIVE' | 'VIDEO_EFFICIENT_REACH' | 'SMART_CAMPAIGN_ADS' | 'TRAVEL_ADS': Immutable. The type of the ad group.
        - `urlCustomParameters` GoogleAdsSearchads360V23CommonCustomParameter[]: The list of mappings used to substitute custom parameter tags in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
          - `key` string: The key matching the parameter tag name.
          - `value` string: The value to be substituted.
        - `verticalAdsFormatSetting` GoogleAdsSearchads360V23ResourcesAdGroupVerticalAdsFormatSetting: Vertical ads setting feature to enable/disable ad group format controls in search campaigns.
          - `disableTextAds` boolean: If true, text ads will be disabled for this ad group.
          - `enableBookingLinks` boolean: If true, booking links will be enabled for this ad group.
          - `enableVerticalPromotionAds` boolean: If true, vertical promotion ads will be enabled for this ad group.
      - `updateMask` string, google-fieldmask: FieldMask that determines which resource fields are modified in an update.
    - `adOperation` GoogleAdsSearchads360V23ServicesAdOperation: A single update operation on an ad.
      - `policyValidationParameter` GoogleAdsSearchads360V23CommonPolicyValidationParameter: Parameter for controlling how policy exemption is done.
        - `exemptPolicyViolationKeys` GoogleAdsSearchads360V23CommonPolicyViolationKey[]: The list of policy violation keys that should not cause a `PolicyViolationError` to be reported. Not all policy violations are exemptable. Refer to the `is_exemptible` field in the returned `PolicyViolationError`. This field is used for keyword policy exemptions. If this field is populated, then `ignorable_policy_topics` must be empty. Resources that violate these policies will be saved, but will not be eligible to serve. They may begin serving at a later time due to a change in policies, re-review of the resource, or a change in advertiser certificates.
          - `policyName` string: Unique ID of the violated policy.
          - `violatingText` string: The text that violates the policy if specified. Otherwise, refers to the policy in general (for example, when requesting to be exempt from the whole policy). If not specified for criterion exemptions, the whole policy is implied. Must be specified for ad exemptions.
        - `ignorablePolicyTopics` string[]: The list of policy topics that should not cause a `PolicyFindingError` to be reported. This field is used for ad policy exemptions. It corresponds to the `PolicyTopicEntry.topic` field. If this field is populated, then `exempt_policy_violation_keys` must be empty. Resources that violate these policies will be saved, but will not be eligible to serve. They may begin serving at a later time due to a change in policies, re-review of the resource, or a change in advertiser certificates.
      - `update` GoogleAdsSearchads360V23ResourcesAd: An ad.
        - `addedByGoogleAds` boolean: Output only. Indicates if this ad was automatically added by Google Ads and not by a user. For example, this could happen when ads are automatically created as suggestions for new ads based on knowledge of how existing ads are performing.
        - `appAd` GoogleAdsSearchads360V23CommonAppAdInfo: An app ad.
          - `appDeepLink` GoogleAdsSearchads360V23CommonAdAppDeepLinkAsset: An app deep link used inside an ad.
            - `asset` string: The Asset resource name of this app deep link asset.
          - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `html5MediaBundles` GoogleAdsSearchads360V23CommonAdMediaBundleAsset[]: List of media bundle assets that may be used with the ad.
            - `asset` string: The Asset resource name of this media bundle.
          - `images` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of image assets that may be displayed with the ad.
            - `asset` string: The Asset resource name of this image.
          - `mandatoryAdText` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `youtubeVideos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of YouTube video assets that may be displayed with the ad.
            - `adVideoAssetInfo` GoogleAdsSearchads360V23CommonAdVideoAssetInfo: Contains info fields for AdVideoAssets.
              - …
            - `asset` string: The Asset resource name of this video.
        - `appEngagementAd` GoogleAdsSearchads360V23CommonAppEngagementAdInfo: App engagement ads allow you to write text encouraging a specific action in the app, like checking in, making a purchase, or booking a flight. They allow you to send users to a specific part of your app where they can find what they're looking for easier and faster.
          - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `images` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of image assets that may be displayed with the ad.
            - `asset` string: The Asset resource name of this image.
          - `videos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of video assets that may be displayed with the ad.
            - `adVideoAssetInfo` GoogleAdsSearchads360V23CommonAdVideoAssetInfo: Contains info fields for AdVideoAssets.
              - …
            - `asset` string: The Asset resource name of this video.
        - `appPreRegistrationAd` GoogleAdsSearchads360V23CommonAppPreRegistrationAdInfo: App pre-registration ads link to your app or game listing on Google Play, and can run on Google Play, on YouTube (in-stream only), and within other apps and mobile websites on the Display Network. It will help capture people's interest in your app or game and generate an early install base for your app or game before a launch.
          - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `images` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of image asset IDs whose images may be displayed with the ad.
            - `asset` string: The Asset resource name of this image.
          - `youtubeVideos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of YouTube video asset IDs whose videos may be displayed with the ad.
            - `adVideoAssetInfo` GoogleAdsSearchads360V23CommonAdVideoAssetInfo: Contains info fields for AdVideoAssets.
              - …
            - `asset` string: The Asset resource name of this video.
        - `demandGenCarouselAd` GoogleAdsSearchads360V23CommonDemandGenCarouselAdInfo: A Demand Gen carousel ad.
          - `businessName` string: Required. The Advertiser/brand name.
          - `callToActionText` string: Call to action text.
          - `carouselCards` GoogleAdsSearchads360V23CommonAdDemandGenCarouselCardAsset[]: Required. Carousel cards that will display with the ad. Min 2 max 10.
            - `asset` string: The Asset resource name of this discovery carousel card.
          - `description` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `headline` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `logoImage` GoogleAdsSearchads360V23CommonAdImageAsset: An image asset used inside an ad.
            - `asset` string: The Asset resource name of this image.
        - `demandGenMultiAssetAd` GoogleAdsSearchads360V23CommonDemandGenMultiAssetAdInfo: A Demand Gen multi asset ad.
          - `businessName` string: The Advertiser/brand name. Maximum display width is 25. Required.
          - `callToActionText` string: Call to action text.
          - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: The descriptive text of the ad. Maximum display width is 90. At least 1 and max 5 descriptions can be specified.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: Headline text asset of the ad. Maximum display width is 30. At least 1 and max 5 headlines can be specified.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `logoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Logo image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must be 1:1 (+-1%). At least 1 and max 5 logo images can be specified.
            - `asset` string: The Asset resource name of this image.
          - `marketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Marketing image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must be 1.91:1 (+-1%). Required if square_marketing_images is not present.
            - `asset` string: The Asset resource name of this image.
          - `portraitMarketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Portrait marketing image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 480x600 and the aspect ratio must be 4:5 (+-1%).
            - `asset` string: The Asset resource name of this image.
          - `squareMarketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Square marketing image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must be 1:1 (+-1%). Required if marketing_images is not present.
            - `asset` string: The Asset resource name of this image.
          - `tallPortraitMarketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Tall portrait marketing image assets to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 600x1067 and the aspect ratio must be 9:16 (+-1%). Combined with `marketing_images`, `square_marketing_images`, and `portrait_marketing_images`, the maximum is 20.
            - `asset` string: The Asset resource name of this image.
        - `demandGenProductAd` GoogleAdsSearchads360V23CommonDemandGenProductAdInfo: A Demand Gen product ad.
          - `breadcrumb1` string: First part of text that appears in the ad with the displayed URL.
          - `breadcrumb2` string: Second part of text that appears in the ad with the displayed URL.
          - `businessName` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `callToAction` GoogleAdsSearchads360V23CommonAdCallToActionAsset: A call to action asset used inside an ad.
            - `asset` string: The Asset resource name of this call to action asset.
          - `description` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `headline` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `logoImage` GoogleAdsSearchads360V23CommonAdImageAsset: An image asset used inside an ad.
            - `asset` string: The Asset resource name of this image.
        - `demandGenVideoResponsiveAd` GoogleAdsSearchads360V23CommonDemandGenVideoResponsiveAdInfo: A Demand Gen video responsive ad.
          - `breadcrumb1` string: First part of text that appears in the ad with the displayed URL.
          - `breadcrumb2` string: Second part of text that appears in the ad with the displayed URL.
          - `businessName` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `callToActions` GoogleAdsSearchads360V23CommonAdCallToActionAsset[]: Assets of type CallToActionAsset used for the "Call To Action" button.
            - `asset` string: The Asset resource name of this call to action asset.
          - `companionBanners` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of image assets used for the companion banner. Currently, only a single value for the companion banner asset is supported.
            - `asset` string: The Asset resource name of this image.
          - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets used for the description.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets used for the short headline.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `logoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Logo image to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must be 1:1 (+-1%).
            - `asset` string: The Asset resource name of this image.
          - `longHeadlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets used for the long headline.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `videos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of YouTube video assets used for the ad.
            - `adVideoAssetInfo` GoogleAdsSearchads360V23CommonAdVideoAssetInfo: Contains info fields for AdVideoAssets.
              - …
            - `asset` string: The Asset resource name of this video.
        - `devicePreference` 'UNSPECIFIED' | 'UNKNOWN' | 'MOBILE' | 'TABLET' | 'DESKTOP' | 'CONNECTED_TV' | 'OTHER': The device preference for the ad. You can only specify a preference for mobile devices. When this preference is set the ad will be preferred over other ads when being displayed on a mobile device. The ad can still be displayed on other device types, for example, if no other ads are available. If unspecified (no device preference), all devices are targeted. This is only supported by some ad types.
        - `displayUploadAd` GoogleAdsSearchads360V23CommonDisplayUploadAdInfo: A generic type of display ad. The exact ad format is controlled by the `display_upload_product_type` field, which determines what kinds of data need to be included with the ad.
          - `displayUploadProductType` 'UNSPECIFIED' | 'UNKNOWN' | 'HTML5_UPLOAD_AD' | 'DYNAMIC_HTML5_EDUCATION_AD' | 'DYNAMIC_HTML5_FLIGHT_AD' | 'DYNAMIC_HTML5_HOTEL_RENTAL_AD' | 'DYNAMIC_HTML5_JOB_AD' | 'DYNAMIC_HTML5_LOCAL_AD' | 'DYNAMIC_HTML5_REAL_ESTATE_AD' | 'DYNAMIC_HTML5_CUSTOM_AD' | 'DYNAMIC_HTML5_TRAVEL_AD' | 'DYNAMIC_HTML5_HOTEL_AD': The product type of this ad. See comments on the enum for details.
          - `mediaBundle` GoogleAdsSearchads360V23CommonAdMediaBundleAsset: A media bundle asset used inside an ad.
            - `asset` string: The Asset resource name of this media bundle.
        - `displayUrl` string: The URL that appears in the ad description for some ad formats.
        - `expandedDynamicSearchAd` GoogleAdsSearchads360V23CommonExpandedDynamicSearchAdInfo: An expanded dynamic search ad.
          - `description` string: The description of the ad.
          - `description2` string: The second description of the ad.
        - `expandedTextAd` GoogleAdsSearchads360V23CommonExpandedTextAdInfo: An expanded text ad. Expanded text ads are deprecated.
          - `description` string: The description of the ad.
          - `description2` string: The second description of the ad.
          - `headlinePart1` string: The first part of the ad's headline.
          - `headlinePart2` string: The second part of the ad's headline.
          - `headlinePart3` string: The third part of the ad's headline.
          - `path1` string: The text that can appear alongside the ad's displayed URL.
          - `path2` string: Additional text that can appear alongside the ad's displayed URL.
        - `finalAppUrls` GoogleAdsSearchads360V23CommonFinalAppUrl[]: A list of final app URLs that will be used on mobile if the user has the specific app installed.
          - `osType` 'UNSPECIFIED' | 'UNKNOWN' | 'IOS' | 'ANDROID': The operating system targeted by this URL. Required.
          - `url` string: The app deep link URL. Deep links specify a location in an app that corresponds to the content you'd like to show, and should be of the form {scheme}://{host_path} The scheme identifies which app to open. For your app, you can use a custom scheme that starts with the app's name. The host and path specify the unique location in the app where your content exists. Example: "exampleapp://productid_1234". Required.
        - `finalMobileUrls` string[]: The list of possible final mobile URLs after all cross-domain redirects for the ad.
        - `finalUrlSuffix` string: The suffix to use when constructing a final URL.
        - `finalUrls` string[]: The list of possible final URLs after all cross-domain redirects for the ad.
        - `hotelAd` GoogleAdsSearchads360V23CommonHotelAdInfo: A hotel ad.
        - `id` string, int64: Output only. The ID of the ad.
        - `imageAd` GoogleAdsSearchads360V23CommonImageAdInfo: An image ad.
          - `adIdToCopyImageFrom` string, int64: An ad ID to copy the image from.
          - `data` string, byte: Raw image data as bytes.
          - `imageAsset` GoogleAdsSearchads360V23CommonAdImageAsset: An image asset used inside an ad.
            - `asset` string: The Asset resource name of this image.
          - `imageUrl` string: URL of the full size image.
          - `mimeType` 'UNSPECIFIED' | 'UNKNOWN' | 'IMAGE_JPEG' | 'IMAGE_GIF' | 'IMAGE_PNG' | 'FLASH' | 'TEXT_HTML' | 'PDF' | 'MSWORD' | 'MSEXCEL' | 'RTF' | 'AUDIO_WAV' | 'AUDIO_MP3' | 'HTML5_AD_ZIP': The mime type of the image.
          - `name` string: The name of the image. If the image was created from a MediaFile, this is the MediaFile's name. If the image was created from bytes, this is empty.
          - `pixelHeight` string, int64: Height in pixels of the full size image.
          - `pixelWidth` string, int64: Width in pixels of the full size image.
          - `previewImageUrl` string: URL of the preview size image.
          - `previewPixelHeight` string, int64: Height in pixels of the preview size image.
          - `previewPixelWidth` string, int64: Width in pixels of the preview size image.
        - `legacyAppInstallAd` GoogleAdsSearchads360V23CommonLegacyAppInstallAdInfo: A legacy app install ad that only can be used by a few select customers.
          - `appId` string: The ID of the mobile app.
          - `appStore` 'UNSPECIFIED' | 'UNKNOWN' | 'APPLE_APP_STORE' | 'GOOGLE_PLAY' | 'WINDOWS_STORE' | 'WINDOWS_PHONE_STORE' | 'CN_APP_STORE': The app store the mobile app is available in.
          - `description1` string: The first description line of the ad.
          - `description2` string: The second description line of the ad.
          - `headline` string: The headline of the ad.
        - `legacyResponsiveDisplayAd` GoogleAdsSearchads360V23CommonLegacyResponsiveDisplayAdInfo: A legacy responsive display ad. Ads of this type are labeled 'Responsive ads' in the Google Ads UI.
          - `accentColor` string: The accent color of the ad in hexadecimal, for example, #ffffff for white. If one of `main_color` and `accent_color` is set, the other is required as well.
          - `allowFlexibleColor` boolean: Advertiser's consent to allow flexible color. When true, the ad may be served with different color if necessary. When false, the ad will be served with the specified colors or a neutral color. The default value is `true`. Must be true if `main_color` and `accent_color` are not set.
          - `businessName` string: The business name in the ad.
          - `callToActionText` string: The call-to-action text for the ad.
          - `description` string: The description of the ad.
          - `formatSetting` 'UNSPECIFIED' | 'UNKNOWN' | 'ALL_FORMATS' | 'NON_NATIVE' | 'NATIVE': Specifies which format the ad will be served in. Default is ALL_FORMATS.
          - `logoImage` string: The MediaFile resource name of the logo image used in the ad.
          - `longHeadline` string: The long version of the ad's headline.
          - `mainColor` string: The main color of the ad in hexadecimal, for example, #ffffff for white. If one of `main_color` and `accent_color` is set, the other is required as well.
          - `marketingImage` string: The MediaFile resource name of the marketing image used in the ad.
          - `pricePrefix` string: Prefix before price. For example, 'as low as'.
          - `promoText` string: Promotion text used for dynamic formats of responsive ads. For example 'Free two-day shipping'.
          - `shortHeadline` string: The short version of the ad's headline.
          - `squareLogoImage` string: The MediaFile resource name of the square logo image used in the ad.
          - `squareMarketingImage` string: The MediaFile resource name of the square marketing image used in the ad.
        - `localAd` GoogleAdsSearchads360V23CommonLocalAdInfo: A local ad.
          - `callToActions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for call-to-actions. When the ad serves the call-to-actions will be selected from this list. At least 1 and at most 5 call-to-actions must be specified.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list. At least 1 and at most 5 descriptions must be specified.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list. At least 1 and at most 5 headlines must be specified.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `logoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of logo image assets that may be displayed with the ad. The images must be 128x128 pixels and not larger than 120KB. At least 1 and at most 5 image assets must be specified.
            - `asset` string: The Asset resource name of this image.
          - `marketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: List of marketing image assets that may be displayed with the ad. The images must be 314x600 pixels or 320x320 pixels. At least 1 and at most 20 image assets must be specified.
            - `asset` string: The Asset resource name of this image.
          - `path1` string: First part of optional text that can be appended to the URL in the ad.
          - `path2` string: Second part of optional text that can be appended to the URL in the ad. This field can only be set when `path1` is also set.
          - `videos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: List of YouTube video assets that may be displayed with the ad. At least 1 and at most 20 video assets must be specified.
            - `adVideoAssetInfo` GoogleAdsSearchads360V23CommonAdVideoAssetInfo: Contains info fields for AdVideoAssets.
              - …
            - `asset` string: The Asset resource name of this video.
        - `name` string: Immutable. The name of the ad. This is only used to be able to identify the ad. It does not need to be unique and does not affect the served ad.
        - `productAd` GoogleAdsSearchads360V23CommonSearchAds360ProductAdInfo: A Search Ads 360 product ad.
        - `resourceName` string: Immutable. The resource name of the ad. Ad resource names have the form: `customers/{customer_id}/ads/{ad_id}`
        - `responsiveDisplayAd` GoogleAdsSearchads360V23CommonResponsiveDisplayAdInfo: A responsive display ad.
          - `accentColor` string: The accent color of the ad in hexadecimal, for example, #ffffff for white. If one of `main_color` and `accent_color` is set, the other is required as well.
          - `allowFlexibleColor` boolean: Advertiser's consent to allow flexible color. When true, the ad may be served with different color if necessary. When false, the ad will be served with the specified colors or a neutral color. The default value is `true`. Must be true if `main_color` and `accent_color` are not set.
          - `businessName` string: The advertiser/brand name. Maximum display width is 25.
          - `callToActionText` string: The call-to-action text for the ad. Maximum display width is 30.
          - `controlSpec` GoogleAdsSearchads360V23CommonResponsiveDisplayAdControlSpec: Specification for various creative controls for a responsive display ad.
            - `enableAssetEnhancements` boolean: Whether the advertiser has opted into the asset enhancements feature.
            - `enableAutogenVideo` boolean: Whether the advertiser has opted into auto-gen video feature.
          - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: Descriptive texts for the ad. The maximum length is 90 characters. At least 1 and max 5 headlines can be specified.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `formatSetting` 'UNSPECIFIED' | 'UNKNOWN' | 'ALL_FORMATS' | 'NON_NATIVE' | 'NATIVE': Specifies which format the ad will be served in. Default is ALL_FORMATS.
          - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: Short format headlines for the ad. The maximum length is 30 characters. At least 1 and max 5 headlines can be specified.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `logoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Logo images to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 512x128 and the aspect ratio must be 4:1 (+-1%). Combined with `square_logo_images`, the maximum is 5.
            - `asset` string: The Asset resource name of this image.
          - `longHeadline` GoogleAdsSearchads360V23CommonAdTextAsset: A text asset used inside an ad.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `mainColor` string: The main color of the ad in hexadecimal, for example, #ffffff for white. If one of `main_color` and `accent_color` is set, the other is required as well.
          - `marketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Marketing images to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must be 1.91:1 (+-1%). At least one `marketing_image` is required. Combined with `square_marketing_images`, the maximum is 15.
            - `asset` string: The Asset resource name of this image.
          - `pricePrefix` string: Prefix before price. For example, 'as low as'.
          - `promoText` string: Promotion text used for dynamic formats of responsive ads. For example 'Free two-day shipping'.
          - `squareLogoImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Square logo images to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must be 1:1 (+-1%). Combined with `logo_images`, the maximum is 5.
            - `asset` string: The Asset resource name of this image.
          - `squareMarketingImages` GoogleAdsSearchads360V23CommonAdImageAsset[]: Square marketing images to be used in the ad. Valid image types are GIF, JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must be 1:1 (+-1%). At least one square `marketing_image` is required. Combined with `marketing_images`, the maximum is 15.
            - `asset` string: The Asset resource name of this image.
          - `youtubeVideos` GoogleAdsSearchads360V23CommonAdVideoAsset[]: Optional YouTube videos for the ad. A maximum of 5 videos can be specified.
            - `adVideoAssetInfo` GoogleAdsSearchads360V23CommonAdVideoAssetInfo: Contains info fields for AdVideoAssets.
              - …
            - `asset` string: The Asset resource name of this video.
        - `responsiveSearchAd` GoogleAdsSearchads360V23CommonResponsiveSearchAdInfo: A responsive search ad. Responsive search ads let you create an ad that adapts to show more text, and more relevant messages, to your customers. Enter multiple headlines and descriptions when creating a responsive search ad, and over time, Google Ads will automatically test different combinations and learn which combinations perform best. By adapting your ad's content to more closely match potential customers' search terms, responsive search ads may improve your campaign's performance. More information at https://support.google.com/google-ads/answer/7684791
          - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `path1` string: First part of text that can be appended to the URL in the ad.
          - `path2` string: Second part of text that can be appended to the URL in the ad. This field can only be set when `path1` is also set.
        - `searchAds360ExpandedDynamicSearchAd` GoogleAdsSearchads360V23CommonSearchAds360ExpandedDynamicSearchAdInfo: An expanded dynamic search ad.
          - `adTrackingId` string, int64: The tracking id of the ad.
          - `description1` string: The first line of the ad's description.
          - `description2` string: The second line of the ad's description.
        - `searchAds360ExpandedTextAd` GoogleAdsSearchads360V23CommonSearchAds360ExpandedTextAdInfo: A Search Ads 360 expanded text ad. Expanded text ads are deprecated. Use SearchAds360ResponsiveSearchAd instead.
          - `adTrackingId` string, int64: The tracking id of the ad.
          - `description1` string: The first line of the ad's description.
          - `description2` string: The second line of the ad's description.
          - `headline` string: The headline of the ad.
          - `headline2` string: The second headline of the ad.
          - `headline3` string: The third headline of the ad.
          - `path1` string: Text appended to the auto-generated visible URL with a delimiter.
          - `path2` string: Text appended to path1 with a delimiter.
        - `searchAds360ResponsiveSearchAd` GoogleAdsSearchads360V23CommonSearchAds360ResponsiveSearchAdInfo: A Search Ads 360 responsive search ad.
          - `adTrackingId` string, int64: The tracking id of the ad.
          - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for descriptions. When the ad serves the descriptions will be selected from this list.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets for headlines. When the ad serves the headlines will be selected from this list.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `path1` string: Text appended to the auto-generated visible URL with a delimiter.
          - `path2` string: Text appended to path1 with a delimiter.
        - `searchAds360TextAd` GoogleAdsSearchads360V23CommonSearchAds360TextAdInfo: A Search Ads 360 text ad.
          - `adTrackingId` string, int64: The tracking id of the ad.
          - `description1` string: The first line of the ad's description.
          - `description2` string: The second line of the ad's description.
          - `displayMobileUrl` string: The displayed mobile URL of the ad.
          - `displayUrl` string: The displayed URL of the ad.
          - `headline` string: The headline of the ad.
        - `shoppingComparisonListingAd` GoogleAdsSearchads360V23CommonShoppingComparisonListingAdInfo: A Shopping Comparison Listing ad.
          - `headline` string: Headline of the ad. This field is required. Allowed length is between 25 and 45 characters.
        - `shoppingProductAd` GoogleAdsSearchads360V23CommonShoppingProductAdInfo: A standard Shopping ad.
        - `shoppingSmartAd` GoogleAdsSearchads360V23CommonShoppingSmartAdInfo: A Smart Shopping ad.
        - `smartCampaignAd` GoogleAdsSearchads360V23CommonSmartCampaignAdInfo: A Smart campaign ad.
          - `descriptions` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets, each of which corresponds to a description when the ad serves. This list consists of a minimum of 2 and up to 4 text assets.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
          - `headlines` GoogleAdsSearchads360V23CommonAdTextAsset[]: List of text assets, each of which corresponds to a headline when the ad serves. This list consists of a minimum of 3 and up to 15 text assets.
            - `assetPerformanceLabel` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'LEARNING' | 'LOW' | 'GOOD' | 'BEST' | 'NOT_APPLICABLE': The performance label of this text asset.
            - `pinnedField` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE_1' | 'HEADLINE_2' | 'HEADLINE_3' | 'DESCRIPTION_1' | 'DESCRIPTION_2' | 'HEADLINE' | 'HEADLINE_IN_PORTRAIT' | 'LONG_HEADLINE' | 'DESCRIPTION' | 'DESCRIPTION_IN_PORTRAIT' | 'BUSINESS_NAME_IN_PORTRAIT' | 'BUSINESS_NAME' | 'MARKETING_IMAGE' | 'MARKETING_IMAGE_IN_PORTRAIT' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'CALL_TO_ACTION' | 'YOU_TUBE_VIDEO' | 'SITELINK' | 'CALL' | 'MOBILE_APP' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'PRICE' | 'PROMOTION' | 'AD_IMAGE' | 'LEAD_FORM' | 'BUSINESS_LOGO' | 'DESCRIPTION_PREFIX' | 'HEADLINE_AS_SITELINK_POSITION_ONE' | 'HEADLINE_AS_SITELINK_POSITION_TWO' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE' | 'DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO': The pinned field of the asset. This restricts the asset to only serve within this field. Multiple assets can be pinned to the same field. An asset that is unpinned or pinned to a different field will not serve in a field where some other asset has been pinned.
            - `policySummaryInfo` GoogleAdsSearchads360V23CommonAdAssetPolicySummary: Contains policy information for an asset inside an ad.
              - …
            - `text` string: Asset text.
        - `syntheticContentInfo` GoogleAdsSearchads360V23CommonSyntheticContentInfo: Container for synthetic content attestations from different sources, such as the advertiser and Google systems.
          - `advertiserAttestation` GoogleAdsSearchads360V23CommonSyntheticContentAttestation: Represents an attestation about synthetic content from a single source.
            - `source` 'UNSPECIFIED' | 'UNKNOWN' | 'ADVERTISER_ATTESTED' | 'GOOGLE_GENERATED_ADVERTISER_REVIEWED' | 'GOOGLE_GENERATED_FULLY_AUTOMATED': The source of the synthetic content attestation.
            - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'NOT_SYNTHETIC' | 'IS_SYNTHETIC': Indicates whether the content is considered synthetic by this source.
          - `systemAttestation` GoogleAdsSearchads360V23CommonSyntheticContentAttestation: Represents an attestation about synthetic content from a single source.
            - `source` 'UNSPECIFIED' | 'UNKNOWN' | 'ADVERTISER_ATTESTED' | 'GOOGLE_GENERATED_ADVERTISER_REVIEWED' | 'GOOGLE_GENERATED_FULLY_AUTOMATED': The source of the synthetic content attestation.
            - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'NOT_SYNTHETIC' | 'IS_SYNTHETIC': Indicates whether the content is considered synthetic by this source.
        - `systemManagedResourceSource` 'UNSPECIFIED' | 'UNKNOWN' | 'AD_VARIATIONS': Output only. If this ad is system managed, then this field will indicate the source. This field is read-only.
        - `textAd` GoogleAdsSearchads360V23CommonTextAdInfo: A text ad.
          - `description1` string: The first line of the ad's description.
          - `description2` string: The second line of the ad's description.
          - `headline` string: The headline of the ad.
        - `trackingUrlTemplate` string: The URL template for constructing a tracking URL.
        - `travelAd` GoogleAdsSearchads360V23CommonTravelAdInfo: A travel ad.
        - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'TEXT_AD' | 'EXPANDED_TEXT_AD' | 'EXPANDED_DYNAMIC_SEARCH_AD' | 'HOTEL_AD' | 'SHOPPING_SMART_AD' | 'SHOPPING_PRODUCT_AD' | 'VIDEO_AD' | 'IMAGE_AD' | 'RESPONSIVE_SEARCH_AD' | 'LEGACY_RESPONSIVE_DISPLAY_AD' | 'APP_AD' | 'LEGACY_APP_INSTALL_AD' | 'RESPONSIVE_DISPLAY_AD' | 'LOCAL_AD' | 'HTML5_UPLOAD_AD' | 'DYNAMIC_HTML5_AD' | 'APP_ENGAGEMENT_AD' | 'SHOPPING_COMPARISON_LISTING_AD' | 'VIDEO_BUMPER_AD' | 'VIDEO_NON_SKIPPABLE_IN_STREAM_AD' | 'VIDEO_TRUEVIEW_IN_STREAM_AD' | 'VIDEO_RESPONSIVE_AD' | 'SMART_CAMPAIGN_AD' | 'CALL_AD' | 'APP_PRE_REGISTRATION_AD' | 'DEMAND_GEN_MULTI_ASSET_AD' | 'DEMAND_GEN_CAROUSEL_AD' | 'TRAVEL_AD' | 'DEMAND_GEN_VIDEO_RESPONSIVE_AD' | 'DEMAND_GEN_PRODUCT_AD' | 'MULTIMEDIA_AD': Output only. The type of ad.
        - `urlCollections` GoogleAdsSearchads360V23CommonUrlCollection[]: Additional URLs for the ad that are tagged with a unique identifier that can be referenced from other fields in the ad.
          - `finalMobileUrls` string[]: A list of possible final mobile URLs.
          - `finalUrls` string[]: A list of possible final URLs.
          - `trackingUrlTemplate` string: URL template for constructing a tracking URL.
          - `urlCollectionId` string: Unique identifier for this UrlCollection instance.
        - `urlCustomParameters` GoogleAdsSearchads360V23CommonCustomParameter[]: The list of mappings that can be used to substitute custom parameter tags in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`. For mutates, use url custom parameter operations.
          - `key` string: The key matching the parameter tag name.
          - `value` string: The value to be substituted.
      - `updateMask` string, google-fieldmask: FieldMask that determines which resource fields are modified in an update.
    - `adParameterOperation` GoogleAdsSearchads360V23ServicesAdParameterOperation: A single operation (create, update, remove) on ad parameter.
      - `create` GoogleAdsSearchads360V23ResourcesAdParameter: An ad parameter that is used to update numeric values (such as prices or inventory levels) in any text line of an ad (including URLs). There can be a maximum of two AdParameters per ad group criterion. (One with parameter_index = 1 and one with parameter_index = 2.) In the ad the parameters are referenced by a placeholder of the form "{param#:value}". For example, "{param1:$17}"
        - `adGroupCriterion` string: Immutable. The ad group criterion that this ad parameter belongs to.
        - `insertionText` string: Numeric value to insert into the ad text. The following restrictions apply: - Can use comma or period as a separator, with an optional period or comma (respectively) for fractional values. For example, 1,000,000.00 and 2.000.000,10 are valid. - Can be prepended or appended with a currency symbol. For example, $99.99 is valid. - Can be prepended or appended with a currency code. For example, 99.99USD and EUR200 are valid. - Can use '%'. For example, 1.0% and 1,0% are valid. - Can use plus or minus. For example, -10.99 and 25+ are valid. - Can use '/' between two numbers. For example 4/1 and 0.95/0.45 are valid.
        - `parameterIndex` string, int64: Immutable. The unique index of this ad parameter. Must be either 1 or 2.
        - `resourceName` string: Immutable. The resource name of the ad parameter. Ad parameter resource names have the form: `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}`
      - `remove` string: Remove operation: A resource name for the ad parameter to remove is expected in this format: `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}`
      - `update` GoogleAdsSearchads360V23ResourcesAdParameter: An ad parameter that is used to update numeric values (such as prices or inventory levels) in any text line of an ad (including URLs). There can be a maximum of two AdParameters per ad group criterion. (One with parameter_index = 1 and one with parameter_index = 2.) In the ad the parameters are referenced by a placeholder of the form "{param#:value}". For example, "{param1:$17}"
        - `adGroupCriterion` string: Immutable. The ad group criterion that this ad parameter belongs to.
        - `insertionText` string: Numeric value to insert into the ad text. The following restrictions apply: - Can use comma or period as a separator, with an optional period or comma (respectively) for fractional values. For example, 1,000,000.00 and 2.000.000,10 are valid. - Can be prepended or appended with a currency symbol. For example, $99.99 is valid. - Can be prepended or appended with a currency code. For example, 99.99USD and EUR200 are valid. - Can use '%'. For example, 1.0% and 1,0% are valid. - Can use plus or minus. For example, -10.99 and 25+ are valid. - Can use '/' between two numbers. For example 4/1 and 0.95/0.45 are valid.
        - `parameterIndex` string, int64: Immutable. The unique index of this ad parameter. Must be either 1 or 2.
        - `resourceName` string: Immutable. The resource name of the ad parameter. Ad parameter resource names have the form: `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}`
      - `updateMask` string, google-fieldmask: FieldMask that determines which resource fields are modified in an update.
    - `assetGroupAssetOperation` GoogleAdsSearchads360V23ServicesAssetGroupAssetOperation: A single operation (create, remove) on an asset group asset.
      - `create` GoogleAdsSearchads360V23ResourcesAssetGroupAsset: AssetGroupAsset is the link between an asset and an asset group. Adding an AssetGroupAsset links an asset with an asset group.
        - `asset` string: Immutable. The asset which this asset group asset is linking.
        - `assetGroup` string: Immutable. The asset group which this asset group asset is linking.
        - `fieldType` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE' | 'DESCRIPTION' | 'MANDATORY_AD_TEXT' | 'MARKETING_IMAGE' | 'MEDIA_BUNDLE' | 'YOUTUBE_VIDEO' | 'BOOK_ON_GOOGLE' | 'LEAD_FORM' | 'PROMOTION' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'SITELINK' | 'MOBILE_APP' | 'HOTEL_CALLOUT' | 'CALL' | 'PRICE' | 'LONG_HEADLINE' | 'BUSINESS_NAME' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'VIDEO' | 'CALL_TO_ACTION_SELECTION' | 'AD_IMAGE' | 'BUSINESS_LOGO' | 'HOTEL_PROPERTY' | 'DEMAND_GEN_CAROUSEL_CARD' | 'BUSINESS_MESSAGE' | 'TALL_PORTRAIT_MARKETING_IMAGE' | 'LANDING_PAGE_PREVIEW' | 'LONG_DESCRIPTION' | 'CALL_TO_ACTION': The description of the placement of the asset within the asset group. For example: HEADLINE, YOUTUBE_VIDEO etc
        - `policySummary` GoogleAdsSearchads360V23CommonPolicySummary: Contains policy summary information.
          - `approvalStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'DISAPPROVED' | 'APPROVED_LIMITED' | 'APPROVED' | 'AREA_OF_INTEREST_ONLY': The overall approval status, which is calculated based on the status of its individual policy topic entries.
          - `policyTopicEntries` GoogleAdsSearchads360V23CommonPolicyTopicEntry[]: The list of policy findings.
            - `constraints` GoogleAdsSearchads360V23CommonPolicyTopicConstraint[]: Indicates how serving of this resource may be affected (for example, not serving in a country).
              - …
            - `evidences` GoogleAdsSearchads360V23CommonPolicyTopicEvidence[]: Additional information that explains policy finding (for example, the brand name for a trademark finding).
              - …
            - `topic` string: Policy topic this finding refers to. For example, "ALCOHOL", "TRADEMARKS_IN_AD_TEXT", or "DESTINATION_NOT_WORKING". The set of possible policy topics is not fixed for a particular API version and may change at any time.
            - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'PROHIBITED' | 'LIMITED' | 'FULLY_LIMITED' | 'DESCRIPTIVE' | 'BROADENING' | 'AREA_OF_INTEREST_ONLY': Describes the negative or positive effect this policy will have on serving.
          - `reviewStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'REVIEW_IN_PROGRESS' | 'REVIEWED' | 'UNDER_APPEAL' | 'ELIGIBLE_MAY_SERVE': Where in the review process the resource is.
        - `primaryStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'LIMITED' | 'NOT_ELIGIBLE': Output only. Provides the PrimaryStatus of this asset link. Primary status is meant essentially to differentiate between the plain "status" field, which has advertiser set values of enabled, paused, or removed. The primary status takes into account other signals (for assets its mainly policy and quality approvals) to come up with a more comprehensive status to indicate its serving state.
        - `primaryStatusDetails` GoogleAdsSearchads360V23CommonAssetLinkPrimaryStatusDetails[]: Output only. Provides the details of the primary status and its associated reasons.
          - `assetDisapproved` GoogleAdsSearchads360V23CommonAssetDisapproved: Details related to AssetLinkPrimaryStatusReasonPB.ASSET_DISAPPROVED
            - `offlineEvaluationErrorReasons` string[]: Provides the quality evaluation disapproval reason of an asset.
          - `reason` 'UNSPECIFIED' | 'UNKNOWN' | 'ASSET_LINK_PAUSED' | 'ASSET_LINK_REMOVED' | 'ASSET_DISAPPROVED' | 'ASSET_UNDER_REVIEW' | 'ASSET_APPROVED_LABELED': Provides the reason of this PrimaryStatus.
          - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'LIMITED' | 'NOT_ELIGIBLE': Provides the PrimaryStatus of this status detail.
        - `primaryStatusReasons` string[]: Output only. Provides a list of reasons for why an asset is not serving or not serving at full capacity.
        - `resourceName` string: Immutable. The resource name of the asset group asset. Asset group asset resource name have the form: `customers/{customer_id}/assetGroupAssets/{asset_group_id}~{asset_id}~{field_type}`
        - `source` 'UNSPECIFIED' | 'UNKNOWN' | 'ADVERTISER' | 'AUTOMATICALLY_CREATED': Output only. Source of the asset group asset.
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED' | 'PAUSED': The status of the link between an asset and asset group.
      - `remove` string: Remove operation: A resource name for the removed asset group asset is expected, in this format: `customers/{customer_id}/assetGroupAssets/{asset_group_id}~{asset_id}~{field_type}`
      - `update` GoogleAdsSearchads360V23ResourcesAssetGroupAsset: AssetGroupAsset is the link between an asset and an asset group. Adding an AssetGroupAsset links an asset with an asset group.
        - `asset` string: Immutable. The asset which this asset group asset is linking.
        - `assetGroup` string: Immutable. The asset group which this asset group asset is linking.
        - `fieldType` 'UNSPECIFIED' | 'UNKNOWN' | 'HEADLINE' | 'DESCRIPTION' | 'MANDATORY_AD_TEXT' | 'MARKETING_IMAGE' | 'MEDIA_BUNDLE' | 'YOUTUBE_VIDEO' | 'BOOK_ON_GOOGLE' | 'LEAD_FORM' | 'PROMOTION' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'SITELINK' | 'MOBILE_APP' | 'HOTEL_CALLOUT' | 'CALL' | 'PRICE' | 'LONG_HEADLINE' | 'BUSINESS_NAME' | 'SQUARE_MARKETING_IMAGE' | 'PORTRAIT_MARKETING_IMAGE' | 'LOGO' | 'LANDSCAPE_LOGO' | 'VIDEO' | 'CALL_TO_ACTION_SELECTION' | 'AD_IMAGE' | 'BUSINESS_LOGO' | 'HOTEL_PROPERTY' | 'DEMAND_GEN_CAROUSEL_CARD' | 'BUSINESS_MESSAGE' | 'TALL_PORTRAIT_MARKETING_IMAGE' | 'LANDING_PAGE_PREVIEW' | 'LONG_DESCRIPTION' | 'CALL_TO_ACTION': The description of the placement of the asset within the asset group. For example: HEADLINE, YOUTUBE_VIDEO etc
        - `policySummary` GoogleAdsSearchads360V23CommonPolicySummary: Contains policy summary information.
          - `approvalStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'DISAPPROVED' | 'APPROVED_LIMITED' | 'APPROVED' | 'AREA_OF_INTEREST_ONLY': The overall approval status, which is calculated based on the status of its individual policy topic entries.
          - `policyTopicEntries` GoogleAdsSearchads360V23CommonPolicyTopicEntry[]: The list of policy findings.
            - `constraints` GoogleAdsSearchads360V23CommonPolicyTopicConstraint[]: Indicates how serving of this resource may be affected (for example, not serving in a country).
              - …
            - `evidences` GoogleAdsSearchads360V23CommonPolicyTopicEvidence[]: Additional information that explains policy finding (for example, the brand name for a trademark finding).
              - …
            - `topic` string: Policy topic this finding refers to. For example, "ALCOHOL", "TRADEMARKS_IN_AD_TEXT", or "DESTINATION_NOT_WORKING". The set of possible policy topics is not fixed for a particular API version and may change at any time.
            - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'PROHIBITED' | 'LIMITED' | 'FULLY_LIMITED' | 'DESCRIPTIVE' | 'BROADENING' | 'AREA_OF_INTEREST_ONLY': Describes the negative or positive effect this policy will have on serving.
          - `reviewStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'REVIEW_IN_PROGRESS' | 'REVIEWED' | 'UNDER_APPEAL' | 'ELIGIBLE_MAY_SERVE': Where in the review process the resource is.
        - `primaryStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'LIMITED' | 'NOT_ELIGIBLE': Output only. Provides the PrimaryStatus of this asset link. Primary status is meant essentially to differentiate between the plain "status" field, which has advertiser set values of enabled, paused, or removed. The primary status takes into account other signals (for assets its mainly policy and quality approvals) to come up with a more comprehensive status to indicate its serving state.
        - `primaryStatusDetails` GoogleAdsSearchads360V23CommonAssetLinkPrimaryStatusDetails[]: Output only. Provides the details of the primary status and its associated reasons.
          - `assetDisapproved` GoogleAdsSearchads360V23CommonAssetDisapproved: Details related to AssetLinkPrimaryStatusReasonPB.ASSET_DISAPPROVED
            - `offlineEvaluationErrorReasons` string[]: Provides the quality evaluation disapproval reason of an asset.
          - `reason` 'UNSPECIFIED' | 'UNKNOWN' | 'ASSET_LINK_PAUSED' | 'ASSET_LINK_REMOVED' | 'ASSET_DISAPPROVED' | 'ASSET_UNDER_REVIEW' | 'ASSET_APPROVED_LABELED': Provides the reason of this PrimaryStatus.
          - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'PENDING' | 'LIMITED' | 'NOT_ELIGIBLE': Provides the PrimaryStatus of this status detail.
        - `primaryStatusReasons` string[]: Output only. Provides a list of reasons for why an asset is not serving or not serving at full capacity.
        - `resourceName` string: Immutable. The resource name of the asset group asset. Asset group asset resource name have the form: `customers/{customer_id}/assetGroupAssets/{asset_group_id}~{asset_id}~{field_type}`
        - `source` 'UNSPECIFIED' | 'UNKNOWN' | 'ADVERTISER' | 'AUTOMATICALLY_CREATED': Output only. Source of the asset group asset.
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED' | 'PAUSED': The status of the link between an asset and asset group.
      - `updateMask` string, google-fieldmask: FieldMask that determines which resource fields are modified in an update.
    - `assetGroupListingGroupFilterOperation` GoogleAdsSearchads360V23ServicesAssetGroupListingGroupFilterOperation: A single operation (create, remove) on an asset group listing group filter.
      - `create` GoogleAdsSearchads360V23ResourcesAssetGroupListingGroupFilter: AssetGroupListingGroupFilter represents a listing group filter tree node in an asset group.
        - `assetGroup` string: Immutable. The asset group which this asset group listing group filter is part of.
        - `caseValue` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimension: Listing dimensions for the asset group listing group filter.
          - `productBrand` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductBrand: Brand of the product.
            - `value` string: String value of the product brand.
          - `productCategory` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductCategory: One element of a category at a certain level. Top-level categories are at level 1, their children at level 2, and so on. We currently support up to 5 levels. The user must specify a dimension type that indicates the level of the category. All cases of the same subdivision must have the same dimension type (category level).
            - `categoryId` string, int64: ID of the product category. This ID is equivalent to the google_product_category ID as described in this article: https://support.google.com/merchants/answer/6324436
            - `level` 'UNSPECIFIED' | 'UNKNOWN' | 'LEVEL1' | 'LEVEL2' | 'LEVEL3' | 'LEVEL4' | 'LEVEL5': Indicates the level of the category in the taxonomy.
          - `productChannel` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductChannel: Locality of a product offer.
            - `channel` 'UNSPECIFIED' | 'UNKNOWN' | 'ONLINE' | 'LOCAL': Value of the locality.
          - `productCondition` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductCondition: Condition of a product offer.
            - `condition` 'UNSPECIFIED' | 'UNKNOWN' | 'NEW' | 'REFURBISHED' | 'USED': Value of the condition.
          - `productCustomAttribute` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductCustomAttribute: Custom attribute of a product offer.
            - `index` 'UNSPECIFIED' | 'UNKNOWN' | 'INDEX0' | 'INDEX1' | 'INDEX2' | 'INDEX3' | 'INDEX4': Indicates the index of the custom attribute.
            - `value` string: String value of the product custom attribute.
          - `productItemId` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductItemId: Item id of a product offer.
            - `value` string: Value of the id.
          - `productType` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductType: Type of a product offer.
            - `level` 'UNSPECIFIED' | 'UNKNOWN' | 'LEVEL1' | 'LEVEL2' | 'LEVEL3' | 'LEVEL4' | 'LEVEL5': Level of the type.
            - `value` string: Value of the type.
          - `webpage` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionWebpage: Filters for URLs in a page feed and URLs from the advertiser web domain. Several root nodes with this dimension are allowed in an asset group and their conditions are considered in OR.
            - `conditions` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionWebpageCondition[]: The webpage conditions are case sensitive and these are and-ed together when evaluated for filtering. All the conditions should be of same type. Example1: for URL1 = www.ads.google.com?ocid=1&euid=2 and URL2 = www.ads.google.com?ocid=1 and with "ocid" and "euid" as url_contains conditions, URL1 will be matched, but URL2 not. Example2 : If URL1 has Label1, Label2 and URL2 has Label2, Label3, then with Label1 and Label2 as custom_label conditions, URL1 will be matched but not URL2. With Label2 as the only custom_label condition then both URL1 and URL2 will be matched.
              - …
        - `id` string, int64: Output only. The ID of the ListingGroupFilter.
        - `listingSource` 'UNSPECIFIED' | 'UNKNOWN' | 'SHOPPING' | 'WEBPAGE': Immutable. The source of listings filtered by this listing group filter.
        - `parentListingGroupFilter` string: Immutable. Resource name of the parent listing group subdivision. Null for the root listing group filter node.
        - `path` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionPath: The path defining of dimensions defining a listing group filter.
          - `dimensions` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimension[]: Output only. The complete path of dimensions through the listing group filter hierarchy (excluding the root node) to this listing group filter.
            - `productBrand` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductBrand: Brand of the product.
              - …
            - `productCategory` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductCategory: One element of a category at a certain level. Top-level categories are at level 1, their children at level 2, and so on. We currently support up to 5 levels. The user must specify a dimension type that indicates the level of the category. All cases of the same subdivision must have the same dimension type (category level).
              - …
            - `productChannel` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductChannel: Locality of a product offer.
              - …
            - `productCondition` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductCondition: Condition of a product offer.
              - …
            - `productCustomAttribute` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductCustomAttribute: Custom attribute of a product offer.
              - …
            - `productItemId` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductItemId: Item id of a product offer.
              - …
            - `productType` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductType: Type of a product offer.
              - …
            - `webpage` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionWebpage: Filters for URLs in a page feed and URLs from the advertiser web domain. Several root nodes with this dimension are allowed in an asset group and their conditions are considered in OR.
              - …
        - `resourceName` string: Immutable. The resource name of the asset group listing group filter. Asset group listing group filter resource name have the form: `customers/{customer_id}/assetGroupListingGroupFilters/{asset_group_id}~{listing_group_filter_id}`
        - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'SUBDIVISION' | 'UNIT_INCLUDED' | 'UNIT_EXCLUDED': Immutable. Type of a listing group filter node.
      - `remove` string: Remove operation: A resource name for the removed asset group listing group filter is expected, in this format: `customers/{customer_id}/assetGroupListingGroupFilters/{asset_group_id}~{listing_group_filter_id}` An entity can be removed only if it's not referenced by other parent_listing_group_id. If multiple entities are being deleted, the mutates must be in the correct order.
      - `update` GoogleAdsSearchads360V23ResourcesAssetGroupListingGroupFilter: AssetGroupListingGroupFilter represents a listing group filter tree node in an asset group.
        - `assetGroup` string: Immutable. The asset group which this asset group listing group filter is part of.
        - `caseValue` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimension: Listing dimensions for the asset group listing group filter.
          - `productBrand` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductBrand: Brand of the product.
            - `value` string: String value of the product brand.
          - `productCategory` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductCategory: One element of a category at a certain level. Top-level categories are at level 1, their children at level 2, and so on. We currently support up to 5 levels. The user must specify a dimension type that indicates the level of the category. All cases of the same subdivision must have the same dimension type (category level).
            - `categoryId` string, int64: ID of the product category. This ID is equivalent to the google_product_category ID as described in this article: https://support.google.com/merchants/answer/6324436
            - `level` 'UNSPECIFIED' | 'UNKNOWN' | 'LEVEL1' | 'LEVEL2' | 'LEVEL3' | 'LEVEL4' | 'LEVEL5': Indicates the level of the category in the taxonomy.
          - `productChannel` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductChannel: Locality of a product offer.
            - `channel` 'UNSPECIFIED' | 'UNKNOWN' | 'ONLINE' | 'LOCAL': Value of the locality.
          - `productCondition` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductCondition: Condition of a product offer.
            - `condition` 'UNSPECIFIED' | 'UNKNOWN' | 'NEW' | 'REFURBISHED' | 'USED': Value of the condition.
          - `productCustomAttribute` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductCustomAttribute: Custom attribute of a product offer.
            - `index` 'UNSPECIFIED' | 'UNKNOWN' | 'INDEX0' | 'INDEX1' | 'INDEX2' | 'INDEX3' | 'INDEX4': Indicates the index of the custom attribute.
            - `value` string: String value of the product custom attribute.
          - `productItemId` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductItemId: Item id of a product offer.
            - `value` string: Value of the id.
          - `productType` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductType: Type of a product offer.
            - `level` 'UNSPECIFIED' | 'UNKNOWN' | 'LEVEL1' | 'LEVEL2' | 'LEVEL3' | 'LEVEL4' | 'LEVEL5': Level of the type.
            - `value` string: Value of the type.
          - `webpage` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionWebpage: Filters for URLs in a page feed and URLs from the advertiser web domain. Several root nodes with this dimension are allowed in an asset group and their conditions are considered in OR.
            - `conditions` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionWebpageCondition[]: The webpage conditions are case sensitive and these are and-ed together when evaluated for filtering. All the conditions should be of same type. Example1: for URL1 = www.ads.google.com?ocid=1&euid=2 and URL2 = www.ads.google.com?ocid=1 and with "ocid" and "euid" as url_contains conditions, URL1 will be matched, but URL2 not. Example2 : If URL1 has Label1, Label2 and URL2 has Label2, Label3, then with Label1 and Label2 as custom_label conditions, URL1 will be matched but not URL2. With Label2 as the only custom_label condition then both URL1 and URL2 will be matched.
              - …
        - `id` string, int64: Output only. The ID of the ListingGroupFilter.
        - `listingSource` 'UNSPECIFIED' | 'UNKNOWN' | 'SHOPPING' | 'WEBPAGE': Immutable. The source of listings filtered by this listing group filter.
        - `parentListingGroupFilter` string: Immutable. Resource name of the parent listing group subdivision. Null for the root listing group filter node.
        - `path` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionPath: The path defining of dimensions defining a listing group filter.
          - `dimensions` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimension[]: Output only. The complete path of dimensions through the listing group filter hierarchy (excluding the root node) to this listing group filter.
            - `productBrand` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductBrand: Brand of the product.
              - …
            - `productCategory` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductCategory: One element of a category at a certain level. Top-level categories are at level 1, their children at level 2, and so on. We currently support up to 5 levels. The user must specify a dimension type that indicates the level of the category. All cases of the same subdivision must have the same dimension type (category level).
              - …
            - `productChannel` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductChannel: Locality of a product offer.
              - …
            - `productCondition` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductCondition: Condition of a product offer.
              - …
            - `productCustomAttribute` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductCustomAttribute: Custom attribute of a product offer.
              - …
            - `productItemId` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductItemId: Item id of a product offer.
              - …
            - `productType` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionProductType: Type of a product offer.
              - …
            - `webpage` GoogleAdsSearchads360V23ResourcesListingGroupFilterDimensionWebpage: Filters for URLs in a page feed and URLs from the advertiser web domain. Several root nodes with this dimension are allowed in an asset group and their conditions are considered in OR.
              - …
        - `resourceName` string: Immutable. The resource name of the asset group listing group filter. Asset group listing group filter resource name have the form: `customers/{customer_id}/assetGroupListingGroupFilters/{asset_group_id}~{listing_group_filter_id}`
        - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'SUBDIVISION' | 'UNIT_INCLUDED' | 'UNIT_EXCLUDED': Immutable. Type of a listing group filter node.
      - `updateMask` string, google-fieldmask: FieldMask that determines which resource fields are modified in an update.
    - `assetGroupOperation` GoogleAdsSearchads360V23ServicesAssetGroupOperation: A single operation (create, remove) on an asset group.
      - `create` GoogleAdsSearchads360V23ResourcesAssetGroup: An asset group. AssetGroupAsset is used to link an asset to the asset group. AssetGroupSignal is used to associate a signal to an asset group.
        - `adStrength` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'NO_ADS' | 'POOR' | 'AVERAGE' | 'GOOD' | 'EXCELLENT': Output only. Overall ad strength of this asset group.
        - `assetCoverage` GoogleAdsSearchads360V23ResourcesAssetCoverage: Information about the asset coverage of an asset group.
          - `adStrengthActionItems` GoogleAdsSearchads360V23ResourcesAdStrengthActionItem[]: Output only. A list of action items to improve the ad strength of an asset group.
            - `actionItemType` 'UNSPECIFIED' | 'UNKNOWN' | 'ADD_ASSET': Output only. The action item type.
            - `addAssetDetails` GoogleAdsSearchads360V23ResourcesAdStrengthActionItemAddAssetDetails: The details of the asset to add.
              - …
        - `campaign` string: Immutable. The campaign with which this asset group is associated. The asset which is linked to the asset group.
        - `finalMobileUrls` string[]: A list of final mobile URLs after all cross domain redirects. In performance max, by default, the urls are eligible for expansion unless opted out.
        - `finalUrls` string[]: A list of final URLs after all cross domain redirects. In performance max, by default, the urls are eligible for expansion unless opted out.
        - `id` string, int64: Output only. The ID of the asset group.
        - `name` string: Required. Name of the asset group. Required. It must have a minimum length of 1 and maximum length of 128. It must be unique under a campaign.
        - `path1` string: First part of text that may appear appended to the url displayed in the ad.
        - `path2` string: Second part of text that may appear appended to the url displayed in the ad. This field can only be set when path1 is set.
        - `primaryStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'NOT_ELIGIBLE' | 'LIMITED' | 'PENDING': Output only. The primary status of the asset group. Provides insights into why an asset group is not serving or not serving optimally.
        - `primaryStatusReasons` string[]: Output only. Provides reasons into why an asset group is not serving or not serving optimally. It will be empty when the asset group is serving without issues.
        - `resourceName` string: Immutable. The resource name of the asset group. Asset group resource names have the form: `customers/{customer_id}/assetGroups/{asset_group_id}`
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'PAUSED' | 'REMOVED': The status of the asset group.
      - `remove` string: Remove operation: A resource name for the removed asset group is expected, in this format: `customers/{customer_id}/assetGroups/{asset_group_id}`
      - `update` GoogleAdsSearchads360V23ResourcesAssetGroup: An asset group. AssetGroupAsset is used to link an asset to the asset group. AssetGroupSignal is used to associate a signal to an asset group.
        - `adStrength` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'NO_ADS' | 'POOR' | 'AVERAGE' | 'GOOD' | 'EXCELLENT': Output only. Overall ad strength of this asset group.
        - `assetCoverage` GoogleAdsSearchads360V23ResourcesAssetCoverage: Information about the asset coverage of an asset group.
          - `adStrengthActionItems` GoogleAdsSearchads360V23ResourcesAdStrengthActionItem[]: Output only. A list of action items to improve the ad strength of an asset group.
            - `actionItemType` 'UNSPECIFIED' | 'UNKNOWN' | 'ADD_ASSET': Output only. The action item type.
            - `addAssetDetails` GoogleAdsSearchads360V23ResourcesAdStrengthActionItemAddAssetDetails: The details of the asset to add.
              - …
        - `campaign` string: Immutable. The campaign with which this asset group is associated. The asset which is linked to the asset group.
        - `finalMobileUrls` string[]: A list of final mobile URLs after all cross domain redirects. In performance max, by default, the urls are eligible for expansion unless opted out.
        - `finalUrls` string[]: A list of final URLs after all cross domain redirects. In performance max, by default, the urls are eligible for expansion unless opted out.
        - `id` string, int64: Output only. The ID of the asset group.
        - `name` string: Required. Name of the asset group. Required. It must have a minimum length of 1 and maximum length of 128. It must be unique under a campaign.
        - `path1` string: First part of text that may appear appended to the url displayed in the ad.
        - `path2` string: Second part of text that may appear appended to the url displayed in the ad. This field can only be set when path1 is set.
        - `primaryStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'ELIGIBLE' | 'PAUSED' | 'REMOVED' | 'NOT_ELIGIBLE' | 'LIMITED' | 'PENDING': Output only. The primary status of the asset group. Provides insights into why an asset group is not serving or not serving optimally.
        - `primaryStatusReasons` string[]: Output only. Provides reasons into why an asset group is not serving or not serving optimally. It will be empty when the asset group is serving without issues.
        - `resourceName` string: Immutable. The resource name of the asset group. Asset group resource names have the form: `customers/{customer_id}/assetGroups/{asset_group_id}`
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'PAUSED' | 'REMOVED': The status of the asset group.
      - `updateMask` string, google-fieldmask: FieldMask that determines which resource fields are modified in an update.
    - `assetGroupSignalOperation` GoogleAdsSearchads360V23ServicesAssetGroupSignalOperation: A single operation (create, remove) on an asset group signal.
      - `create` GoogleAdsSearchads360V23ResourcesAssetGroupSignal: AssetGroupSignal represents a signal in an asset group. The existence of a signal tells the performance max campaign who's most likely to convert. Performance Max uses the signal to look for new people with similar or stronger intent to find conversions across Search, Display, Video, and more.
        - `approvalStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'APPROVED' | 'LIMITED' | 'DISAPPROVED' | 'UNDER_REVIEW': Output only. Approval status is the output value for search theme signal after Google ads policy review. When using Audience signal, this field is not used and will be absent.
        - `assetGroup` string: Immutable. The asset group which this asset group signal belongs to.
        - `audience` GoogleAdsSearchads360V23CommonAudienceInfo: An audience criterion.
          - `audience` string: The Audience resource name.
        - `disapprovalReasons` string[]: Output only. Computed for SearchTheme signals. When using Audience signal, this field is not used and will be absent.
        - `resourceName` string: Immutable. The resource name of the asset group signal. Asset group signal resource name have the form: `customers/{customer_id}/assetGroupSignals/{asset_group_id}~{signal_id}`
        - `searchTheme` GoogleAdsSearchads360V23CommonSearchThemeInfo: A Search Theme criterion only on Performance Max campaign. Represents a keyword-like advertiser input.
          - `text` string: Each Search Theme has a value of a simple string, like keywords. There are limits on overall length, allowed characters, and number of words.
      - `exemptPolicyViolationKeys` GoogleAdsSearchads360V23CommonPolicyViolationKey[]: Optional. The list of policy violation keys that should not cause a PolicyViolationError to be reported. Not all policy violations are exemptable, refer to the is_exemptible field in the returned PolicyViolationError. Resources violating these polices will be saved, but will not be eligible to serve. They may begin serving at a later time due to a change in policies, re-review of the resource, or a change in advertiser certificates.
        - `policyName` string: Unique ID of the violated policy.
        - `violatingText` string: The text that violates the policy if specified. Otherwise, refers to the policy in general (for example, when requesting to be exempt from the whole policy). If not specified for criterion exemptions, the whole policy is implied. Must be specified for ad exemptions.
      - `remove` string: Remove operation: A resource name for the removed asset group signal is expected, in this format: `customers/{customer_id}/assetGroupSignals/{asset_group_id}~{criterion_id}`
    - `assetOperation` GoogleAdsSearchads360V23ServicesAssetOperation: A single operation to create an asset. Supported asset types are YoutubeVideoAsset, MediaBundleAsset, ImageAsset, LeadFormAsset, LocationAsset, and ImageAsset. TextAsset can be created with an Ad inline, but it can also be created apart from an Ad like other assets.
      - `create` GoogleAdsSearchads360V23ResourcesAsset: Asset is a part of an ad which can be shared across multiple ads. It can be an image (ImageAsset), a video (YoutubeVideoAsset), etc. Assets are immutable and cannot be removed. To stop an asset from serving, remove the asset from the entity that is using it.
        - `appDeepLinkAsset` GoogleAdsSearchads360V23CommonAppDeepLinkAsset: An app deep link asset
          - `appDeepLinkUri` string: The uri for the app deep link, The uri can be either a custom scheme uri (e.g. mystore://shoes) or universal uri (e.g. http://www.mystore.com/shoes).
        - `bookOnGoogleAsset` GoogleAdsSearchads360V23CommonBookOnGoogleAsset: A Book on Google asset. Used to redirect user to book through Google. Book on Google will change the redirect url to book directly through Google.
        - `businessMessageAsset` GoogleAdsSearchads360V23CommonBusinessMessageAsset: A business message asset.
          - `callToAction` GoogleAdsSearchads360V23CommonBusinessMessageCallToActionInfo: Display information that encourages the user to take action.
            - `callToActionDescription` string: Required. Text providing a clear value proposition of what users expect once they take the action. Examples: 'Message us for a quote', 'Ask our expert team'.
            - `callToActionSelection` 'UNSPECIFIED' | 'UNKNOWN' | 'APPLY_NOW' | 'BOOK_NOW' | 'CONTACT_US' | 'GET_INFO' | 'GET_OFFER' | 'GET_QUOTE' | 'GET_STARTED' | 'LEARN_MORE': Required. Pre-defined call to action text.
          - `facebookMessengerInfo` GoogleAdsSearchads360V23CommonFacebookMessengerBusinessMessageInfo: Facebook Messenger information to use for messaging.
            - `pageName` string: Required. Facebook page name used for starting a chat on Facebook Messenger.
          - `messageProvider` 'UNSPECIFIED' | 'UNKNOWN' | 'WHATSAPP' | 'FACEBOOK_MESSENGER' | 'ZALO': Required. Message provider of the business message asset.
- … truncated; see the full OpenAPI document linked below

## Response `200`

Successful response

## Changes

- **2026-10-10** `3c8ec4f526ec`: 2 breaking
  - removed the request body
  - removed the media type `*/*` for the response with the status `200`
- **2026-10-10** `ea7aa97dc628`: 2 warning, 14 info
  - added the new `GENERATE_LANDING_PAGE_TEXT` enum value to the `mutateOperationResponses/items/adGroupAdResult/adGroupAd/adGroupAdAssetAutomationSettings/items/assetAutomationType` response property for the response status `200`
  - added the new `GENERATE_LANDING_PAGE_TEXT` enum value to the `mutateOperationResponses/items/campaignResult/campaign/assetAutomationSettings/items/assetAutomationType` response property for the response status `200`
  - added the new optional request property `mutateOperations/items/adGroupAdOperation/create/ad/syntheticContentInfo`
  - added the new optional request property `mutateOperations/items/adGroupAdOperation/update/ad/syntheticContentInfo`
  - …12 more

[Operation history](https://skmtc.dev/google/apis/searchads360/changes/v23/customers/:customerId/searchAds360:mutate/post.md)

---

[API](https://skmtc.dev/google/apis/searchads360.md) · [All operations](https://skmtc.dev/google/apis/searchads360/llms.txt) · [OpenAPI document](https://skmtc.dev/google/apis/searchads360/revisions/3c8ec4f526ec?raw)
