Docs menu
Get started
What is Opus GrowthQuickstartAdd to your AIHow it worksSafety and approvalCreditsPlansFAQAI apps
All AI appsChatGPTClaudeGrokPerplexityClaude CodeCodexGemini CLIOpenClawCursorVS CodeWindsurfOther MCPConnect ad platforms
Google AdsMeta AdsLinkedIn AdsMicrosoft AdvertisingTikTok AdsChatGPT AdsAgencies and MCCConnect data sources
Search ConsoleGoogle AnalyticsYouTubeBusiness ProfileTag ManagerWebsites and SEO
AI ServerWordPressSEO IntelligenceClick fraudTool reference
All toolsGoogle AdsMeta AdsTikTok AdsLinkedIn AdsMicrosoft AdvertisingChatGPT AdsSearch ConsoleGoogle AnalyticsYouTubeBusiness ProfileTag ManagerWordPressAI ServerSEO IntelligenceClick fraudCross-channelAccount and billingLanguage
Update ChatGPT Ads Campaign
Changes an existing ChatGPT Ads campaign: name, budget, locations, platforms, schedule, conversion events, status.
- Type
- Makes changes
- Credits
- 5
- Platform
- ChatGPT Ads
- Approval
- Preview first, applied after you approve
What it does
Changes an existing ChatGPT Ads campaign: name, budget, locations, platforms, schedule, conversion events, status.
Only what you pass changes. Budgets are in the account currency. `daily_budget` on a lifetime-budget campaign SWITCHES it to a daily budget, which OpenAI does not let you undo (a lifetime budget would need a new campaign); the dry run says so. A campaign has exactly one budget type, so pass one of the two. `include_locations` / `exclude_locations` take ISO country codes (TR, GB) or location ids from chatgpt_ads_geo_lookup; `locations_mode`: replace (the list becomes exactly this, default) | add | remove. Changing geography rewrites the whole targeting block, so the current audiences and platforms are read first and sent back unchanged. `platforms`: any of ios_app, android_app, web, desktop_web, ios_web, android_web, or ['all'] to lift the restriction; a platform-only change leaves locations untouched. `start` / `end`: YYYY-MM-DD or YYYY-MM-DDTHH:MM in the account time zone, 'now', or 'none' to remove the date. `conversion_event_setting_ids` attaches event settings for measurement (`conversion_mode` add | replace | remove); it is refused on a conversions-objective campaign because OpenAI locks that event at creation. `status`: active | paused (archiving is chatgpt_ads_status). The objective itself can never change. confirm=false returns a dry run showing each current value next to the proposed one.
MCP: update_chatgpt_ads_campaign
How to use it
You don't call tools by name. Write what you want in ChatGPT, Claude or another assistant connected to Opus Growth, in your own words; it picks this tool when it fits.
Parameters
| Name | Type | Required | Default | |
|---|---|---|---|---|
| campaign_id | string | Required | · | Exact campaign identifier to target. Use the ID returned by an Opus Growth list or create operation, not a display name. |
| name | string | Optional | · | Human-readable name for the resource being created or updated. |
| daily_budget | number | Optional | 0 | Daily spending budget in the account currency, in the provider's expected numeric unit. |
| lifetime_budget | number | Optional | 0 | Lifetime spending budget in the account currency, in the provider's expected numeric unit. |
| confirm | boolean | Optional | false | Safety confirmation for a state-changing operation. Leave false to preview or validate; set true only after the user explicitly approves the shown change. |
| account | string | Optional | · | Connected account selector for this operation. Use the exact account ID or account value accepted by this tool; when in doubt, obtain it from the relevant account-listing tool. |
| include_locations | array | Optional | · | Whether to include locations in this operation's result or change. |
| exclude_locations | array | Optional | · | Locations to exclude from this operation's result or change. |
| locations_mode | string | Optional | replace | replace · add · remove · Exact locations mode value for update chatgpt ads campaign. Supply text in the provider's required format; when it selects an existing resource, use the exact identifier returned by the relevant list or search operation; matching the schema pattern. |
| platforms | array | Optional | · | Platforms value for update chatgpt ads campaign. Follow the documented provider format and use values returned by Opus Growth discovery tools where possible. |
| start | string | Optional | · | Exact start value for update chatgpt ads campaign. Supply text in the provider's required format; when it selects an existing resource, use the exact identifier returned by the relevant list or search operation. |
| end | string | Optional | · | Exact end value for update chatgpt ads campaign. Supply text in the provider's required format; when it selects an existing resource, use the exact identifier returned by the relevant list or search operation. |
| conversion_event_setting_ids | array | Optional | · | One or more exact conversion event setting identifiers to target. Use identifiers returned by an Opus Growth list or create operation, not display names. |
| conversion_mode | string | Optional | add | replace · add · remove · Exact conversion mode value for update chatgpt ads campaign. Supply text in the provider's required format; when it selects an existing resource, use the exact identifier returned by the relevant list or search operation; matching the schema pattern. |
| status | string | Optional | · | active · paused · Desired provider status for this resource; choose an allowed value from this schema. |
| description | string | Optional | · | Human-readable description text for the resource being created or updated. |
Related tools
chatgpt_ads_ad_previewChatGPT Ads Conversion Setupchatgpt_ads_conversion_setupChatGPT Ads Object Detailschatgpt_ads_detailsChatGPT Ads Location Lookupchatgpt_ads_geo_lookupChatGPT Ads Insightschatgpt_ads_insightsChatGPT Ads Spend Limitschatgpt_ads_spend_limitsChatGPT Ads Statuschatgpt_ads_statusConnect ChatGPT Adsconnect_chatgpt_adsCreate ChatGPT Ads Adcreate_chatgpt_ads_ad