ads_update_ad
Update ads (creatives) across ALL ad products via the unified Amazon Ads API v1.
destructiveAmazon Adsads.v1
In the v1 model an "ad" is the creative unit inside an ad group; a sponsored ad's advertised product is inside its creative (productCreative for SP, componentCreative for SB and SD, videoCreative for ST) — ad associations (ads_query_ad_association) are AMAZON_DSP's ad-to-ad-group links, not product links. Amazon Ads API · UpdateAd · POST /adsApi/v1/update/ads Docs: https://advertising.amazon.com/API/docs/en-us/api-spec-v1-ads#tag/Ads/operation/UpdateAd 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)
{
"name": "ads_update_ad",
"arguments": {
"store": "myStore-US",
"countryCode": "<countryCode>",
"body": "<body>"
}
}From code (Tool API)
curl -X POST https://api.sellersheetai.com/api/v1/tools/ads_update_ad \
-H "Authorization: Bearer $SELLERSHEET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"store":"myStore-US","countryCode":"<countryCode>","body":"<body>"}'Arguments
| Name | Type | Description |
|---|---|---|
storerequired | string | the store ref `<store>-<CC>` (name-country, e.g. 'myStore-US') — one of get_user_context's store_refs, verbatim. |
countryCoderequired | string | the Ads profile's 2-letter country code (e.g. 'US'). |
bodyrequired | object[] | object | list of {adId*, name?, state?, creative?} (or {ads: [...]}). |
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[].ad— each changed ad; index is its position in your list — error[] items were not changed.