22 Agent Skills for Amazon sellers and advertisers: Sponsored Products and Brands audits, search-term mining, budget pacing, DSP and Amazon Marketing Cloud, reporting, listing optimization and compliance, product images, repricing, FBA inbound, stockout, refunds, buyer messaging, and profitability. Built for Kuudo's hosted Amazon Ads and Selling Partner MCP servers; price, budget, listing, and shipment writes are previewed and wait for explicit approval.
68
93%
Does it follow best practices?
Impact
66%
1.65xAverage score across 22 eval scenarios
Medium
Suggest reviewing before use
Tool: campconv_DspPostProductConversionTrackingV1
Adds products (ASINs) to a DSP campaign to enable product-related conversion metrics. Newly added products are appended to any existing list — the call is additive, not destructive. The API accepts 1–2,000 products per call; a campaign can track up to 500,000 products total.
This step is what unlocks P+ eligible tactics in Step 4. The campaign's eligibleAutomatedTargetingTactics[] is computed asynchronously based on the products attached here — without conversion tracking products, most P+ tactics will come back as ineligible with reasonCode: EMPTY_INPUT.
This POST is a write, covered by the user's Gate 1 yes: post exactly the ASINs, domain, and productAssociation shown in that plan. Adding ASINs that weren't in it (variations, halo ASINs) needs a fresh yes.
| Argument | Where | Source | Value |
|---|---|---|---|
Amazon-Ads-AccountId | header (top-level tool arg) | Step 1 | dspAdvertiserId |
campaignId | path (top-level tool arg) | Step 2 | newly-created campaign ID |
productTrackingList[] | body (top-level tool arg) | INPUT | One entry per ASIN — see below |
The hosted MCP wraps these as pathParameters.campaignId + body.accessRequestedAccount.advertiserAccountId + body.productTrackingList. This repo flattens all three to top-level tool arguments and uses the Amazon-Ads-AccountId header instead of a body field for account scoping.
| Field | Required | Value |
|---|---|---|
productId | Yes | ASIN, exactly 10 characters |
domain | Yes | AMAZON_{countryCode} derived from the user's marketplace |
productAssociation | Yes | FEATURED for all user-provided ASINs (see below for alternatives) |
domain values (full enum)AMAZON_AE, AMAZON_AU, AMAZON_BR, AMAZON_CA, AMAZON_DE, AMAZON_ES, AMAZON_FR, AMAZON_IN, AMAZON_IT, AMAZON_JP, AMAZON_MX, AMAZON_NL, AMAZON_SA, AMAZON_SE, AMAZON_TR, AMAZON_UK, AMAZON_US, FRESH_STORES_US, WHOLE_FOODS_MARKET_US
Derive from the user's marketplace input: US → AMAZON_US, UK → AMAZON_UK, etc. The FRESH_STORES_US and WHOLE_FOODS_MARKET_US values are for cross-banner tracking and aren't used in the default P+/B+ flow.
productAssociation values| Value | When to use |
|---|---|
FEATURED | Product is promoted in creatives within this campaign. Use this for all user-provided ASINs in the default flow. |
FEATURED_WITH_VARIATION | Featured product including its variations (parent + child ASINs). Use when the user explicitly says "include variations." |
NOT_FEATURED | Tracked for conversion attribution but not promoted in creatives. Use for "halo" ASINs the user wants to measure but isn't advertising. |
The Amazon docs note that tracking non-featured and variation ASINs in addition to the featured ones prevents data loss that isn't recoverable once a campaign starts. If the user wants comprehensive measurement, suggest they add variation/non-featured ASINs as separate productTrackingList entries with the appropriate productAssociation.
{
"Amazon-Ads-AccountId": "<dspAdvertiserId>",
"campaignId": "<campaignId>",
"productTrackingList": [
{
"productId": "<ASIN>",
"domain": "<AMAZON_{countryCode}>",
"productAssociation": "FEATURED"
}
]
}For multiple ASINs, add multiple entries to productTrackingList[] — batch in a single call (up to 2,000 per call) rather than calling once per ASIN. The endpoint is designed for batch use; per-ASIN calls would waste round trips.
The response itself doesn't return per-ASIN status — success means the batch was accepted. For confirmation that each ASIN actually landed, use the verification read below.
After the POST returns, wait 100ms then call:
campconv_DspGetCampaignConversionTrackingProductsV1
Amazon-Ads-AccountId: <dspAdvertiserId>
campaignId: <campaignId>The response shape:
{
"productTrackingList": [
{"productId": "B0EXAMPLE1", "domain": "AMAZON_US", "productAssociation": "FEATURED"},
...
],
"nextToken": "..." // present only if results exceed page size
}Confirm every ASIN you POSTed appears in the returned productTrackingList[]. If some are missing, retry up to 3 × 1s — the API is eventually consistent and propagation usually completes within ~1 second. If still missing after retries, report which ASINs didn't land.
If the list is paginated (nextToken present), continue paging until you've verified every POSTed ASIN — but for the typical case (a handful of ASINs per campaign), a single page is enough.
domain for the marketplace, or a non-ASIN productId); show the corrected list and get a fresh yes before posting it.429 / THROTTLED): back off with exponential delay (start at 2s, double up to 30s) and retry the same batch. The endpoint has per-account rate limits.Each POST appends to the campaign's existing tracking list. Re-running this step with the same ASINs creates duplicate entries — not necessarily an error, but it can waste a slot in the 500k cap. If you suspect tracking is partially configured, call the GET first to see what's already there before deciding whether to POST again.
For deleting products, use campconv_DspDeleteProductConversionTrackingV1 (POST to .../products/delete) with the same productTrackingList shape — but this skill's workflow doesn't use it. If the user asks to remove products, show the exact list and get its own yes first.
.tessl-plugin
skills
amazon-ads-accounts
amazon-ads-budget-pacing
amazon-ads-create-dsp-campaign
amazon-ads-creative-assets
amazon-ads-marketing-cloud
amazon-ads-reporting
assets
templates
sb
references
tests
amazon-ads-sb-performance-review
amazon-ads-sp-campaign-auditor
amazon-ads-sp-search-term-explorer
amazon-product-image
amazon-profitability-calculator
amazon-sp-fba-inbound
amazon-sp-listing-compliance
amazon-sp-listing-optimizer
amazon-sp-messaging-api
amazon-sp-refund-return-monitor
amazon-sp-repricing
amazon-sp-sales-traffic-analyzer
amazon-sp-sqp-asin-ngram
amazon-sp-stockout-prevention
connect-to-kuudo
using-kuudo