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

# POST /v23/customers/{customersId}/searchAds360:mutate

`POST /v23/customers/{customersId}/searchAds360:mutate`

## Request

- Base URL: `https://searchads360.googleapis.com`
- URL: `https://searchads360.googleapis.com/v23/customers/{customersId}/searchAds360:mutate`
- Auth: OAuth 2 and OAuth 2
  - Implicit: `https://accounts.google.com/o/oauth2/auth`
  - Scopes: `https://www.googleapis.com/auth/doubleclicksearch`
  - Authorization code: `https://accounts.google.com/o/oauth2/auth`
  - Token URL: `https://accounts.google.com/o/oauth2/token` scopes: `https://www.googleapis.com/auth/doubleclicksearch`
- TypeScript: <https://skmtc.dev/google/apis/searchads360/docs/v23/customers/:customersId/searchAds360:mutate/post.ts> (a function with typed inputs; its response is checked against the schema)

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

- `customersId` 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

- GoogleAdsSearchads360V23ServicesMutateSearchAds360Response: Response message for Service.Mutate.
  - `mutateOperationResponses` GoogleAdsSearchads360V23ServicesMutateOperationResponse[]: All responses for the mutate.
    - `adGroupAdLabelResult` GoogleAdsSearchads360V23ServicesMutateAdGroupAdLabelResult: The result for an ad group ad label mutate.
      - `resourceName` string: Returned for successful operations.
    - `adGroupAdResult` GoogleAdsSearchads360V23ServicesMutateAdGroupAdResult: The result for the ad mutate.
      - `adGroupAd` 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.
      - `resourceName` string: The resource name returned for successful operations.
    - `adGroupAssetResult` GoogleAdsSearchads360V23ServicesMutateAdGroupAssetResult: The result for the ad group asset mutate.
      - `adGroupAsset` 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.
      - `resourceName` string: Returned for successful operations.
    - `adGroupBidModifierResult` GoogleAdsSearchads360V23ServicesMutateAdGroupBidModifierResult: The result for the criterion mutate.
      - `adGroupBidModifier` 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}`
      - `resourceName` string: Returned for successful operations.
    - `adGroupCriterionCustomizerResult` GoogleAdsSearchads360V23ServicesMutateAdGroupCriterionCustomizerResult: The result for the ad group criterion customizer mutate.
      - `adGroupCriterionCustomizer` 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.
      - `resourceName` string: Returned for successful operations.
    - `adGroupCriterionLabelResult` GoogleAdsSearchads360V23ServicesMutateAdGroupCriterionLabelResult: The result for an ad group criterion label mutate.
      - `resourceName` string: Returned for successful operations.
    - `adGroupCriterionResult` GoogleAdsSearchads360V23ServicesMutateAdGroupCriterionResult: The result for the criterion mutate.
      - `adGroupCriterion` 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.
      - `resourceName` string: Returned for successful operations.
    - `adGroupCustomizerResult` GoogleAdsSearchads360V23ServicesMutateAdGroupCustomizerResult: The result for the ad group customizer mutate.
      - `adGroupCustomizer` 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.
      - `resourceName` string: Returned for successful operations.
    - `adGroupLabelResult` GoogleAdsSearchads360V23ServicesMutateAdGroupLabelResult: The result for an ad group label mutate.
      - `resourceName` string: Returned for successful operations.
    - `adGroupResult` GoogleAdsSearchads360V23ServicesMutateAdGroupResult: The result for the ad group mutate.
      - `adGroup` 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.
      - `resourceName` string: Returned for successful operations.
    - `adParameterResult` GoogleAdsSearchads360V23ServicesMutateAdParameterResult: The result for the ad parameter mutate.
      - `adParameter` 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}`
      - `resourceName` string: The resource name returned for successful operations.
    - `adResult` GoogleAdsSearchads360V23ServicesMutateAdResult: The result for the ad mutate.
      - `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.
            - `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.
      - `resourceName` string: The resource name returned for successful operations.
    - `assetGroupAssetResult` GoogleAdsSearchads360V23ServicesMutateAssetGroupAssetResult: The result for the asset group asset mutate.
      - `resourceName` string: Returned for successful operations.
    - `assetGroupListingGroupFilterResult` GoogleAdsSearchads360V23ServicesMutateAssetGroupListingGroupFilterResult: The result for the asset group listing group filter mutate.
      - `assetGroupListingGroupFilter` 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.
      - `resourceName` string: Returned for successful operations.
    - `assetGroupResult` GoogleAdsSearchads360V23ServicesMutateAssetGroupResult: The result for the asset group mutate.
      - `resourceName` string: Returned for successful operations.
    - `assetGroupSignalResult` GoogleAdsSearchads360V23ServicesMutateAssetGroupSignalResult: The result for the asset group signal mutate.
      - `assetGroupSignal` 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.
      - `resourceName` string: Returned for successful operations.
    - `assetResult` GoogleAdsSearchads360V23ServicesMutateAssetResult: The result for the asset mutate.
      - `asset` 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.
          - `starterMessage` string: Required. A welcome message to prompt the user to initiate a conversation.
          - `whatsappInfo` GoogleAdsSearchads360V23CommonWhatsappBusinessMessageInfo: Whatsapp information to use for messaging.
            - `countryCode` string: Required. Two-letter country code of the phone number. Examples: 'US', 'us'.
            - `phoneNumber` string: Required. Whatsapp phone number of the business. Examples: '1234567890', '(123)456-7890'.
          - `zaloInfo` GoogleAdsSearchads360V23CommonZaloBusinessMessageInfo: Zalo information to use for messaging.
            - `customName` string: Custom name generated by the advertiser for their Zalo Account. These names will usually be registered brands or trademarks.
            - `oaId` string, int64: Zalo Official Account ID of the advertiser.
        - `callAsset` GoogleAdsSearchads360V23CommonCallAsset: A Call asset.
          - `adScheduleTargets` GoogleAdsSearchads360V23CommonAdScheduleInfo[]: List of non-overlapping schedules specifying all time intervals for which the asset may serve. There can be a maximum of 6 schedules per day, 42 in total.
            - `dayOfWeek` 'UNSPECIFIED' | 'UNKNOWN' | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY': Day of the week the schedule applies to. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endHour` integer: Ending hour in 24 hour time; 24 signifies end of the day. This field must be between 0 and 24, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the end hour at which this schedule ends. The schedule is exclusive of the end minute. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startHour` integer: Starting hour in 24 hour time. This field must be between 0 and 23, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the start hour at which this schedule starts. This field is required for CREATE operations and is prohibited on UPDATE operations.
          - `callConversionAction` string: The conversion action to attribute a call conversion to. If not set, the default conversion action is used. This field only has effect if call_conversion_reporting_state is set to USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION.
          - `callConversionReportingState` 'UNSPECIFIED' | 'UNKNOWN' | 'DISABLED' | 'USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION' | 'USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION': Indicates whether this CallAsset should use its own call conversion setting, follow the account level setting, or disable call conversion.
          - `countryCode` string: Required. Two-letter country code of the phone number. Examples: 'US', 'us'.
          - `phoneNumber` string: Required. The advertiser's raw phone number. Examples: '1234567890', '(123)456-7890'
        - `callToActionAsset` GoogleAdsSearchads360V23CommonCallToActionAsset: A call to action asset.
          - `callToAction` 'UNSPECIFIED' | 'UNKNOWN' | 'LEARN_MORE' | 'GET_QUOTE' | 'APPLY_NOW' | 'SIGN_UP' | 'CONTACT_US' | 'SUBSCRIBE' | 'DOWNLOAD' | 'BOOK_NOW' | 'SHOP_NOW' | 'BUY_NOW' | 'DONATE_NOW' | 'ORDER_NOW' | 'PLAY_NOW' | 'SEE_MORE' | 'START_NOW' | 'VISIT_SITE' | 'WATCH_NOW': Call to action.
        - `calloutAsset` GoogleAdsSearchads360V23CommonCalloutAsset: A Callout asset.
          - `adScheduleTargets` GoogleAdsSearchads360V23CommonAdScheduleInfo[]: List of non-overlapping schedules specifying all time intervals for which the asset may serve. There can be a maximum of 6 schedules per day, 42 in total.
            - `dayOfWeek` 'UNSPECIFIED' | 'UNKNOWN' | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY': Day of the week the schedule applies to. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endHour` integer: Ending hour in 24 hour time; 24 signifies end of the day. This field must be between 0 and 24, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the end hour at which this schedule ends. The schedule is exclusive of the end minute. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startHour` integer: Starting hour in 24 hour time. This field must be between 0 and 23, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the start hour at which this schedule starts. This field is required for CREATE operations and is prohibited on UPDATE operations.
          - `calloutText` string: Required. The callout text. The length of this string should be between 1 and 25, inclusive.
          - `endDate` string: Last date of when this asset is effective and still serving, in yyyy-MM-dd format.
          - `startDate` string: Start date of when this asset is effective and can begin serving, in yyyy-MM-dd format.
        - `creationTime` string: Output only. The timestamp when this asset was created. The timestamp is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss" format.
        - `demandGenCarouselCardAsset` GoogleAdsSearchads360V23CommonDemandGenCarouselCardAsset: A Demand Gen Carousel Card asset.
          - `callToActionText` string: Call to action text.
          - `headline` string: Required. Headline of the carousel card.
          - `marketingImageAsset` string: Asset resource name of the associated 1.91:1 marketing image. This and/or square marketing image asset is required.
          - `portraitMarketingImageAsset` string: Asset resource name of the associated 4:5 portrait marketing image.
          - `squareMarketingImageAsset` string: Asset resource name of the associated square marketing image. This and/or a marketing image asset is required.
        - `dynamicCustomAsset` GoogleAdsSearchads360V23CommonDynamicCustomAsset: A dynamic custom asset.
          - `androidAppLink` string: Android deep link, for example, android-app://com.example.android/http/example.com/gizmos?1234.
          - `contextualKeywords` string[]: Contextual keywords, for example, Sedans, 4 door sedans.
          - `formattedPrice` string: Formatted price which can be any characters. If set, this attribute will be used instead of 'price', for example, Starting at $20,000.00.
          - `formattedSalePrice` string: Formatted sale price which can be any characters. If set, this attribute will be used instead of 'sale price', for example, On sale for $15,000.00.
          - `id` string: Required. ID which can be any sequence of letters and digits, and must be unique and match the values of remarketing tag, for example, sedan. Required.
          - `id2` string: ID2 which can be any sequence of letters and digits, for example, red. ID sequence (ID + ID2) must be unique.
          - `imageUrl` string: Image URL, for example, http://www.example.com/image.png. The image will not be uploaded as image asset.
          - `iosAppLink` string: iOS deep link, for example, exampleApp://content/page.
          - `iosAppStoreId` string, int64: iOS app store ID. This is used to check if the user has the app installed on their device before deep linking. If this field is set, then the ios_app_link field must also be present.
          - `itemAddress` string: Item address which can be specified in one of the following formats. (1) City, state, code, country, for example, Mountain View, CA, USA. (2) Full address, for example, 123 Boulevard St, Mountain View, CA 94043. (3) Latitude-longitude in the DDD format, for example, 41.40338, 2.17403
          - `itemCategory` string: Item category, for example, Sedans.
          - `itemDescription` string: Item description, for example, Best selling mid-size car.
          - `itemSubtitle` string: Item subtitle, for example, At your Mountain View dealership.
          - `itemTitle` string: Required. Item title, for example, Mid-size sedan. Required.
          - `price` string: Price which can be number followed by the alphabetic currency code, ISO 4217 standard. Use '.' as the decimal mark, for example, 20,000.00 USD.
          - `salePrice` string: Sale price which can be number followed by the alphabetic currency code, ISO 4217 standard. Use '.' as the decimal mark, for example, 15,000.00 USD. Must be less than the 'price' field.
          - `similarIds` string[]: Similar IDs.
        - `dynamicEducationAsset` GoogleAdsSearchads360V23CommonDynamicEducationAsset: A Dynamic Education asset.
          - `address` string: School address which can be specified in one of the following formats. (1) City, state, code, country, for example, Mountain View, CA, USA. (2) Full address, for example, 123 Boulevard St, Mountain View, CA 94043. (3) Latitude-longitude in the DDD format, for example, 41.40338, 2.17403
          - `androidAppLink` string: Android deep link, for example, android-app://com.example.android/http/example.com/gizmos?1234.
          - `contextualKeywords` string[]: Contextual keywords, for example, Nursing certification, Health, Mountain View.
          - `imageUrl` string: Image url, for example, http://www.example.com/image.png. The image will not be uploaded as image asset.
          - `iosAppLink` string: iOS deep link, for example, exampleApp://content/page.
          - `iosAppStoreId` string, int64: iOS app store ID. This is used to check if the user has the app installed on their device before deep linking. If this field is set, then the ios_app_link field must also be present.
          - `locationId` string: Location ID which can be any sequence of letters and digits and must be unique.
          - `programDescription` string: Program description, for example, Nursing Certification.
          - `programId` string: Required. Program ID which can be any sequence of letters and digits, and must be unique and match the values of remarketing tag. Required.
          - `programName` string: Required. Program name, for example, Nursing. Required.
          - `schoolName` string: School name, for example, Mountain View School of Nursing.
          - `similarProgramIds` string[]: Similar program IDs.
          - `subject` string: Subject of study, for example, Health.
          - `thumbnailImageUrl` string: Thumbnail image url, for example, http://www.example.com/thumbnail.png. The thumbnail image will not be uploaded as image asset.
        - `dynamicFlightsAsset` GoogleAdsSearchads360V23CommonDynamicFlightsAsset: A dynamic flights asset.
          - `androidAppLink` string: Android deep link, for example, android-app://com.example.android/http/example.com/gizmos?1234.
          - `customMapping` string: A custom field which can be multiple key to values mapping separated by delimiters (",", "|" and ":"), in the forms of ": , , ... , | : , ... , | ... | : , ... ," for example, wifi: most | aircraft: 320, 77W | flights: 42 | legroom: 32".
          - `destinationId` string: Required. Destination ID which can be any sequence of letters and digits, and must be unique and match the values of remarketing tag. Required.
          - `destinationName` string: Destination name, for example, Paris.
          - `flightDescription` string: Required. Flight description, for example, Book your ticket. Required.
          - `flightPrice` string: Flight price which can be number followed by the alphabetic currency code, ISO 4217 standard. Use '.' as the decimal mark, for example, 100.00 USD.
          - `flightSalePrice` string: Flight sale price which can be number followed by the alphabetic currency code, ISO 4217 standard. Use '.' as the decimal mark, for example, 80.00 USD. Must be less than the 'flight_price' field.
          - `formattedPrice` string: Formatted price which can be any characters. If set, this attribute will be used instead of 'price', for example, Starting at $100.00.
          - `formattedSalePrice` string: Formatted sale price which can be any characters. If set, this attribute will be used instead of 'sale price', for example, On sale for $80.00.
          - `imageUrl` string: Image URL, for example, http://www.example.com/image.png. The image will not be uploaded as image asset.
          - `iosAppLink` string: iOS deep link, for example, exampleApp://content/page.
          - `iosAppStoreId` string, int64: iOS app store ID. This is used to check if the user has the app installed on their device before deep linking. If this field is set, then the ios_app_link field must also be present.
          - `originId` string: Origin ID which can be any sequence of letters and digits. The ID sequence (destination ID + origin ID) must be unique.
          - `originName` string: Origin name, for example, London.
          - `similarDestinationIds` string[]: Similar destination IDs, for example, PAR,LON.
        - `dynamicHotelsAndRentalsAsset` GoogleAdsSearchads360V23CommonDynamicHotelsAndRentalsAsset: A dynamic hotels and rentals asset.
          - `address` string: Address which can be specified in one of the following formats. (1) City, state, code, country, for example, Mountain View, CA, USA. (2) Full address, for example, 123 Boulevard St, Mountain View, CA 94043. (3) Latitude-longitude in the DDD format, for example, 41.40338, 2.17403
          - `androidAppLink` string: Android deep link, for example, android-app://com.example.android/http/example.com/gizmos?1234.
          - `category` string: Category, for example, Hotel suite.
          - `contextualKeywords` string[]: Contextual keywords, for example, Mountain View "Hotels", South Bay hotels.
          - `description` string: Description, for example, Close to SJC Airport.
          - `destinationName` string: Destination name, for example, Downtown Mountain View.
          - `formattedPrice` string: Formatted price which can be any characters. If set, this attribute will be used instead of 'price', for example, Starting at $100.00.
          - `formattedSalePrice` string: Formatted sale price which can be any characters. If set, this attribute will be used instead of 'sale price', for example, On sale for $80.00.
          - `imageUrl` string: Image URL, for example, http://www.example.com/image.png. The image will not be uploaded as image asset.
          - `iosAppLink` string: iOS deep link, for example, exampleApp://content/page.
          - `iosAppStoreId` string, int64: iOS app store ID. This is used to check if the user has the app installed on their device before deep linking. If this field is set, then the ios_app_link field must also be present.
          - `price` string: Price which can be number followed by the alphabetic currency code, ISO 4217 standard. Use '.' as the decimal mark, for example, 100.00 USD.
          - `propertyId` string: Required. Property ID which can be any sequence of letters and digits, and must be unique and match the values of remarketing tag. Required.
          - `propertyName` string: Required. Property name, for example, Mountain View Hotel. Required.
          - `salePrice` string: ISO 4217 standard. Use '.' as the decimal mark, for example, 80.00 USD. Must be less than the 'price' field.
          - `similarPropertyIds` string[]: Similar property IDs.
          - `starRating` string, int64: Star rating. Must be a number between 1 to 5, inclusive.
        - `dynamicJobsAsset` GoogleAdsSearchads360V23CommonDynamicJobsAsset: A dynamic jobs asset.
          - `address` string: Address which can be specified in one of the following formats. (1) City, state, code, country, for example, Mountain View, CA, USA. (2) Full address, for example, 123 Boulevard St, Mountain View, CA 94043. (3) Latitude-longitude in the DDD format, for example, 41.40338, 2.17403.
          - `androidAppLink` string: Android deep link, for example, android-app://com.example.android/http/example.com/gizmos?1234.
          - `contextualKeywords` string[]: Contextual keywords, for example, Software engineering job.
          - `description` string: Description, for example, Apply your technical skills.
          - `imageUrl` string: Image URL, for example, http://www.example.com/image.png. The image will not be uploaded as image asset.
          - `iosAppLink` string: iOS deep link, for example, exampleApp://content/page.
          - `iosAppStoreId` string, int64: iOS app store ID. This is used to check if the user has the app installed on their device before deep linking. If this field is set, then the ios_app_link field must also be present.
          - `jobCategory` string: Job category, for example, Technical.
          - `jobId` string: Required. Job ID which can be any sequence of letters and digits, and must be unique and match the values of remarketing tag. Required.
          - `jobSubtitle` string: Job subtitle, for example, Level II.
          - `jobTitle` string: Required. Job title, for example, Software engineer. Required.
          - `locationId` string: Location ID which can be any sequence of letters and digits. The ID sequence (job ID + location ID) must be unique.
          - `salary` string: Salary, for example, $100,000.
          - `similarJobIds` string[]: Similar job IDs, for example, 1275.
        - `dynamicLocalAsset` GoogleAdsSearchads360V23CommonDynamicLocalAsset: A dynamic local asset.
          - `address` string: Address which can be specified in one of the following formats. (1) City, state, code, country, for example, Mountain View, CA, USA. (2) Full address, for example, 123 Boulevard St, Mountain View, CA 94043. (3) Latitude-longitude in the DDD format, for example, 41.40338, 2.17403.
          - `androidAppLink` string: Android deep link, for example, android-app://com.example.android/http/example.com/gizmos?1234.
          - `category` string: Category, for example, Food.
          - `contextualKeywords` string[]: Contextual keywords, for example, Save groceries coupons.
          - `dealId` string: Required. Deal ID which can be any sequence of letters and digits, and must be unique and match the values of remarketing tag. Required.
          - `dealName` string: Required. Deal name, for example, 50% off at Mountain View Grocers. Required.
          - `description` string: Description, for example, Save on your weekly bill.
          - `formattedPrice` string: Formatted price which can be any characters. If set, this attribute will be used instead of 'price', for example, Starting at $100.00.
          - `formattedSalePrice` string: Formatted sale price which can be any characters. If set, this attribute will be used instead of 'sale price', for example, On sale for $80.00.
          - `imageUrl` string: Image URL, for example, http://www.example.com/image.png. The image will not be uploaded as image asset.
          - `iosAppLink` string: iOS deep link, for example, exampleApp://content/page.
          - `iosAppStoreId` string, int64: iOS app store ID. This is used to check if the user has the app installed on their device before deep linking. If this field is set, then the ios_app_link field must also be present.
          - `price` string: Price which can be a number followed by the alphabetic currency code, ISO 4217 standard. Use '.' as the decimal mark, for example, 100.00 USD.
          - `salePrice` string: Sale price which can be number followed by the alphabetic currency code, ISO 4217 standard. Use '.' as the decimal mark, for example, 80.00 USD. Must be less than the 'price' field.
          - `similarDealIds` string[]: Similar deal IDs, for example, 1275.
          - `subtitle` string: Subtitle, for example, Groceries.
        - `dynamicRealEstateAsset` GoogleAdsSearchads360V23CommonDynamicRealEstateAsset: A dynamic real estate asset.
          - `address` string: Address which can be specified in one of the following formats. (1) City, state, code, country, for example, Mountain View, CA, USA. (2) Full address, for example, 123 Boulevard St, Mountain View, CA 94043. (3) Latitude-longitude in the DDD format, for example, 41.40338, 2.17403
          - `androidAppLink` string: Android deep link, for example, android-app://com.example.android/http/example.com/gizmos?1234.
          - `cityName` string: City name, for example, Mountain View, California.
          - `contextualKeywords` string[]: Contextual keywords, for example, For sale; Houses for sale.
          - `description` string: Description, for example, 3 beds, 2 baths, 1568 sq. ft.
          - `formattedPrice` string: Formatted price which can be any characters. If set, this attribute will be used instead of 'price', for example, Starting at $200,000.00.
          - `imageUrl` string: Image URL, for example, http://www.example.com/image.png. The image will not be uploaded as image asset.
          - `iosAppLink` string: iOS deep link, for example, exampleApp://content/page.
          - `iosAppStoreId` string, int64: iOS app store ID. This is used to check if the user has the app installed on their device before deep linking. If this field is set, then the ios_app_link field must also be present.
          - `listingId` string: Required. Listing ID which can be any sequence of letters and digits, and must be unique and match the values of remarketing tag. Required.
          - `listingName` string: Required. Listing name, for example, Boulevard Bungalow. Required.
          - `listingType` string: Listing type, for example, For sale.
          - `price` string: Price which can be number followed by the alphabetic currency code, ISO 4217 standard. Use '.' as the decimal mark, for example, 200,000.00 USD.
          - `propertyType` string: Property type, for example, House.
          - `similarListingIds` string[]: Similar listing IDs.
        - `dynamicTravelAsset` GoogleAdsSearchads360V23CommonDynamicTravelAsset: A dynamic travel asset.
          - `androidAppLink` string: Android deep link, for example, android-app://com.example.android/http/example.com/gizmos?1234.
          - `category` string: Category, for example, Express.
          - `contextualKeywords` string[]: Contextual keywords, for example, Paris trains.
          - `destinationAddress` string: Destination address which can be specified in one of the following formats. (1) City, state, code, country, for example, Mountain View, CA, USA. (2) Full address, for example, 123 Boulevard St, Mountain View, CA 94043. (3) Latitude-longitude in the DDD format, for example, 41.40338, 2.17403.
          - `destinationId` string: Required. Destination ID which can be any sequence of letters and digits, and must be unique and match the values of remarketing tag. Required.
          - `destinationName` string: Destination name, for example, Paris.
          - `formattedPrice` string: Formatted price which can be any characters. If set, this attribute will be used instead of 'price', for example, Starting at $100.00.
          - `formattedSalePrice` string: Formatted sale price which can be any characters. If set, this attribute will be used instead of 'sale price', for example, On sale for $80.00.
          - `imageUrl` string: Image URL, for example, http://www.example.com/image.png. The image will not be uploaded as image asset.
          - `iosAppLink` string: iOS deep link, for example, exampleApp://content/page.
          - `iosAppStoreId` string, int64: iOS app store ID. This is used to check if the user has the app installed on their device before deep linking. If this field is set, then the ios_app_link field must also be present.
          - `originId` string: Origin ID which can be any sequence of letters and digits. The ID sequence (destination ID + origin ID) must be unique.
          - `originName` string: Origin name, for example, London.
          - `price` string: Price which can be a number followed by the alphabetic currency code, ISO 4217 standard. Use '.' as the decimal mark, for example, 100.00 USD.
          - `salePrice` string: Sale price which can be a number followed by the alphabetic currency code, ISO 4217 standard. Use '.' as the decimal mark, for example, 80.00 USD. Must be less than the 'price' field.
          - `similarDestinationIds` string[]: Similar destination IDs, for example, NYC.
          - `title` string: Required. Title, for example, Book your train ticket. Required.
        - `engineStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'SERVING' | 'SERVING_LIMITED' | 'DISAPPROVED' | 'DISABLED' | 'REMOVED': Output only. The Engine Status for an asset.
        - `fieldTypePolicySummaries` GoogleAdsSearchads360V23ResourcesAssetFieldTypePolicySummary[]: Output only. Policy information for the asset for each FieldType.
          - `assetFieldType` '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': Output only. FieldType of this asset.
          - `assetSource` 'UNSPECIFIED' | 'UNKNOWN' | 'ADVERTISER' | 'AUTOMATICALLY_CREATED': Output only. Source of this asset.
          - `policySummaryInfo` GoogleAdsSearchads360V23ResourcesAssetPolicySummary: Contains policy information for an asset.
            - `approvalStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'DISAPPROVED' | 'APPROVED_LIMITED' | 'APPROVED' | 'AREA_OF_INTEREST_ONLY': Output only. The overall approval status of this asset, calculated based on the status of its individual policy topic entries.
            - `policyTopicEntries` GoogleAdsSearchads360V23CommonPolicyTopicEntry[]: Output only. The list of policy findings for this asset.
              - …
            - `reviewStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'REVIEW_IN_PROGRESS' | 'REVIEWED' | 'UNDER_APPEAL' | 'ELIGIBLE_MAY_SERVE': Output only. Where in the review process this asset is.
        - `finalMobileUrls` string[]: A list of possible final mobile URLs after all cross domain redirects.
        - `finalUrlSuffix` string: URL template for appending params to landing page URLs served with parallel tracking.
        - `finalUrls` string[]: A list of possible final URLs after all cross domain redirects.
        - `hotelCalloutAsset` GoogleAdsSearchads360V23CommonHotelCalloutAsset: An asset representing a hotel callout.
          - `languageCode` string: Required. The language of the hotel callout. Represented as BCP 47 language tag.
          - `text` string: Required. The text of the hotel callout asset. The length of this string should be between 1 and 25, inclusive.
        - `hotelPropertyAsset` GoogleAdsSearchads360V23CommonHotelPropertyAsset: A hotel property asset.
          - `hotelAddress` string: Address of the hotel. Read-only.
          - `hotelName` string: Name of the hotel. Read-only.
          - `placeId` string: Place IDs uniquely identify a place in the Google Places database and on Google Maps. See https://developers.google.com/places/web-service/place-id to learn more.
        - `id` string, int64: Output only. The ID of the asset.
        - `imageAsset` GoogleAdsSearchads360V23CommonImageAsset: An Image asset.
          - `data` string, byte: The raw bytes data of an image. This field is mutate only.
          - `fileSize` string, int64: File size of the image asset in bytes.
          - `fullSize` GoogleAdsSearchads360V23CommonImageDimension: Metadata for an image at a certain size, either original or resized.
            - `heightPixels` string, int64: Height of the image.
            - `url` string: A URL that returns the image with this height and width.
            - `widthPixels` string, int64: Width of the image.
          - `mimeType` 'UNSPECIFIED' | 'UNKNOWN' | 'IMAGE_JPEG' | 'IMAGE_GIF' | 'IMAGE_PNG' | 'FLASH' | 'TEXT_HTML' | 'PDF' | 'MSWORD' | 'MSEXCEL' | 'RTF' | 'AUDIO_WAV' | 'AUDIO_MP3' | 'HTML5_AD_ZIP': MIME type of the image asset.
        - `lastModifiedTime` string: Output only. The datetime when this asset was last modified. The datetime is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss.ssssss" format.
        - `leadFormAsset` GoogleAdsSearchads360V23CommonLeadFormAsset: A Lead Form asset.
          - `backgroundImageAsset` string: Asset resource name of the background image. The image dimensions must be exactly 1200x628.
          - `businessName` string: Required. The name of the business being advertised.
          - `callToActionDescription` string: Required. Text giving a clear value proposition of what users expect once they expand the form.
          - `callToActionType` 'UNSPECIFIED' | 'UNKNOWN' | 'LEARN_MORE' | 'GET_QUOTE' | 'APPLY_NOW' | 'SIGN_UP' | 'CONTACT_US' | 'SUBSCRIBE' | 'DOWNLOAD' | 'BOOK_NOW' | 'GET_OFFER' | 'REGISTER' | 'GET_INFO' | 'REQUEST_DEMO' | 'JOIN_NOW' | 'GET_STARTED': Required. Pre-defined display text that encourages user to expand the form.
          - `customDisclosure` string: Custom disclosure shown along with Google disclaimer on the lead form. Accessible to allowed customers only.
          - `customQuestionFields` GoogleAdsSearchads360V23CommonLeadFormCustomQuestionField[]: Ordered list of custom question fields. This field is subject to a limit of 5 qualifying questions per form.
            - `customQuestionText` string: The exact custom question field text (for example, "What kind of vehicle do you have?").
            - `hasLocationAnswer` boolean: Answer configuration for location question. If true, campaign/account level location data (state, city, business name etc) will be rendered on the Lead Form. Starting V13.1, has_location_answer can only be set for "What is your preferred dealership?" question, for advertisers with Location Assets setup at campaign/account level.
            - `singleChoiceAnswers` GoogleAdsSearchads360V23CommonLeadFormSingleChoiceAnswers: Defines possible answers for a single choice question, usually presented as a single-choice drop-down list.
              - …
          - `deliveryMethods` GoogleAdsSearchads360V23CommonLeadFormDeliveryMethod[]: Configured methods for collected lead data to be delivered to advertiser. Only one method typed as WebhookDelivery can be configured.
            - `webhook` GoogleAdsSearchads360V23CommonWebhookDelivery: Google notifies the advertiser of leads by making HTTP calls to an endpoint they specify. The requests contain JSON matching a schema that Google publishes as part of form ads documentation.
              - …
          - `description` string: Required. Detailed description of the expanded form to describe what the form is asking for or facilitating.
          - `desiredIntent` 'UNSPECIFIED' | 'UNKNOWN' | 'LOW_INTENT' | 'HIGH_INTENT': Chosen intent for the lead form, for example, more volume or more qualified.
          - `fields` GoogleAdsSearchads360V23CommonLeadFormField[]: Ordered list of input fields. This field can be updated by reordering questions, but not by adding or removing questions.
            - `hasLocationAnswer` boolean: Answer configuration for location question. If true, campaign/account level location data (state, city, business name etc) will be rendered on the Lead Form. Starting V13.1, has_location_answer can only be set for "What is your preferred dealership?" question, for advertisers with Location Assets setup at campaign/account level.
            - `inputType` 'UNSPECIFIED' | 'UNKNOWN' | 'FULL_NAME' | 'EMAIL' | 'PHONE_NUMBER' | 'POSTAL_CODE' | 'STREET_ADDRESS' | 'CITY' | 'REGION' | 'COUNTRY' | 'WORK_EMAIL' | 'COMPANY_NAME' | 'WORK_PHONE' | 'JOB_TITLE' | 'GOVERNMENT_ISSUED_ID_CPF_BR' | 'GOVERNMENT_ISSUED_ID_DNI_AR' | 'GOVERNMENT_ISSUED_ID_DNI_PE' | 'GOVERNMENT_ISSUED_ID_RUT_CL' | 'GOVERNMENT_ISSUED_ID_CC_CO' | 'GOVERNMENT_ISSUED_ID_CI_EC' | 'GOVERNMENT_ISSUED_ID_RFC_MX' | 'FIRST_NAME' | 'LAST_NAME' | 'VEHICLE_MODEL' | 'VEHICLE_TYPE' | 'PREFERRED_DEALERSHIP' | 'VEHICLE_PURCHASE_TIMELINE' | 'VEHICLE_OWNERSHIP' | 'VEHICLE_PAYMENT_TYPE' | 'VEHICLE_CONDITION' | 'COMPANY_SIZE' | 'ANNUAL_SALES' | 'YEARS_IN_BUSINESS' | 'JOB_DEPARTMENT' | 'JOB_ROLE' | 'OVER_18_AGE' | 'OVER_19_AGE' | 'OVER_20_AGE' | 'OVER_21_AGE' | 'OVER_22_AGE' | 'OVER_23_AGE' | 'OVER_24_AGE' | 'OVER_25_AGE' | 'OVER_26_AGE' | 'OVER_27_AGE' | 'OVER_28_AGE' | 'OVER_29_AGE' | 'OVER_30_AGE' | 'OVER_31_AGE' | 'OVER_32_AGE' | 'OVER_33_AGE' | 'OVER_34_AGE' | 'OVER_35_AGE' | 'OVER_36_AGE' | 'OVER_37_AGE' | 'OVER_38_AGE' | 'OVER_39_AGE' | 'OVER_40_AGE' | 'OVER_41_AGE' | 'OVER_42_AGE' | 'OVER_43_AGE' | 'OVER_44_AGE' | 'OVER_45_AGE' | 'OVER_46_AGE' | 'OVER_47_AGE' | 'OVER_48_AGE' | 'OVER_49_AGE' | 'OVER_50_AGE' | 'OVER_51_AGE' | 'OVER_52_AGE' | 'OVER_53_AGE' | 'OVER_54_AGE' | 'OVER_55_AGE' | 'OVER_56_AGE' | 'OVER_57_AGE' | 'OVER_58_AGE' | 'OVER_59_AGE' | 'OVER_60_AGE' | 'OVER_61_AGE' | 'OVER_62_AGE' | 'OVER_63_AGE' | 'OVER_64_AGE' | 'OVER_65_AGE' | 'EDUCATION_PROGRAM' | 'EDUCATION_COURSE' | 'PRODUCT' | 'SERVICE' | 'OFFER' | 'CATEGORY' | 'PREFERRED_CONTACT_METHOD' | 'PREFERRED_LOCATION' | 'PREFERRED_CONTACT_TIME' | 'PURCHASE_TIMELINE' | 'YEARS_OF_EXPERIENCE' | 'JOB_INDUSTRY' | 'LEVEL_OF_EDUCATION' | 'PROPERTY_TYPE' | 'REALTOR_HELP_GOAL' | 'PROPERTY_COMMUNITY' | 'PRICE_RANGE' | 'NUMBER_OF_BEDROOMS' | 'FURNISHED_PROPERTY' | 'PETS_ALLOWED_PROPERTY' | 'NEXT_PLANNED_PURCHASE' | 'EVENT_SIGNUP_INTEREST' | 'PREFERRED_SHOPPING_PLACES' | 'FAVORITE_BRAND' | 'TRANSPORTATION_COMMERCIAL_LICENSE_TYPE' | 'EVENT_BOOKING_INTEREST' | 'DESTINATION_COUNTRY' | 'DESTINATION_CITY' | 'DEPARTURE_COUNTRY' | 'DEPARTURE_CITY' | 'DEPARTURE_DATE' | 'RETURN_DATE' | 'NUMBER_OF_TRAVELERS' | 'TRAVEL_BUDGET' | 'TRAVEL_ACCOMMODATION': Describes the input type, which may be a predefined type such as "full name" or a pre-vetted question like "What kind of vehicle do you have?".
            - `singleChoiceAnswers` GoogleAdsSearchads360V23CommonLeadFormSingleChoiceAnswers: Defines possible answers for a single choice question, usually presented as a single-choice drop-down list.
              - …
          - `headline` string: Required. Headline of the expanded form to describe what the form is asking for or facilitating.
          - `postSubmitCallToActionType` 'UNSPECIFIED' | 'UNKNOWN' | 'VISIT_SITE' | 'DOWNLOAD' | 'LEARN_MORE' | 'SHOP_NOW': Pre-defined display text that encourages user action after the form is submitted.
          - `postSubmitDescription` string: Detailed description shown after form submission that describes how the advertiser will follow up with the user.
          - `postSubmitHeadline` string: Headline of text shown after form submission that describes how the advertiser will follow up with the user.
          - `privacyPolicyUrl` string: Required. Link to a page describing the policy on how the collected data is handled by the advertiser/business.
        - `locationAsset` GoogleAdsSearchads360V23CommonLocationAsset: A location asset.
          - `businessProfileLocations` GoogleAdsSearchads360V23CommonBusinessProfileLocation[]: The list of business locations for the customer. This will only be returned if the Location Asset is syncing from the Business Profile account. It is possible to have multiple Business Profile listings under the same account that point to the same Place ID.
            - `labels` string[]: Advertiser specified label for the location on the Business Profile account. This is synced from the Business Profile account.
            - `listingId` string, int64: Listing ID of this Business Profile location. This is synced from the linked Business Profile account.
            - `storeCode` string: Business Profile store code of this location. This is synced from the Business Profile account.
          - `locationOwnershipType` 'UNSPECIFIED' | 'UNKNOWN' | 'BUSINESS_OWNER' | 'AFFILIATE': The type of location ownership. If the type is BUSINESS_OWNER, it will be served as a location extension. If the type is AFFILIATE, it will be served as an affiliate location.
          - `placeId` string: Place IDs uniquely identify a place in the Google Places database and on Google Maps. This field is unique for a given customer ID and asset type. See https://developers.google.com/places/web-service/place-id to learn more about Place ID.
        - `mediaBundleAsset` GoogleAdsSearchads360V23CommonMediaBundleAsset: A MediaBundle asset.
          - `data` string, byte: Media bundle (ZIP file) asset data. The format of the uploaded ZIP file depends on the ad field where it will be used. For more information on the format, see the documentation of the ad field where you plan on using the MediaBundleAsset. This field is mutate only.
        - `mobileAppAsset` GoogleAdsSearchads360V23CommonMobileAppAsset: An asset representing a mobile app.
          - `appId` string: Required. A string that uniquely identifies a mobile application. It should just contain the platform native id, like "com.android.ebay" for Android or "12345689" for iOS.
          - `appStore` 'UNSPECIFIED' | 'UNKNOWN' | 'APPLE_APP_STORE' | 'GOOGLE_APP_STORE': Required. The application store that distributes this specific app.
          - `endDate` string: Last date of when this asset is effective and still serving, in yyyy-MM-dd format.
          - `linkText` string: Required. The visible text displayed when the link is rendered in an ad. The length of this string should be between 1 and 25, inclusive.
          - `startDate` string: Start date of when this asset is effective and can begin serving, in yyyy-MM-dd format.
        - `name` string: Optional name of the asset.
        - `orientation` 'UNSPECIFIED' | 'UNKNOWN' | 'LANDSCAPE' | 'PORTRAIT' | 'SQUARE': Output only. Orientation of the asset. This is only supported for image and video assets.
        - `pageFeedAsset` GoogleAdsSearchads360V23CommonPageFeedAsset: A Page Feed asset.
          - `labels` string[]: Labels used to group the page urls.
          - `pageUrl` string: Required. The webpage that advertisers want to target.
        - `policySummary` GoogleAdsSearchads360V23ResourcesAssetPolicySummary: Contains policy information for an asset.
          - `approvalStatus` 'UNSPECIFIED' | 'UNKNOWN' | 'DISAPPROVED' | 'APPROVED_LIMITED' | 'APPROVED' | 'AREA_OF_INTEREST_ONLY': Output only. The overall approval status of this asset, calculated based on the status of its individual policy topic entries.
          - `policyTopicEntries` GoogleAdsSearchads360V23CommonPolicyTopicEntry[]: Output only. The list of policy findings for this asset.
            - `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 asset is.
        - `priceAsset` GoogleAdsSearchads360V23CommonPriceAsset: An asset representing a list of price offers.
          - `languageCode` string: Required. The language of the price asset. Represented as BCP 47 language tag.
          - `priceOfferings` GoogleAdsSearchads360V23CommonPriceOffering[]: The price offerings of the price asset. The size of this collection should be between 3 and 8, inclusive.
            - `description` string: Required. The description of the price offering. The length of this string should be between 1 and 25, inclusive.
            - `finalMobileUrl` string: The final mobile URL after all cross domain redirects.
            - `finalUrl` string: Required. The final URL after all cross domain redirects.
            - `header` string: Required. The header of the price offering. The length of this string should be between 1 and 25, inclusive.
            - `price` GoogleAdsSearchads360V23CommonMoney: Represents a price in a particular currency.
              - …
            - `unit` 'UNSPECIFIED' | 'UNKNOWN' | 'PER_HOUR' | 'PER_DAY' | 'PER_WEEK' | 'PER_MONTH' | 'PER_YEAR' | 'PER_NIGHT': The price unit of the price offering.
          - `priceQualifier` 'UNSPECIFIED' | 'UNKNOWN' | 'FROM' | 'UP_TO' | 'AVERAGE': The price qualifier of the price asset.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'BRANDS' | 'EVENTS' | 'LOCATIONS' | 'NEIGHBORHOODS' | 'PRODUCT_CATEGORIES' | 'PRODUCT_TIERS' | 'SERVICES' | 'SERVICE_CATEGORIES' | 'SERVICE_TIERS': Required. The type of the price asset.
        - `promotionAsset` GoogleAdsSearchads360V23CommonPromotionAsset: A Promotion asset.
          - `adScheduleTargets` GoogleAdsSearchads360V23CommonAdScheduleInfo[]: List of non-overlapping schedules specifying all time intervals for which the asset may serve. There can be a maximum of 6 schedules per day, 42 in total.
            - `dayOfWeek` 'UNSPECIFIED' | 'UNKNOWN' | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY': Day of the week the schedule applies to. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endHour` integer: Ending hour in 24 hour time; 24 signifies end of the day. This field must be between 0 and 24, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the end hour at which this schedule ends. The schedule is exclusive of the end minute. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startHour` integer: Starting hour in 24 hour time. This field must be between 0 and 23, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the start hour at which this schedule starts. This field is required for CREATE operations and is prohibited on UPDATE operations.
          - `discountModifier` 'UNSPECIFIED' | 'UNKNOWN' | 'UP_TO': A modifier for qualification of the discount.
          - `endDate` string: Last date of when this asset is effective and still serving, in yyyy-MM-dd format.
          - `languageCode` string: The language of the promotion. Represented as BCP 47 language tag.
          - `moneyAmountOff` GoogleAdsSearchads360V23CommonMoney: Represents a price in a particular currency.
            - `amountMicros` string, int64: Amount in micros. One million is equivalent to one unit.
            - `currencyCode` string: Three-character ISO 4217 currency code.
          - `occasion` 'UNSPECIFIED' | 'UNKNOWN' | 'NEW_YEARS' | 'CHINESE_NEW_YEAR' | 'VALENTINES_DAY' | 'EASTER' | 'MOTHERS_DAY' | 'FATHERS_DAY' | 'LABOR_DAY' | 'BACK_TO_SCHOOL' | 'HALLOWEEN' | 'BLACK_FRIDAY' | 'CYBER_MONDAY' | 'CHRISTMAS' | 'BOXING_DAY' | 'INDEPENDENCE_DAY' | 'NATIONAL_DAY' | 'END_OF_SEASON' | 'WINTER_SALE' | 'SUMMER_SALE' | 'FALL_SALE' | 'SPRING_SALE' | 'RAMADAN' | 'EID_AL_FITR' | 'EID_AL_ADHA' | 'SINGLES_DAY' | 'WOMENS_DAY' | 'HOLI' | 'PARENTS_DAY' | 'ST_NICHOLAS_DAY' | 'CARNIVAL' | 'EPIPHANY' | 'ROSH_HASHANAH' | 'PASSOVER' | 'HANUKKAH' | 'DIWALI' | 'NAVRATRI' | 'SONGKRAN' | 'YEAR_END_GIFT': The occasion the promotion was intended for. If an occasion is set, the redemption window will need to fall within the date range associated with the occasion.
          - `ordersOverAmount` GoogleAdsSearchads360V23CommonMoney: Represents a price in a particular currency.
            - `amountMicros` string, int64: Amount in micros. One million is equivalent to one unit.
            - `currencyCode` string: Three-character ISO 4217 currency code.
          - `percentOff` string, int64: Percentage off discount in the promotion. 1,000,000 = 100%. Either this or money_amount_off is required.
          - `promotionBarcodeInfo` GoogleAdsSearchads360V23CommonPromotionBarcodeInfo: Barcode info to generate promotion barcode.
            - `barcodeContent` string: Promotion message to be encoded in the barcode.
            - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'AZTEC' | 'CODABAR' | 'CODE39' | 'CODE128' | 'DATA_MATRIX' | 'EAN8' | 'EAN13' | 'ITF' | 'PDF417' | 'UPC_A': Barcode type used to generate barcode with the correct format.
          - `promotionCode` string: A code the user should use in order to be eligible for the promotion.
          - `promotionQrCodeInfo` GoogleAdsSearchads360V23CommonPromotionQrCodeInfo: QR code info to generate promotion QR code.
            - `qrCodeContent` string: Promotion message to be encoded in the QR code.
          - `promotionTarget` string: Required. A freeform description of what the promotion is targeting.
          - `redemptionEndDate` string: Last date of when the promotion is eligible to be redeemed, in yyyy-MM-dd format.
          - `redemptionStartDate` string: Start date of when the promotion is eligible to be redeemed, in yyyy-MM-dd format.
          - `startDate` string: Start date of when this asset is effective and can begin serving, in yyyy-MM-dd format.
          - `termsAndConditionsText` string: Terms and conditions of the promotion.
          - `termsAndConditionsUri` string: URI to the terms and conditions of the promotion.
        - `resourceName` string: Immutable. The resource name of the asset. Asset resource names have the form: `customers/{customer_id}/assets/{asset_id}`
        - `searchAds360CallAsset` GoogleAdsSearchads360V23CommonUnifiedCallAsset: A unified call asset.
          - `adScheduleTargets` GoogleAdsSearchads360V23CommonAdScheduleInfo[]: List of non-overlapping schedules specifying all time intervals for which the asset may serve. There can be a maximum of 6 schedules per day, 42 in total.
            - `dayOfWeek` 'UNSPECIFIED' | 'UNKNOWN' | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY': Day of the week the schedule applies to. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endHour` integer: Ending hour in 24 hour time; 24 signifies end of the day. This field must be between 0 and 24, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the end hour at which this schedule ends. The schedule is exclusive of the end minute. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startHour` integer: Starting hour in 24 hour time. This field must be between 0 and 23, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the start hour at which this schedule starts. This field is required for CREATE operations and is prohibited on UPDATE operations.
          - `callConversionAction` string: The conversion action to attribute a call conversion to. If not set, the default conversion action is used. This field only has effect if call_conversion_reporting_state is set to USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION.
          - `callConversionReportingState` 'UNSPECIFIED' | 'UNKNOWN' | 'DISABLED' | 'USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION' | 'USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION': Output only. Indicates whether this CallAsset should use its own call conversion setting, follow the account level setting, or disable call conversion.
          - `callOnly` boolean: Whether the call only shows the phone number without a link to the website. Applies to Microsoft Ads.
          - `callTrackingEnabled` boolean: Whether the call should be enabled on call tracking. Applies to Microsoft Ads.
          - `countryCode` string: Two-letter country code of the phone number. Examples: 'US', 'us'.
          - `endDate` string: Last date of when this asset is effective and still serving, in yyyy-MM-dd format.
          - `phoneNumber` string: The advertiser's raw phone number. Examples: '1234567890', '(123)456-7890'
          - `startDate` string: Start date of when this asset is effective and can begin serving, in yyyy-MM-dd format.
          - `useSearcherTimeZone` boolean: Whether to show the call extension in search user's time zone. Applies to Microsoft Ads.
        - `searchAds360CalloutAsset` GoogleAdsSearchads360V23CommonUnifiedCalloutAsset: A unified callout asset.
          - `adScheduleTargets` GoogleAdsSearchads360V23CommonAdScheduleInfo[]: List of non-overlapping schedules specifying all time intervals for which the asset may serve. There can be a maximum of 6 schedules per day, 42 in total.
            - `dayOfWeek` 'UNSPECIFIED' | 'UNKNOWN' | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY': Day of the week the schedule applies to. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endHour` integer: Ending hour in 24 hour time; 24 signifies end of the day. This field must be between 0 and 24, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the end hour at which this schedule ends. The schedule is exclusive of the end minute. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startHour` integer: Starting hour in 24 hour time. This field must be between 0 and 23, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the start hour at which this schedule starts. This field is required for CREATE operations and is prohibited on UPDATE operations.
          - `calloutText` string: The callout text. The length of this string should be between 1 and 25, inclusive.
          - `endDate` string: Last date of when this asset is effective and still serving, in yyyy-MM-dd format.
          - `startDate` string: Start date of when this asset is effective and can begin serving, in yyyy-MM-dd format.
          - `useSearcherTimeZone` boolean: Whether to show the asset in search user's time zone. Applies to Microsoft Ads.
        - `searchAds360LocationAsset` GoogleAdsSearchads360V23CommonUnifiedLocationAsset: A unified location asset.
          - `businessProfileLocations` GoogleAdsSearchads360V23CommonBusinessProfileLocation[]: The list of business locations for the customer. This will only be returned if the Location Asset is syncing from the Business Profile account. It is possible to have multiple Business Profile listings under the same account that point to the same Place ID.
            - `labels` string[]: Advertiser specified label for the location on the Business Profile account. This is synced from the Business Profile account.
            - `listingId` string, int64: Listing ID of this Business Profile location. This is synced from the linked Business Profile account.
            - `storeCode` string: Business Profile store code of this location. This is synced from the Business Profile account.
          - `locationOwnershipType` 'UNSPECIFIED' | 'UNKNOWN' | 'BUSINESS_OWNER' | 'AFFILIATE': The type of location ownership. If the type is BUSINESS_OWNER, it will be served as a location extension. If the type is AFFILIATE, it will be served as an affiliate location.
          - `placeId` string: Place IDs uniquely identify a place in the Google Places database and on Google Maps. This field is unique for a given customer ID and asset type. See https://developers.google.com/places/web-service/place-id to learn more about Place ID.
        - `searchAds360PageFeedAsset` GoogleAdsSearchads360V23CommonUnifiedPageFeedAsset: A Unified Page Feed asset.
          - `labels` string[]: Labels used to group the page urls.
          - `pageUrl` string: The webpage that advertisers want to target.
        - `searchAds360SitelinkAsset` GoogleAdsSearchads360V23CommonUnifiedSitelinkAsset: A unified sitelink asset.
          - `adScheduleTargets` GoogleAdsSearchads360V23CommonAdScheduleInfo[]: List of non-overlapping schedules specifying all time intervals for which the asset may serve. There can be a maximum of 6 schedules per day, 42 in total.
            - `dayOfWeek` 'UNSPECIFIED' | 'UNKNOWN' | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY': Day of the week the schedule applies to. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endHour` integer: Ending hour in 24 hour time; 24 signifies end of the day. This field must be between 0 and 24, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the end hour at which this schedule ends. The schedule is exclusive of the end minute. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startHour` integer: Starting hour in 24 hour time. This field must be between 0 and 23, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the start hour at which this schedule starts. This field is required for CREATE operations and is prohibited on UPDATE operations.
          - `description1` string: First line of the description for the sitelink. If set, the length should be between 1 and 35, inclusive, and description2 must also be set.
          - `description2` string: Second line of the description for the sitelink. If set, the length should be between 1 and 35, inclusive, and description1 must also be set.
          - `endDate` string: Last date of when this asset is effective and still serving, in yyyy-MM-dd format.
          - `linkText` string: URL display text for the sitelink. The length of this string should be between 1 and 25, inclusive.
          - `mobilePreferred` boolean: Whether the preference is for the sitelink asset to be displayed on mobile devices. Applies to Microsoft Ads.
          - `startDate` string: Start date of when this asset is effective and can begin serving, in yyyy-MM-dd format.
          - `trackingId` string, int64: ID used for tracking clicks for the sitelink asset. This is a Yahoo! Japan only field.
          - `useSearcherTimeZone` boolean: Whether to show the sitelink asset in search user's time zone. Applies to Microsoft Ads.
        - `sitelinkAsset` GoogleAdsSearchads360V23CommonSitelinkAsset: A Sitelink asset.
          - `adScheduleTargets` GoogleAdsSearchads360V23CommonAdScheduleInfo[]: List of non-overlapping schedules specifying all time intervals for which the asset may serve. There can be a maximum of 6 schedules per day, 42 in total.
            - `dayOfWeek` 'UNSPECIFIED' | 'UNKNOWN' | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY': Day of the week the schedule applies to. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endHour` integer: Ending hour in 24 hour time; 24 signifies end of the day. This field must be between 0 and 24, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `endMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the end hour at which this schedule ends. The schedule is exclusive of the end minute. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startHour` integer: Starting hour in 24 hour time. This field must be between 0 and 23, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
            - `startMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the start hour at which this schedule starts. This field is required for CREATE operations and is prohibited on UPDATE operations.
          - `description1` string: First line of the description for the sitelink. If set, the length should be between 1 and 35, inclusive, and description2 must also be set.
          - `description2` string: Second line of the description for the sitelink. If set, the length should be between 1 and 35, inclusive, and description1 must also be set.
          - `endDate` string: Last date of when this asset is effective and still serving, in yyyy-MM-dd format.
          - `linkText` string: Required. URL display text for the sitelink. The length of this string should be between 1 and 25, inclusive.
          - `startDate` string: Start date of when this asset is effective and can begin serving, in yyyy-MM-dd format.
        - `source` 'UNSPECIFIED' | 'UNKNOWN' | 'ADVERTISER' | 'AUTOMATICALLY_CREATED': Output only. Source of the asset.
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED' | 'ARCHIVED' | 'PENDING_SYSTEM_GENERATED': Output only. The status of the asset.
        - `structuredSnippetAsset` GoogleAdsSearchads360V23CommonStructuredSnippetAsset: A Structured Snippet asset.
          - `header` string: Required. The header of the snippet. This string should be one of the predefined values at https://developers.google.com/google-ads/api/reference/data/structured-snippet-headers
          - `values` string[]: Required. The values in the snippet. The size of this collection should be between 3 and 10, inclusive. The length of each value should be between 1 and 25 characters, inclusive.
        - `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.
        - `textAsset` GoogleAdsSearchads360V23CommonTextAsset: A Text asset.
          - `text` string: Text content of the text asset.
        - `trackingUrlTemplate` string: URL template for constructing a tracking URL.
        - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'YOUTUBE_VIDEO' | 'MEDIA_BUNDLE' | 'IMAGE' | 'TEXT' | 'LEAD_FORM' | 'BOOK_ON_GOOGLE' | 'PROMOTION' | 'CALLOUT' | 'STRUCTURED_SNIPPET' | 'SITELINK' | 'PAGE_FEED' | 'DYNAMIC_EDUCATION' | 'MOBILE_APP' | 'HOTEL_CALLOUT' | 'CALL' | 'PRICE' | 'CALL_TO_ACTION' | 'DYNAMIC_REAL_ESTATE' | 'DYNAMIC_CUSTOM' | 'DYNAMIC_HOTELS_AND_RENTALS' | 'DYNAMIC_FLIGHTS' | 'DYNAMIC_TRAVEL' | 'DYNAMIC_LOCAL' | 'DYNAMIC_JOBS' | 'LOCATION' | 'HOTEL_PROPERTY' | 'DEMAND_GEN_CAROUSEL_CARD' | 'BUSINESS_MESSAGE' | 'APP_DEEP_LINK': Output only. Type of the asset.
        - `urlCustomParameters` GoogleAdsSearchads360V23CommonCustomParameter[]: A list of mappings to be used for substituting URL custom parameter tags in the tracking_url_template, final_urls, and/or final_mobile_urls.
          - `key` string: The key matching the parameter tag name.
          - `value` string: The value to be substituted.
        - `youtubeVideoAsset` GoogleAdsSearchads360V23CommonYoutubeVideoAsset: A YouTube asset.
          - `youtubeVideoId` string: YouTube video id. This is the 11 character string value used in the YouTube video URL.
          - `youtubeVideoTitle` string: YouTube video title.
      - `resourceName` string: The resource name returned for successful operations.
    - `assetSetAssetResult` GoogleAdsSearchads360V23ServicesMutateAssetSetAssetResult: The result for the asset set asset mutate.
      - `assetSetAsset` GoogleAdsSearchads360V23ResourcesAssetSetAsset: AssetSetAsset is the link between an asset and an asset set. Adding an AssetSetAsset links an asset with an asset set.
        - `asset` string: Immutable. The asset which this asset set asset is linking to.
        - `assetSet` string: Immutable. The asset set which this asset set asset is linking to.
        - `resourceName` string: Immutable. The resource name of the asset set asset. Asset set asset resource names have the form: `customers/{customer_id}/assetSetAssets/{asset_set_id}~{asset_id}`
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED': Output only. The status of the asset set asset. Read-only.
      - `resourceName` string: Returned for successful operations.
    - `assetSetResult` GoogleAdsSearchads360V23ServicesMutateAssetSetResult: The result for the asset set mutate.
      - `assetSet` GoogleAdsSearchads360V23ResourcesAssetSet: An asset set representing a collection of assets. Use AssetSetAsset to link an asset to the asset set.
        - `businessProfileLocationGroup` GoogleAdsSearchads360V23CommonBusinessProfileLocationGroup: Information about a Business Profile dynamic location group. Only applicable if the sync level AssetSet's type is LOCATION_SYNC and sync source is Business Profile.
          - `dynamicBusinessProfileLocationGroupFilter` GoogleAdsSearchads360V23CommonDynamicBusinessProfileLocationGroupFilter: Represents a filter on Business Profile locations in an asset set. If multiple filters are provided, they are AND'ed together.
            - `businessNameFilter` GoogleAdsSearchads360V23CommonBusinessProfileBusinessNameFilter: Business Profile location group business name filter.
              - …
            - `labelFilters` string[]: Used to filter Business Profile locations by label. Only locations that have any of the listed labels will be in the asset set. Label filters are OR'ed together.
            - `listingIdFilters` string[]: Used to filter Business Profile locations by listing ids.
        - `chainLocationGroup` GoogleAdsSearchads360V23CommonChainLocationGroup: Represents information about a Chain dynamic location group. Only applicable if the sync level AssetSet's type is LOCATION_SYNC and sync source is chain.
          - `dynamicChainLocationGroupFilters` GoogleAdsSearchads360V23CommonChainFilter[]: Used to filter chain locations by chain ids. Only Locations that belong to the specified chain(s) will be in the asset set.
            - `chainId` string, int64: Required. Used to filter chain locations by chain id. Only chain locations that belong to the specified chain will be in the asset set.
            - `locationAttributes` string[]: Used to filter chain locations by location attributes. Only chain locations that belong to all of the specified attribute(s) will be in the asset set. If this field is empty, it means no filtering on this field.
        - `hotelPropertyData` GoogleAdsSearchads360V23ResourcesAssetSetHotelPropertyData: For Performance Max for travel goals campaigns with a Hotel Center account link. Read-only.
          - `hotelCenterId` string, int64: Output only. The hotel center ID of the partner.
          - `partnerName` string: Output only. Name of the hotel partner.
        - `id` string, int64: Output only. The ID of the asset set.
        - `locationGroupParentAssetSetId` string, int64: Immutable. Parent asset set ID for the asset set where the elements of this asset set come from. For example: the sync level location AssetSet id where the elements in LocationGroup AssetSet come from. This field is required and only applicable for Location Group typed AssetSet.
        - `locationSet` GoogleAdsSearchads360V23CommonLocationSet: Data related to location set. One of the Google Business Profile (previously known as Google My Business) data, Chain data, and map location data need to be specified.
          - `businessProfileLocationSet` GoogleAdsSearchads360V23CommonBusinessProfileLocationSet: Data used to configure a location set populated from Google Business Profile locations. Different types of filters are AND'ed together, if they are specified.
            - `businessAccountId` string: Immutable. The account ID of the managed business whose locations are to be used. If this field is not set, then all businesses accessible by the user (specified by the emailAddress) are used.
            - `businessNameFilter` string: Used to filter Google Business Profile listings by business name. If businessNameFilter is set, only listings with a matching business name are candidates to be sync'd into Assets.
            - `emailAddress` string: Required. Immutable. Email address of a Google Business Profile account or email address of a manager of the Google Business Profile account.
            - `httpAuthorizationToken` string: Required. Immutable. The HTTP authorization token used to obtain authorization.
            - `labelFilters` string[]: Used to filter Google Business Profile listings by labels. If entries exist in labelFilters, only listings that have any of the labels set are candidates to be synchronized into Assets. If no entries exist in labelFilters, then all listings are candidates for syncing. Label filters are OR'ed together.
            - `listingIdFilters` string[]: Used to filter Google Business Profile listings by listing id. If entries exist in listingIdFilters, only listings specified by the filters are candidates to be synchronized into Assets. If no entries exist in listingIdFilters, then all listings are candidates for syncing. Listing ID filters are OR'ed together.
          - `chainLocationSet` GoogleAdsSearchads360V23CommonChainSet: Data used to configure a location set populated with the specified chains.
            - `chains` GoogleAdsSearchads360V23CommonChainFilter[]: Required. A list of chain level filters, all filters are OR'ed together.
              - …
            - `relationshipType` 'UNSPECIFIED' | 'UNKNOWN' | 'AUTO_DEALERS' | 'GENERAL_RETAILERS': Required. Immutable. Relationship type the specified chains have with this advertiser.
          - `locationOwnershipType` 'UNSPECIFIED' | 'UNKNOWN' | 'BUSINESS_OWNER' | 'AFFILIATE': Required. Immutable. Location Ownership Type (owned location or affiliate location).
          - `mapsLocationSet` GoogleAdsSearchads360V23CommonMapsLocationSet: Wrapper for multiple maps location sync data
            - `mapsLocations` GoogleAdsSearchads360V23CommonMapsLocationInfo[]: Required. A list of maps location info that user manually synced in.
              - …
        - `merchantCenterFeed` GoogleAdsSearchads360V23ResourcesAssetSetMerchantCenterFeed: Merchant ID and Feed Label from Google Merchant Center.
          - `feedLabel` string: Optional. Feed Label from Google Merchant Center.
          - `merchantId` string, int64: Required. Merchant ID from Google Merchant Center
        - `name` string: Required. Name of the asset set. Required. It must have a minimum length of 1 and maximum length of 128.
        - `resourceName` string: Immutable. The resource name of the asset set. Asset set resource names have the form: `customers/{customer_id}/assetSets/{asset_set_id}`
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED': Output only. The status of the asset set. Read-only.
        - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'PAGE_FEED' | 'DYNAMIC_EDUCATION' | 'MERCHANT_CENTER_FEED' | 'DYNAMIC_REAL_ESTATE' | 'DYNAMIC_CUSTOM' | 'DYNAMIC_HOTELS_AND_RENTALS' | 'DYNAMIC_FLIGHTS' | 'DYNAMIC_TRAVEL' | 'DYNAMIC_LOCAL' | 'DYNAMIC_JOBS' | 'LOCATION_SYNC' | 'BUSINESS_PROFILE_DYNAMIC_LOCATION_GROUP' | 'CHAIN_DYNAMIC_LOCATION_GROUP' | 'STATIC_LOCATION_GROUP' | 'HOTEL_PROPERTY' | 'TRAVEL_FEED': Required. Immutable. The type of the asset set. Required.
      - `resourceName` string: Returned for successful operations.
    - `audienceResult` GoogleAdsSearchads360V23ServicesMutateAudienceResult: The result for the audience mutate.
      - `audience` GoogleAdsSearchads360V23ResourcesAudience: Audience is an effective targeting option that lets you intersect different segment attributes, such as detailed demographics and affinities, to create audiences that represent sections of your target segments.
        - `assetGroup` string: Immutable. The asset group that this audience is scoped under. Must be set if and only if scope is ASSET_GROUP. Immutable after creation. If an audience with ASSET_GROUP scope is upgraded to CUSTOMER scope, this field will automatically be cleared.
        - `description` string: Description of this audience.
        - `dimensions` GoogleAdsSearchads360V23CommonAudienceDimension[]: Positive dimensions specifying the audience composition.
          - `age` GoogleAdsSearchads360V23CommonAgeDimension: Dimension specifying users by their age.
            - `ageRanges` GoogleAdsSearchads360V23CommonAgeSegment[]: Contiguous age range to be included in the dimension.
              - …
            - `includeUndetermined` boolean: Include users whose age is not determined.
          - `audienceSegments` GoogleAdsSearchads360V23CommonAudienceSegmentDimension: Dimension specifying users by their membership in other audience segments.
            - `segments` GoogleAdsSearchads360V23CommonAudienceSegment[]: Included audience segments. Users are included if they belong to at least one segment.
              - …
          - `gender` GoogleAdsSearchads360V23CommonGenderDimension: Dimension specifying users by their gender.
            - `genders` string[]: Included gender demographic segments.
            - `includeUndetermined` boolean: Include users whose gender is not determined.
          - `householdIncome` GoogleAdsSearchads360V23CommonHouseholdIncomeDimension: Dimension specifying users by their household income.
            - `includeUndetermined` boolean: Include users whose household income is not determined.
            - `incomeRanges` string[]: Included household income demographic segments.
          - `parentalStatus` GoogleAdsSearchads360V23CommonParentalStatusDimension: Dimension specifying users by their parental status.
            - `includeUndetermined` boolean: Include users whose parental status is undetermined.
            - `parentalStatuses` string[]: Included parental status demographic segments.
        - `exclusionDimension` GoogleAdsSearchads360V23CommonAudienceExclusionDimension: Negative dimension specifying users to exclude from the audience.
          - `exclusions` GoogleAdsSearchads360V23CommonExclusionSegment[]: Audience segment to be excluded.
            - `userList` GoogleAdsSearchads360V23CommonUserListSegment: User list segment.
              - …
        - `id` string, int64: Output only. ID of the audience.
        - `name` string: Name of the audience. It should be unique across all audiences within the account. It must have a minimum length of 1 and maximum length of 255. Required when scope is not set or is set to CUSTOMER. Cannot be set or updated when scope is ASSET_GROUP.
        - `resourceName` string: Immutable. The resource name of the audience. Audience names have the form: `customers/{customer_id}/audiences/{audience_id}`
        - `scope` 'UNSPECIFIED' | 'UNKNOWN' | 'CUSTOMER' | 'ASSET_GROUP': Defines the scope this audience can be used in. By default, the scope is CUSTOMER. Audiences can be created with a scope of ASSET_GROUP for exclusive use by a single asset_group. Scope may change from ASSET_GROUP to CUSTOMER but not from CUSTOMER to ASSET_GROUP.
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED': Output only. Status of this audience. Indicates whether the audience is enabled or removed.
      - `resourceName` string: Returned for successful operations.
    - `biddingDataExclusionResult` GoogleAdsSearchads360V23ServicesMutateBiddingDataExclusionsResult: The result for the data exclusion mutate.
      - `biddingDataExclusion` GoogleAdsSearchads360V23ResourcesBiddingDataExclusion: Represents a bidding data exclusion. Bidding data exclusions can be set in client accounts only, and cannot be used in manager accounts. See "About data exclusions" at https://support.google.com/google-ads/answer/10370710. Note: A customer account can have a maximum of 500 active bidding data exclusions.
        - `advertisingChannelTypes` string[]: The data_exclusion will apply to all the campaigns under the listed channels retroactively as well as going forward when the scope of this exclusion is CHANNEL. The supported advertising channel types are DISPLAY, SEARCH and SHOPPING. Note: a data exclusion with both advertising_channel_types and campaign_ids is not supported.
        - `campaigns` string[]: The data exclusion will apply to the campaigns listed when the scope of this exclusion is CAMPAIGN. The maximum number of campaigns per event is 2000. Note: a data exclusion with both advertising_channel_types and campaign_ids is not supported.
        - `dataExclusionId` string, int64: Output only. The ID of the data exclusion.
        - `description` string: The description of the data exclusion. The description can be at most 2048 characters.
        - `devices` string[]: If not specified, all devices will be included in this exclusion. Otherwise, only the specified targeted devices will be included in this exclusion.
        - `endDateTime` string: Required. The exclusive end time of the data exclusion in yyyy-MM-dd HH:mm:ss format. The length of [start_date_time, end_date_time) interval must be within (0, 14 days].
        - `name` string: The name of the data exclusion. The name can be at most 255 characters.
        - `resourceName` string: Immutable. The resource name of the data exclusion. Data exclusion resource names have the form: `customers/{customer_id}/biddingDataExclusions/{data_exclusion_id}`
        - `scope` 'UNSPECIFIED' | 'UNKNOWN' | 'CUSTOMER' | 'CAMPAIGN' | 'CHANNEL': The scope of the data exclusion.
        - `startDateTime` string: Required. The inclusive start time of the data exclusion in yyyy-MM-dd HH:mm:ss format. A data exclusion is backward looking and should be used for events that start in the past and end either in the past or future.
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED': Output only. The status of the data exclusion.
      - `resourceName` string: Returned for successful operations.
    - `biddingSeasonalityAdjustmentResult` GoogleAdsSearchads360V23ServicesMutateBiddingSeasonalityAdjustmentsResult: The result for the seasonality adjustment mutate.
      - `biddingSeasonalityAdjustment` GoogleAdsSearchads360V23ResourcesBiddingSeasonalityAdjustment: Represents a bidding seasonality adjustment. Cannot be used in manager accounts. See "About seasonality adjustments" at https://support.google.com/google-ads/answer/10369906.
        - `advertisingChannelTypes` string[]: The seasonality adjustment will apply to all the campaigns under the listed channels retroactively as well as going forward when the scope of this adjustment is CHANNEL. The supported advertising channel types are DISPLAY, SEARCH and SHOPPING. Note: a seasonality adjustment with both advertising_channel_types and campaign_ids is not supported.
        - `campaigns` string[]: The seasonality adjustment will apply to the campaigns listed when the scope of this adjustment is CAMPAIGN. The maximum number of campaigns per event is 2000. Note: a seasonality adjustment with both advertising_channel_types and campaign_ids is not supported.
        - `conversionRateModifier` number, double: Conversion rate modifier estimated based on expected conversion rate changes. When this field is unset or set to 1.0 no adjustment will be applied to traffic. The allowed range is 0.1 to 10.0.
        - `description` string: The description of the seasonality adjustment. The description can be at most 2048 characters.
        - `devices` string[]: If not specified, all devices will be included in this adjustment. Otherwise, only the specified targeted devices will be included in this adjustment.
        - `endDateTime` string: Required. The exclusive end time of the seasonality adjustment in yyyy-MM-dd HH:mm:ss format. The length of [start_date_time, end_date_time) interval must be within (0, 14 days].
        - `name` string: The name of the seasonality adjustment. The name can be at most 255 characters.
        - `resourceName` string: Immutable. The resource name of the seasonality adjustment. Seasonality adjustment resource names have the form: `customers/{customer_id}/biddingSeasonalityAdjustments/{seasonality_adjustment_id}`
        - `scope` 'UNSPECIFIED' | 'UNKNOWN' | 'CUSTOMER' | 'CAMPAIGN' | 'CHANNEL': The scope of the seasonality adjustment.
        - `seasonalityAdjustmentId` string, int64: Output only. The ID of the seasonality adjustment.
        - `startDateTime` string: Required. The inclusive start time of the seasonality adjustment in yyyy-MM-dd HH:mm:ss format. A seasonality adjustment is forward looking and should be used for events that start and end in the future.
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED': Output only. The status of the seasonality adjustment.
      - `resourceName` string: Returned for successful operations.
    - `biddingStrategyResult` GoogleAdsSearchads360V23ServicesMutateBiddingStrategyResult: The result for the bidding strategy mutate.
      - `biddingStrategy` GoogleAdsSearchads360V23ResourcesBiddingStrategy: A bidding strategy.
        - `alignedCampaignBudgetId` string, int64: ID of the campaign budget that this portfolio bidding strategy is aligned with. When a portfolio and a campaign budget are aligned, that means that they are attached to the same set of campaigns. After a bidding strategy is aligned with a campaign budget, campaigns that are added to the bidding strategy must also use the aligned campaign budget.
        - `campaignCount` string, int64: Output only. The number of campaigns attached to this bidding strategy. This field is read-only.
        - `currencyCode` string: Immutable. The currency used by the bidding strategy (ISO 4217 three-letter code). For bidding strategies in manager customers, this currency can be set on creation and defaults to the manager customer's currency. For serving customers, this field cannot be set; all strategies in a serving customer implicitly use the serving customer's currency. In all cases the effective_currency_code field returns the currency used by the strategy.
        - `effectiveCurrencyCode` string: Output only. The currency used by the bidding strategy (ISO 4217 three-letter code). For bidding strategies in manager customers, this is the currency set by the advertiser when creating the strategy. For serving customers, this is the customer's currency_code. Bidding strategy metrics are reported in this currency. This field is read-only.
        - `enhancedCpc` GoogleAdsSearchads360V23CommonEnhancedCpc: An automated bidding strategy that raises bids for clicks that seem more likely to lead to a conversion and lowers them for clicks where they seem less likely. This bidding strategy is deprecated and cannot be created anymore. Use ManualCpc with enhanced_cpc_enabled set to true for equivalent functionality.
        - `id` string, int64: Output only. The ID of the bidding strategy.
        - `maximizeConversionValue` GoogleAdsSearchads360V23CommonMaximizeConversionValue: An automated bidding strategy to help get the most conversion value for your campaigns while spending your budget.
          - `cpcBidCeilingMicros` string, int64: Maximum bid limit that can be set by the bid strategy. The limit applies to all keywords managed by the strategy. Mutable for portfolio bidding strategies only.
          - `cpcBidFloorMicros` string, int64: Minimum bid limit that can be set by the bid strategy. The limit applies to all keywords managed by the strategy. Mutable for portfolio bidding strategies only.
          - `targetRoas` number, double: The target return on ad spend (ROAS) option. If set, the bid strategy will maximize revenue while averaging the target return on ad spend. If the target ROAS is high, the bid strategy may not be able to spend the full budget. If the target ROAS is not set, the bid strategy will aim to achieve the highest possible ROAS for the budget.
          - `targetRoasTolerancePercentMillis` string, int64: The percent of ROAS(return on advertising spend) degradation tolerance allowed to increase traffic diversity and conversion volume, specified in millis (for example, 10,000 = 10%). A value of 10,000 means that the advertiser can expect ROAS degradation of up to 10% of the specified target ROAS.
        - `maximizeConversions` GoogleAdsSearchads360V23CommonMaximizeConversions: An automated bidding strategy to help get the most conversions for your campaigns while spending your budget.
          - `cpcBidCeilingMicros` string, int64: Maximum bid limit that can be set by the bid strategy. The limit applies to all keywords managed by the strategy. Mutable for portfolio bidding strategies only.
          - `cpcBidFloorMicros` string, int64: Minimum bid limit that can be set by the bid strategy. The limit applies to all keywords managed by the strategy. Mutable for portfolio bidding strategies only.
          - `targetCpaMicros` string, int64: The target cost-per-action (CPA) option. This is the average amount that you would like to spend per conversion action specified in micro units of the bidding strategy's currency. If set, the bid strategy will get as many conversions as possible at or below the target cost-per-action. If the target CPA is not set, the bid strategy will aim to achieve the lowest possible CPA given the budget.
        - `name` string: The name of the bidding strategy. All bidding strategies within an account must be named distinctly. The length of this string should be between 1 and 255, inclusive, in UTF-8 bytes, (trimmed).
        - `nonRemovedCampaignCount` string, int64: Output only. The number of non-removed campaigns attached to this bidding strategy. This field is read-only.
        - `resourceName` string: Immutable. The resource name of the bidding strategy. Bidding strategy resource names have the form: `customers/{customer_id}/biddingStrategies/{bidding_strategy_id}`
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED': Output only. The status of the bidding strategy. This field is read-only.
        - `targetCpa` GoogleAdsSearchads360V23CommonTargetCpa: An automated bid strategy that sets bids to help get as many conversions as possible at the target cost-per-acquisition (CPA) you set.
          - `cpcBidCeilingMicros` string, int64: Maximum bid limit that can be set by the bid strategy. The limit applies to all keywords managed by the strategy. This should only be set for portfolio bid strategies.
          - `cpcBidFloorMicros` string, int64: Minimum bid limit that can be set by the bid strategy. The limit applies to all keywords managed by the strategy. This should only be set for portfolio bid strategies.
          - `targetCpaMicros` string, int64: Average CPA target. This target should be greater than or equal to minimum billable unit based on the currency for the account.
        - `targetImpressionShare` GoogleAdsSearchads360V23CommonTargetImpressionShare: An automated bidding strategy that sets bids so that a certain percentage of search ads are shown at the top of the first page (or other targeted location).
          - `cpcBidCeilingMicros` string, int64: The highest CPC bid the automated bidding system is permitted to specify. This is a required field entered by the advertiser that sets the ceiling and specified in local micros.
          - `location` 'UNSPECIFIED' | 'UNKNOWN' | 'ANYWHERE_ON_PAGE' | 'TOP_OF_PAGE' | 'ABSOLUTE_TOP_OF_PAGE': The targeted location on the search results page.
          - `locationFractionMicros` string, int64: The chosen fraction of ads to be shown in the targeted location in micros. For example, 1% equals 10,000.
        - `targetRoas` GoogleAdsSearchads360V23CommonTargetRoas: An automated bidding strategy that helps you maximize revenue while averaging a specific target return on ad spend (ROAS).
          - `cpcBidCeilingMicros` string, int64: Maximum bid limit that can be set by the bid strategy. The limit applies to all keywords managed by the strategy. This should only be set for portfolio bid strategies.
          - `cpcBidFloorMicros` string, int64: Minimum bid limit that can be set by the bid strategy. The limit applies to all keywords managed by the strategy. This should only be set for portfolio bid strategies.
          - `targetRoas` number, double: Required. The chosen revenue (based on conversion data) per unit of spend. Value must be between 0.01 and 1000.0, inclusive.
          - `targetRoasTolerancePercentMillis` string, int64: The percent of ROAS(return on advertising spend) degradation tolerance allowed to increase traffic diversity and conversion volume, specified in millis (for example, 10,000 = 10%). A value of 10,000 means that the advertiser can expect ROAS degradation of up to 10% of the specified target ROAS. This field is only mutable for portfolio bidding strategies.
        - `targetSpend` GoogleAdsSearchads360V23CommonTargetSpend: An automated bid strategy that sets your bids to help get as many clicks as possible within your budget.
          - `cpcBidCeilingMicros` string, int64: Maximum bid limit that can be set by the bid strategy. The limit applies to all keywords managed by the strategy.
          - `targetSpendMicros` string, int64: Deprecated: The spend target under which to maximize clicks. A TargetSpend bidder will attempt to spend the smaller of this value or the natural throttling spend amount. If not specified, the budget is used as the spend target. This field is deprecated and should no longer be used. See https://ads-developers.googleblog.com/2020/05/reminder-about-sunset-creation-of.html for details.
        - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'COMMISSION' | 'ENHANCED_CPC' | 'INVALID' | 'MANUAL_CPA' | 'MANUAL_CPC' | 'MANUAL_CPM' | 'MANUAL_CPV' | 'MAXIMIZE_CONVERSIONS' | 'MAXIMIZE_CONVERSION_VALUE' | 'PAGE_ONE_PROMOTED' | 'PERCENT_CPC' | 'TARGET_CPA' | 'TARGET_CPC' | 'TARGET_CPM' | 'TARGET_IMPRESSION_SHARE' | 'TARGET_OUTRANK_SHARE' | 'TARGET_ROAS' | 'TARGET_SPEND': Output only. The type of the bidding strategy. Create a bidding strategy by setting the bidding scheme. This field is read-only.
      - `resourceName` string: Returned for successful operations.
    - `campaignAssetResult` GoogleAdsSearchads360V23ServicesMutateCampaignAssetResult: The result for the campaign asset mutate.
      - `campaignAsset` GoogleAdsSearchads360V23ResourcesCampaignAsset: A link between a Campaign and an Asset.
        - `asset` string: Immutable. The asset which is linked to the campaign.
        - `campaign` string: Immutable. The campaign to which the asset is linked.
        - `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': Immutable. Role that the asset takes under the linked campaign. Required.
        - `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 campaign asset. CampaignAsset resource names have the form: `customers/{customer_id}/campaignAssets/{campaign_id}~{asset_id}~{field_type}`
        - `source` 'UNSPECIFIED' | 'UNKNOWN' | 'ADVERTISER' | 'AUTOMATICALLY_CREATED': Output only. Source of the campaign asset link.
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED' | 'PAUSED': Status of the campaign asset.
      - `resourceName` string: Returned for successful operations.
    - `campaignAssetSetResult` GoogleAdsSearchads360V23ServicesMutateCampaignAssetSetResult: The result for the campaign asset set mutate.
      - `campaignAssetSet` GoogleAdsSearchads360V23ResourcesCampaignAssetSet: CampaignAssetSet is the linkage between a campaign and an asset set. Adding a CampaignAssetSet links an asset set with a campaign.
        - `assetSet` string: Immutable. The asset set which is linked to the campaign.
        - `campaign` string: Immutable. The campaign to which this asset set is linked.
        - `resourceName` string: Immutable. The resource name of the campaign asset set. Asset set asset resource names have the form: `customers/{customer_id}/campaignAssetSets/{campaign_id}~{asset_set_id}`
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED': Output only. The status of the campaign asset set asset. Read-only.
      - `resourceName` string: Returned for successful operations.
    - `campaignBidModifierResult` GoogleAdsSearchads360V23ServicesMutateCampaignBidModifierResult: The result for the criterion mutate.
      - `campaignBidModifier` GoogleAdsSearchads360V23ResourcesCampaignBidModifier: Represents a bid-modifiable only criterion at the campaign level.
        - `bidModifier` number, double: The modifier for the bid when the criterion matches.
        - `campaign` string: Output only. The campaign to which this criterion belongs.
        - `criterionId` string, int64: Output only. The ID of the criterion to bid modify. This field is ignored for mutates.
        - `interactionType` GoogleAdsSearchads360V23CommonInteractionTypeInfo: Criterion for Interaction Type.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'CALLS': The interaction type.
        - `resourceName` string: Immutable. The resource name of the campaign bid modifier. Campaign bid modifier resource names have the form: `customers/{customer_id}/campaignBidModifiers/{campaign_id}~{criterion_id}`
      - `resourceName` string: Returned for successful operations.
    - `campaignBudgetResult` GoogleAdsSearchads360V23ServicesMutateCampaignBudgetResult: The result for the campaign budget mutate.
      - `campaignBudget` GoogleAdsSearchads360V23ResourcesCampaignBudget: A campaign budget.
        - `alignedBiddingStrategyId` string, int64: ID of the portfolio bidding strategy that this shared campaign budget is aligned with. When a bidding strategy and a campaign budget are aligned, they are attached to the same set of campaigns. After a campaign budget is aligned with a bidding strategy, campaigns that are added to the campaign budget must also use the aligned bidding strategy.
        - `amountMicros` string, int64: The average daily amount to be spent by the campaign. This field is used when the CampaignBudget `period` is set to `DAILY`, which is the default. Amount is specified in micros in the account's local currency. One million micros is equivalent to one currency unit. The effective monthly spend is capped at 30.4 times this daily amount. This field is mutually exclusive with 'total_amount_micros'. Only one of 'amount_micros' or 'total_amount_micros' should be set.
        - `deliveryMethod` 'UNSPECIFIED' | 'UNKNOWN' | 'STANDARD' | 'ACCELERATED': The delivery method that determines the rate at which the campaign budget is spent. Defaults to STANDARD if unspecified in a create operation.
        - `explicitlyShared` boolean: Specifies whether the budget is explicitly shared. Defaults to true if unspecified in a create operation. If true, the budget was created with the purpose of sharing across one or more campaigns. If false, the budget was created with the intention of only being used with a single campaign. The budget's name and status will stay in sync with the campaign's name and status. Attempting to share the budget with a second campaign will result in an error. A non-shared budget can become an explicitly shared. The same operation must also assign the budget a name. A shared campaign budget can never become non-shared.
        - `hasRecommendedBudget` boolean: Output only. Indicates whether there is a recommended budget for this campaign budget. This field is read-only.
        - `id` string, int64: Output only. The ID of the campaign budget. A campaign budget is created using the CampaignBudgetService create operation and is assigned a budget ID. A budget ID can be shared across different campaigns; the system will then allocate the campaign budget among different campaigns to get optimum results.
        - `name` string: The name of the campaign budget. When creating a campaign budget through CampaignBudgetService, every explicitly shared campaign budget must have a non-null, non-empty name. Campaign budgets that are not explicitly shared derive their name from the attached campaign's name. The length of this string must be between 1 and 255, inclusive, in UTF-8 bytes, (trimmed).
        - `period` 'UNSPECIFIED' | 'UNKNOWN' | 'DAILY' | 'CUSTOM_PERIOD': Immutable. Period over which to spend the budget. Defaults to DAILY if not specified.
        - `recommendedBudgetAmountMicros` string, int64: Output only. The recommended budget amount. If no recommendation is available, this will be set to the budget amount. Amount is specified in micros, where one million is equivalent to one currency unit. This field is read-only.
        - `recommendedBudgetEstimatedChangeWeeklyClicks` string, int64: Output only. The estimated change in weekly clicks if the recommended budget is applied. This field is read-only.
        - `recommendedBudgetEstimatedChangeWeeklyCostMicros` string, int64: Output only. The estimated change in weekly cost in micros if the recommended budget is applied. One million is equivalent to one currency unit. This field is read-only.
        - `recommendedBudgetEstimatedChangeWeeklyInteractions` string, int64: Output only. The estimated change in weekly interactions if the recommended budget is applied. This field is read-only.
        - `recommendedBudgetEstimatedChangeWeeklyViews` string, int64: Output only. The estimated change in weekly views if the recommended budget is applied. This field is read-only.
        - `referenceCount` string, int64: Output only. The number of campaigns actively using the budget. This field is read-only.
        - `resourceName` string: Immutable. The resource name of the campaign budget. Campaign budget resource names have the form: `customers/{customer_id}/campaignBudgets/{campaign_budget_id}`
        - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'ENABLED' | 'REMOVED': Output only. The status of this campaign budget. This field is read-only.
        - `totalAmountMicros` string, int64: The total amount to be spent by the campaign over its entire duration. This field is used *only* when the CampaignBudget `period` is set to `CUSTOM_PERIOD`. It represents the budget cap for the campaign's lifetime, rather than a daily limit. The amount is specified in micros in the account's local currency. One million micros is equivalent to one currency unit. This field is mutually exclusive with 'amount_micros'. Only one of 'total_amount_micros' or 'amount_micros' should be set.
        - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'STANDARD' | 'FIXED_CPA' | 'SMART_CAMPAIGN' | 'LOCAL_SERVICES': Immutable. The type of the campaign budget.
      - `resourceName` string: Returned for successful operations.
    - `campaignConversionGoalResult` GoogleAdsSearchads360V23ServicesMutateCampaignConversionGoalResult: The result for the campaign conversion goal mutate.
      - `resourceName` string: Returned for successful operations.
    - `campaignCriterionResult` GoogleAdsSearchads360V23ServicesMutateCampaignCriterionResult: The result for the criterion mutate.
      - `campaignCriterion` GoogleAdsSearchads360V23ResourcesCampaignCriterion: A campaign criterion.
        - `adSchedule` GoogleAdsSearchads360V23CommonAdScheduleInfo: Represents an AdSchedule criterion. AdSchedule is specified as the day of the week and a time interval within which ads will be shown. No more than six AdSchedules can be added for the same day.
          - `dayOfWeek` 'UNSPECIFIED' | 'UNKNOWN' | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY': Day of the week the schedule applies to. This field is required for CREATE operations and is prohibited on UPDATE operations.
          - `endHour` integer: Ending hour in 24 hour time; 24 signifies end of the day. This field must be between 0 and 24, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
          - `endMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the end hour at which this schedule ends. The schedule is exclusive of the end minute. This field is required for CREATE operations and is prohibited on UPDATE operations.
          - `startHour` integer: Starting hour in 24 hour time. This field must be between 0 and 23, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.
          - `startMinute` 'UNSPECIFIED' | 'UNKNOWN' | 'ZERO' | 'FIFTEEN' | 'THIRTY' | 'FORTY_FIVE': Minutes after the start hour at which this schedule starts. This field is required for CREATE operations and is prohibited on UPDATE operations.
        - `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.
        - `bidModifier` number, float: The modifier for the bids when the criterion matches. The modifier must be in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. Use 0 to opt out of a Device type.
        - `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.
        - `campaign` string: Immutable. The campaign to which the criterion belongs.
        - `carrier` GoogleAdsSearchads360V23CommonCarrierInfo: Represents a Carrier Criterion.
          - `carrierConstant` string: The Carrier constant resource name.
        - `combinedAudience` GoogleAdsSearchads360V23CommonCombinedAudienceInfo: A combined audience criterion.
          - `combinedAudience` string: The CombinedAudience resource name.
        - `contentLabel` GoogleAdsSearchads360V23CommonContentLabelInfo: Content Label for category exclusion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'SEXUALLY_SUGGESTIVE' | 'BELOW_THE_FOLD' | 'PARKED_DOMAIN' | 'JUVENILE' | 'PROFANITY' | 'TRAGEDY' | 'VIDEO' | 'VIDEO_RATING_DV_G' | 'VIDEO_RATING_DV_PG' | 'VIDEO_RATING_DV_T' | 'VIDEO_RATING_DV_MA' | 'VIDEO_NOT_YET_RATED' | 'EMBEDDED_VIDEO' | 'LIVE_STREAMING_VIDEO' | 'SOCIAL_ISSUES' | 'BRAND_SUITABILITY_CONTENT_FOR_FAMILIES' | 'BRAND_SUITABILITY_GAMES_FIGHTING' | 'BRAND_SUITABILITY_GAMES_MATURE' | 'BRAND_SUITABILITY_HEALTH_SENSITIVE' | 'BRAND_SUITABILITY_HEALTH_SOURCE_UNDETERMINED' | 'BRAND_SUITABILITY_NEWS_RECENT' | 'BRAND_SUITABILITY_NEWS_SENSITIVE' | 'BRAND_SUITABILITY_NEWS_SOURCE_NOT_FEATURED' | 'BRAND_SUITABILITY_POLITICS' | 'BRAND_SUITABILITY_RELIGION': Content label type, required for CREATE operations.
        - `criterionId` string, int64: Output only. The ID of the criterion. This field is ignored during mutate.
        - `device` GoogleAdsSearchads360V23CommonDeviceInfo: A device criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'MOBILE' | 'TABLET' | 'DESKTOP' | 'CONNECTED_TV' | 'OTHER': Type of the device.
        - `displayName` string: Output only. The display name of the criterion. This field is ignored for mutates.
        - `extendedDemographic` GoogleAdsSearchads360V23CommonExtendedDemographicInfo: Represents an extended demographic criterion.
          - `extendedDemographicId` string, int64: Taxonomy id of the extended demographic group.
        - `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.
        - `ipBlock` GoogleAdsSearchads360V23CommonIpBlockInfo: An IpBlock criterion used for excluding IP addresses. We support excluding individual IP addresses or CIDR blocks. Create one IpBlockInfo criterion for each individual IP address or CIDR block you want to exclude. You can exclude up to 500 IP addresses per campaign. For more details, see [Exclude IP addresses](//support.google.com/google-ads/answer/2456098). IPv4 examples: * Individual address: 192.168.0.1 * Individual address as CIDR block: 192.168.0.1/32 * CIDR block: 192.168.0.0/24 IPv6 examples: * Individual address: 2001:db8:a0b:12f0::1 * Individual address as CIDR block: 2001:db8:a0b:12f0::1/128 * CIDR block: 2001:db8::/48
          - `ipAddress` string: The IP address or the CIDR block to be excluded.
        - `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).
        - `keywordTheme` GoogleAdsSearchads360V23CommonKeywordThemeInfo: A Smart Campaign keyword theme.
          - `freeFormKeywordTheme` string: Free-form text to be matched to a Smart Campaign keyword theme constant on a best-effort basis.
          - `keywordThemeConstant` string: The resource name of a Smart Campaign keyword theme constant. `keywordThemeConstants/{keyword_theme_id}~{sub_keyword_theme_id}`
        - `language` GoogleAdsSearchads360V23CommonLanguageInfo: A language criterion.
          - `languageConstant` string: The language constant resource name.
        - `lastModifiedTime` string: Output only. The datetime when this campaign 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.
        - `listingScope` GoogleAdsSearchads360V23CommonListingScopeInfo: A listing scope criterion.
          - `dimensions` GoogleAdsSearchads360V23CommonListingDimensionInfo[]: Scope of the campaign 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.
        - `localServiceId` GoogleAdsSearchads360V23CommonLocalServiceIdInfo: A Local Services Ads service ID. Represents a service type (such as install_faucet) that a Local Services Campaign can target.
          - `serviceId` string: The criterion resource name.
        - `location` GoogleAdsSearchads360V23CommonLocationInfo: A location criterion.
          - `geoTargetConstant` string: The geo target constant resource name.
        - `locationGroup` GoogleAdsSearchads360V23CommonLocationGroupInfo: A radius around a list of locations specified through a feed.
          - `enableCustomerLevelLocationAssetSet` boolean: Denotes that the latest customer level asset set is used for targeting. Used with radius and radius_units. Cannot be used with feed, geo target constants or feed item sets. When using asset sets, either this field or location_group_asset_sets should be specified. Both cannot be used at the same time. This can only be set in CREATE operations.
          - `feedItemSets` string[]: FeedItemSets whose FeedItems are targeted. If multiple IDs are specified, then all items that appear in at least one set are targeted. This field cannot be used with geo_target_constants. This is optional and can only be set in CREATE operations.
          - `geoTargetConstants` string[]: Geo target constant(s) restricting the scope of the geographic area within the feed. Currently only one geo target constant is allowed.
          - `locationGroupAssetSets` string[]: AssetSets whose Assets are targeted. If multiple IDs are specified, then all items that appear in at least one set are targeted. This field cannot be used with feed, geo target constants or feed item sets. When using asset sets, either this field or enable_customer_level_location_asset_set should be specified. Both cannot be used at the same time. This can only be set in CREATE operations.
          - `radius` string, int64: Distance in units specifying the radius around targeted locations. This is required and must be set in CREATE operations.
          - `radiusUnits` 'UNSPECIFIED' | 'UNKNOWN' | 'METERS' | 'MILES' | 'MILLI_MILES': Unit of the radius. Miles and meters are supported for geo target constants. Milli miles and meters are supported for feed item sets. This is required and must be set in CREATE operations.
        - `mobileAppCategory` GoogleAdsSearchads360V23CommonMobileAppCategoryInfo: A mobile app category criterion.
- … truncated; see the full OpenAPI document linked below

---

[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/4a4511f84b18?raw)
