{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/google-ads/json-schema/google-ads-google-ads-googleads-v25-services-generate-text-request-schema.json",
  "title": "GoogleAdsGoogleadsV25Services__GenerateTextRequest",
  "description": "Request message for AssetGenerationService.GenerateText",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/google-ads-customers-assetgenerations-api-openapi.yml#/components/schemas/GoogleAdsGoogleadsV25Services__GenerateTextRequest",
  "type": "object",
  "properties": {
    "assetFieldTypes": {
      "type": "array",
      "description": "Required. Which field types text is being generated for. Supported values are: HEADLINE, LONG_HEADLINE, DESCRIPTION. Required.",
      "items": {
        "type": "string",
        "x-enumDescriptions": [
          "Not specified.",
          "Used for return value only. Represents value unknown in this version.",
          "The asset is linked for use as a headline.",
          "The asset is linked for use as a description.",
          "The asset is linked for use as mandatory ad text.",
          "The asset is linked for use as a marketing image.",
          "The asset is linked for use as a media bundle.",
          "The asset is linked for use as a YouTube video.",
          "The asset is linked to indicate that a hotels campaign is \"Book on Google\" enabled.",
          "The asset is linked for use as a Lead Form extension.",
          "The asset is linked for use as a Promotion extension.",
          "The asset is linked for use as a Callout extension.",
          "The asset is linked for use as a Structured Snippet extension.",
          "The asset is linked for use as a Sitelink.",
          "The asset is linked for use as a Mobile App extension.",
          "The asset is linked for use as a Hotel Callout extension.",
          "The asset is linked for use as a Call extension.",
          "The asset is linked for use as a Price extension.",
          "The asset is linked for use as a long headline.",
          "The asset is linked for use as a business name.",
          "The asset is linked for use as a square marketing image.",
          "The asset is linked for use as a portrait marketing image.",
          "The asset is linked for use as a logo.",
          "The asset is linked for use as a landscape logo.",
          "The asset is linked for use as a non YouTube logo.",
          "The asset is linked for use to select a call-to-action.",
          "The asset is linked for use to select an ad image.",
          "The asset is linked for use as a business logo.",
          "The asset is linked for use as a hotel property in a Performance Max for travel goals campaign.",
          "The asset is linked for use as a Demand Gen carousel card.",
          "The asset is linked for use as a Business Message.",
          "The asset is linked for use as a tall portrait marketing image.",
          "The asset is linked for use as related YouTube videos.",
          "The asset is linked for use as a landing page preview image.",
          "The asset is linked for use as a long description.",
          "The asset is linked for use as a call-to-action.",
          "The asset is linked for use as a classic display image."
        ],
        "enum": [
          "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",
          "RELATED_YOUTUBE_VIDEOS",
          "LANDING_PAGE_PREVIEW",
          "LONG_DESCRIPTION",
          "CALL_TO_ACTION",
          "CLASSIC_DISPLAY_IMAGE"
        ]
      }
    },
    "advertisingChannelType": {
      "x-enumDescriptions": [
        "Not specified.",
        "Used for return value only. Represents value unknown in this version.",
        "Search Network. Includes display bundled, and Search+ campaigns.",
        "Google Display Network only.",
        "Shopping campaigns serve on the shopping property and on google.com search results.",
        "Hotel Ads campaigns.",
        "Video campaigns.",
        "App Campaigns, and App Campaigns for Engagement, that run across multiple channels.",
        "Local ads campaigns.",
        "Smart campaigns.",
        "Performance Max campaigns.",
        "Local services campaigns.",
        "Travel campaigns.",
        "Demand Gen campaigns."
      ],
      "enum": [
        "UNSPECIFIED",
        "UNKNOWN",
        "SEARCH",
        "DISPLAY",
        "SHOPPING",
        "HOTEL",
        "VIDEO",
        "MULTI_CHANNEL",
        "LOCAL",
        "SMART",
        "PERFORMANCE_MAX",
        "LOCAL_SERVICES",
        "TRAVEL",
        "DEMAND_GEN"
      ],
      "description": "Optional. The advertising channel for which to generate assets. Required if existing_context is not provided. Supported channel types: SEARCH, PERFORMANCE_MAX, DISPLAY, and DEMAND_GEN",
      "type": "string"
    },
    "finalUrl": {
      "type": "string",
      "description": "Optional. Final url to use as a source for generating assets. Required if existing_generation_context is not provided or does not have a final url associated with it."
    },
    "existingGenerationContext": {
      "$ref": "#/$defs/GoogleAdsGoogleadsV25Services__AssetGenerationExistingContext",
      "description": "Optional. The setting for which assets are being generated, such as an existing AssetGroup or AdGroupAd."
    },
    "freeformPrompt": {
      "type": "string",
      "description": "Optional. A freeform description of what assets should be generated. The string length must be between 1 and 1500, inclusive."
    },
    "keywords": {
      "description": "Optional. A freeform list of keywords that are relevant, used to inform asset generation.",
      "items": {
        "type": "string"
      },
      "type": "array"
    }
  },
  "$defs": {
    "GoogleAdsGoogleadsV25Services__AssetGenerationExistingContext": {
      "type": "object",
      "properties": {
        "existingAssetGroup": {
          "description": "Resource name of an existing AssetGroup for which these assets are being generated.",
          "type": "string"
        },
        "existingAdGroupAd": {
          "description": "Resource name of an existing AdGroupAd for which these assets are being generated.",
          "type": "string"
        }
      },
      "description": "The context for which assets are being generated, such as an existing AssetGroup or AdGroupAd."
    }
  }
}