Skip to Content
Tool referenceCreate Google display campaign

Create Google display campaign (adsap_google_create_display_campaign)

Platform: Google Ads · Read or write: Write · Plan: Early Access · Consumes a task: Yes · Preview supported: Yes

What it does

Creates a classic standalone Display campaign in one request: budget, campaign, location and language targeting, a Display ad group and a responsive display ad. Image and video inputs are asset IDs from an earlier upload. The campaign is always created paused. Ask for a preview first.

Parameters

Descriptions are shortened from the tool schema. Your assistant sees the full text.

NameTypeRequiredDescription
ad_account_idstringYesBare 10-digit Google Ads customer ID (from adsap_google_list_ad_accounts). No dashes, no act_ prefix.
campaignobjectYes
campaign.namestringYes
campaign.daily_budgetnumberYesDaily budget in the ACCOUNT CURRENCY as a plain number (e.g. 10). NOT micros, NOT cents.
campaign.bidding_strategyone of auto, maximize_clicks, manual_cpc, maximize_conversions, target_cpa, target_roasNo’auto’ (default) = Maximize Clicks. ‘target_cpa’ is the STANDALONE scheme (Display rejects a target CPA inside maximize_conversions). ‘target_roas’ has a conversion-history eligibility gate.
campaign.cpc_bidnumberNoMax CPC bid in the account currency. REQUIRED with manual_cpc; invalid otherwise.
campaign.target_cpanumberNoTarget cost per action in the account currency. REQUIRED with bidding_strategy target_cpa; invalid otherwise.
campaign.target_roasnumberNoTarget return on ad spend as a multiplier (3.5 = 350%). REQUIRED with bidding_strategy target_roas.
geoobjectYes
geo.location_idsarray of stringYesGeo target constant ids to TARGET (from adsap_google_search_geo_targets). Campaign-level, like Search.
geo.negative_location_idsarray of stringNoGeo target constant ids to EXCLUDE.
language_idsarray of stringNoLanguage constant ids (e.g. 1000 = English). Campaign-level; omit to target all languages.
ad_groupobjectNo
ad_group.namestringNoAd group name (defaults to ‘<campaign name> - ad group’).
ad_group.optimized_targetingbooleanNoOptimized targeting (default true): Google reaches beyond your criteria; the geo/language criteria stay the hard limits.
adobjectYes
ad.final_urlstringYesLanding page URL (on the ad, required).
ad.business_namestringYes
ad.long_headlinestringYesEXACTLY ONE long headline, max 90 chars (Display-specific slot).
ad.headlinesarray of stringYes
ad.descriptionsarray of stringYes
ad.landscape_image_asset_idsarray of stringYesAt least one landscape (1.91:1, min 600x314) image ASSET id from adsap_google_upload_asset. Landscape + square combined max 15.
ad.square_image_asset_idsarray of stringYesAt least one square (1:1, min 300x300) image ASSET id. Landscape + square combined max 15.
ad.logo_asset_idsarray of stringNoOptional square logos (1:1, min 128x128). Square + landscape logos combined max 5.
ad.landscape_logo_asset_idsarray of stringNoOptional landscape logos (4:1, min 512x128): a Display-only slot with no Demand Gen equivalent.
ad.youtube_video_asset_idsarray of stringNoOptional: up to 5 YouTube video ASSET ids from adsap_google_upload_asset.
ad.call_to_action_textstringNo
ad.control_specobjectNoOptional responsive-display-ad automation controls: enable_asset_enhancements (Google may enhance images/layouts) and enable_autogen_video (Google may generate video versions). Absent = Google’s enabled-by-default behavior.
dry_runbooleanNoPreview only: the request is validated and the resolved payload returned, nothing is created or changed.

Example prompts

  • “Preview a Display campaign at 25 dollars a day targeting Spain with these landscape and square images.”
  • “Create a Display campaign with target CPA at 15 dollars using the assets I uploaded.”
  • “Create the Display campaign we just previewed.”

Notes

Google is moving standalone Display into Demand Gen, and every response carries that heads-up. For new builds, consider a Demand Gen campaign with the display channel selected. The ad needs at least one landscape and one square image, exactly one long headline, and a business name.

  • adsap_google_create_app_campaign: Create a complete Google App campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED: activate later with…
  • adsap_google_create_demand_gen_campaign: Create a complete Google Ads Demand Gen campaign (YouTube, Discover, Gmail, Maps and the Google Display Network) in ONE atomic request…
  • adsap_google_create_pmax_campaign: Create a complete Google Ads Performance Max campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED: activate later with…
  • adsap_google_create_search_campaign: Create a complete Google Ads Search campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED: activate later with…
  • adsap_google_create_shopping_campaign: Create a complete standard Google Shopping campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED: activate later with…
  • adsap_google_list_campaigns: List Google Ads campaigns in a Google Ads account (cache-first; auto-refreshes from Google when the cache is missing or older than 1 hour).

Guide

Read Google Display campaigns for the workflow around this tool, and the Tool reference for every tool.

Last updated on