Skip to Content
Tool referenceUpdate Google Ads entity

Update Google Ads entity (adsap_google_update_entity)

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

What it does

Edits an existing Google Ads campaign, ad group, ad or keyword. It changes status, renames a campaign or ad group, sets a campaign daily budget, changes the bidding scheme or targets, edits asset automation, or sets a keyword max CPC. Only the fields you name change. A preview shows the diff before it applies.

When to use it

  • Use it to change one existing campaign, ad group, ad or keyword. Put only the fields you want to change in updates.
  • It supports a preview call. With dry_run set to true, you get current and new values, validated by Google, and nothing is applied.
  • daily_budget and bidding work on campaigns only. cpc_bid works on keywords only. Ads cannot be renamed.
  • Money values such as daily_budget, cpc_bid and target_cpa are plain amounts in the account currency, such as 12.50.
  • To pause or reactivate several entities at once, use adsap_google_set_entity_status. To change keyword text or match type, use adsap_google_manage_keywords.

Worked example

You ask

“Preview raising the daily budget of campaign 21000000001 to 80 in Google Ads account 1234567890.”

The assistant calls adsap_google_update_entity

{ "ad_account_id": "1234567890", "entity_type": "campaign", "entity_id": "21000000001", "updates": { "daily_budget": 80 }, "dry_run": true }

Adsap returns

The field names are the ones Adsap returns. The values are examples.

{ "ok": true, "dry_run": true, "platform": "google", "entity_type": "campaign", "entity_id": "21000000001", "name": "Spring sale", "current_status": "ENABLED", "changes": [ { "field": "daily_budget", "current_value": 50, "new_value": 80, "will_change": true } ], "total_would_change": 1, "google_validation": "passed", "warnings": [] }

How to read it

Each row in changes names a field with its current and new value. will_change is false when the new value equals the current one. total_would_change counts the rows that would change. Budget values are amounts in the account currency. current_status uses Google’s wording, so an active campaign reads ENABLED.

google_validation reads passed when Google accepts the change. Otherwise it carries Google’s error message. warnings gets an entry when the campaign uses a shared budget, because the new amount would apply to every campaign on that budget. The response also carries a human_readable_summary sentence, left out of this example. To apply the change, the assistant repeats the call with dry_run set to false.

Parameters

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

NameTypeRequiredDescription
entity_typeone of campaign, ad_group, ad, keywordYesGoogle Ads vocabulary: the middle level is ad_group (not adset). keyword targets one ad-group criterion.
entity_idstringYes
ad_account_idstringYesBare 10-digit Google Ads customer ID (from adsap_google_list_ad_accounts). No dashes, no act_ prefix.
updatesobjectYesOnly the fields you want to change. At least one is required.
updates.namestringNoNew name. Campaigns and ad groups only: Google ads have no editable name.
updates.statusone of PAUSED, ACTIVENoACTIVE maps to Google’s ENABLED.
updates.daily_budgetnumberNoDaily budget in the ACCOUNT CURRENCY as a plain number (e.g. 12.50): NOT micros, NOT cents. Campaigns only: Google budgets live at campaign level (there is no ad-set/ad-group budget). Changing a shared budget affects every campaign using it (a warning is returned).
updates.cpc_bidnumberNoPer-keyword max CPC in the ACCOUNT CURRENCY (e.g. 1.25). Keywords only. Only used when the campaign bids Manual CPC: automated strategies silently ignore it.
updates.biddingobjectNoCampaigns only: change the bidding scheme and/or its target values. Portfolio-strategy campaigns are rejected (edit those in Google Ads directly).
updates.asset_automationobjectNoAsset-automation toggles by key, true = opt in / false = opt out; untouched keys keep their current setting. CAMPAIGNS (PMax + Search only): text_asset_automation, final_url_expansion (both channels); generate_image_enhancement, generate_enhanced_youtube_videos, generate_image_extraction (PMax only). Google rejects turning text_asset_automation OFF while final_url_expansion stays ON: turn both off in the same call.
dry_runbooleanNoPreview only: the request is validated and the resolved payload returned, nothing is created or changed.

Example prompts

  • “Raise the daily budget on my Google campaign Summer Sale to 80.”
  • “Switch my Search campaign to target CPA at 25 dollars.”
  • “Rename the ad group Boots to Winter Boots.”
  • “Set the max CPC on this keyword to 1.20.”

Notes

Keyword text cannot be changed here. Keyword bids only apply on Manual CPC campaigns. Portfolio bidding strategies are rejected.

Guide

Read Managing Google Ads in bulk for the workflow around this tool, and the Tool reference for every tool.

The Google Ads MCP server  page shows how to connect Google Ads to Claude, ChatGPT or Perplexity.

Last updated on