ads_create_ad_association
Create ad<->ad-group associations via the unified Amazon Ads API v1 — an AMAZON_DSP resource (creative rotation across ad groups); sponsored-ads products embed the product link in
writeAmazon Adsads.v1
the ad itself (see ads_query_ad). Amazon Ads API · CreateAdAssociation · POST /adsApi/v1/create/adAssociations Docs: https://advertising.amazon.com/API/docs/en-us/api-spec-v1-adassociations#tag/AdAssociations/operation/CreateAdAssociation 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_create_ad_association",
"arguments": {
"store": "myStore-US",
"countryCode": "<countryCode>",
"body": "<body>"
}
}From code (Tool API)
curl -X POST https://api.sellersheetai.com/api/v1/tools/ads_create_ad_association \
-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*, adGroupId*, state*, weight?, startDateTime?, endDateTime?} (or {adAssociations: [...]}), at most 20 — weight is the percentage of the ad group's traffic this creative receives. |
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[].adAssociation— each created ad association with its adAssociationId; index is its position in your list — partialSuccess[] items were created with errors, error[] items were not.
Gotchas
- DSP-only: on a sponsored-ads profile the call fails with Amazon's 401 "not authorized to access account", returned as a 400 — only call this entity for DSP work.
- Both the ad (ads_create_ad) and the ad group must already exist.