ads_update_campaign

Update advertising campaigns across ALL ad products via the unified Amazon Ads API v1 common model — one shape for Sponsored Products, Brands, Display, Television and Amazon DSP; t

destructiveAmazon Adsads.v1

he ad product is the `adProduct` field, never a separate tool. Amazon Ads API · UpdateCampaign · POST /adsApi/v1/update/campaigns Docs: https://advertising.amazon.com/API/docs/en-us/api-spec-v1-campaigns#tag/Campaigns/operation/UpdateCampaign Gate: approve — interactive: show the change (Amazon's preview first where one exists), wait for an explicit approve; autopilot: only when the seller's own words asked for this change; otherwise ask.

Call it

In an AI client (MCP)

tools/call
{
  "name": "ads_update_campaign",
  "arguments": {
    "store": "myStore-US",
    "countryCode": "<countryCode>",
    "body": "<body>"
  }
}

From code (Tool API)

curl -X POST https://api.sellersheetai.com/api/v1/tools/ads_update_campaign \
  -H "Authorization: Bearer $SELLERSHEET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"store":"myStore-US","countryCode":"<countryCode>","body":"<body>"}'
Early access — the Tool API is open on request, contact us.

Arguments

NameTypeDescription
storerequiredstringthe store ref `<store>-<CC>` (name-country, e.g. 'myStore-US') — one of get_user_context's store_refs, verbatim.
countryCoderequiredstringthe Ads profile's 2-letter country code (e.g. 'US').
bodyrequiredobject[] | objectlist of {campaignId*, ...fields to change} (or {campaigns: [...]}) — never adProduct: Amazon refuses it on an update (measured 2026-10-26).

Result

Every tool answers {notification, data, human_action}; data carries:

  • 207 {success, partialSuccess, error}. HTTP success does not mean every item succeeded; read error[] by index.
  • data.result.success[].campaign — each changed campaign; index is its position in your list — error[] items were not changed.

Gotchas

  • For a budget-only or a state-only change use ads_update_campaign_budget / ads_update_campaign_state.
  • budgets replaces the campaign's whole list; each entry is shaped as on create: {budgetType, recurrenceTimePeriod, budgetValue: {monetaryBudgetValue: {monetaryBudget: {value}}}}.
  • state is ENABLED or PAUSED on SP, SB, SD and ST (DRAFT and PROPOSED are DSP values); to archive use ads_delete_campaign.

On this page

Actions

View as Markdown

Ask an assistant

Ask ChatGPTAsk Claude