Amazon Ads
SkillCommerce & financeAuthorize Amazon Ads accounts, manage SP, SB, and SD entities, and retrieve advertising reports.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Amazon Ads skill
What this skill tells your AI
The instructions your AI receives, as published by nexscope-ai/nexscope-ecommerce-skills in ecommerce-amazon-advertising-api/SKILL.md and read by ahel’s review.
Authorize Amazon Ads accounts, manage SP, SB, and SD entities, and retrieve advertising reports.
The package preserves 67 Amazon-platform operations (23 read or connection operations and 44 mutations). It uses only NEXSCOPE_PROXY_BASE and NEXSCOPE_API_KEY. Provider credentials, refresh, request signing, authorization state, upload locations, and document locations remain on the backend.
Core Concepts
- Use one backend-owned Ads connection for authorization, SP/SB/SD entity management, and v3 reporting.
- The aggregate catalog routes connection and report operations to dedicated scripts and ordinary entity operations to the generic client.
- Amazon Ads uses the separate Advertising API and authorization service, not the Seller SP-API; SP here means Sponsored Products.
Operation Catalog
The concise index below is generated from the same contract consumed by the runtime. See references/api.md for full request, validation, pagination, result, status, and example details, and references/api.json for the machine-readable contract.
ads_auth.authorize_url - Authorize Url
- Request:
POST /api/skill/amazon/connections/amazon-ads/authorize; access:write; execution:specialized. - Required:
region,marketplaceId.- Optional:workspaceId,accountName,returnPath.- Query: None; body:workspaceId,region,marketplaceId,accountName,returnPath. - Constraints:
none.
ads_auth.authorized_stores - Authorized Stores
- Request:
GET /api/skill/amazon/connections/amazon-ads; access:read; execution:specialized. - Required: None.- Optional:
workspaceId.- Query:workspaceId; body: None. - Constraints:
none.
ads_auth.profiles - Profiles
- Request:
GET /api/skill/amazon/connections/amazon-ads/profiles; access:read; execution:specialized. - Required:
connectionId.- Optional:workspaceId.- Query:workspaceId,connectionId; body: None. - Constraints:
none.
ads_auth.refresh_token - Refresh Token
- Request:
NONE backend-owned token refresh; access:write; execution:removed. - Required: None.
- Optional: None.
- Query: None; body: None.
- Constraints:
none. The backend owns token storage and refresh; use authorization status and connection metadata.
ads_auth.store_tokens - Store Tokens
- Request:
NONE backend-owned OAuth callback token storage; access:write; execution:removed. - Required: None.
- Optional: None.
- Query: None; body: None.
- Constraints:
none. The backend owns token storage and refresh; use authorization status and connection metadata.
ads_manager.sb.create_ad_groups - Create Ad Groups
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sb/v4/adGroups; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sb.create_ads - Create Ads
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sb/v4/ads/{adType}; access:write; execution:generic. - Required:
connectionId,adType,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sb.create_budget_rules - Create Budget Rules
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sb/budgetRules; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sb.create_campaigns - Create Campaigns
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sb/v4/campaigns; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sb.list_ad_groups - List Ad Groups
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):POST /sb/v4/adGroups/list; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,adGroupIdFilter,campaignIdFilter,fetchAll,maxPages,maxResults,nameFilter,nextToken,queryString,requestId,stateFilter.- Query: None; body:adGroupIdFilter,campaignIdFilter,maxResults,nameFilter,nextToken,stateFilter. - Constraints:
none.
ads_manager.sb.list_ads - List Ads
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):POST /sb/v4/ads/list; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,adGroupIdFilter,adIdFilter,campaignIdFilter,fetchAll,maxPages,maxResults,nextToken,queryString,requestId,stateFilter.- Query: None; body:adGroupIdFilter,adIdFilter,campaignIdFilter,maxResults,nextToken,stateFilter. - Constraints:
none.
ads_manager.sb.list_budget_rules - List Budget Rules
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):GET /sb/budgetRules; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,fetchAll,maxPages,nextToken,queryString,requestId.- Query:nextToken; body: None. - Constraints:
none.
ads_manager.sb.list_campaigns - List Campaigns
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):POST /sb/v4/campaigns/list; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,campaignIdFilter,fetchAll,maxPages,maxResults,nameFilter,nextToken,portfolioIdFilter,queryString,requestId,stateFilter.- Query: None; body:campaignIdFilter,maxResults,nameFilter,nextToken,portfolioIdFilter,stateFilter. - Constraints:
none.
ads_manager.sb.update_ad_groups - Update Ad Groups
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):PUT /sb/v4/adGroups; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sb.update_ads - Update Ads
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):PUT /sb/v4/ads; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sb.update_budget_rules - Update Budget Rules
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):PUT /sb/budgetRules; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sb.update_campaigns - Update Campaigns
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):PUT /sb/v4/campaigns; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.create_ad_groups - Create Ad Groups
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sd/adGroups; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.create_budget_rules - Create Budget Rules
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sd/budgetRules; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.create_campaigns - Create Campaigns
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sd/campaigns; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.create_creatives - Create Creatives
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sd/creatives; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.create_negative_targets - Create Negative Targets
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sd/negativeTargets; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.create_product_ads - Create Product Ads
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sd/productAds; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.create_targets - Create Targets
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sd/targets; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.list_ad_groups - List Ad Groups
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):GET /sd/adGroups; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,adGroupIdFilter,campaignIdFilter,fetchAll,maxPages,maxResults,nameFilter,nextToken,queryString,requestId,stateFilter.- Query:adGroupIdFilter,campaignIdFilter,maxResults,nameFilter,nextToken,stateFilter; body: None. - Constraints:
none.
ads_manager.sd.list_budget_rules - List Budget Rules
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):GET /sd/budgetRules; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,fetchAll,maxPages,nextToken,queryString,requestId.- Query:nextToken; body: None. - Constraints:
none.
ads_manager.sd.list_campaigns - List Campaigns
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):GET /sd/campaigns; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,campaignIdFilter,fetchAll,maxPages,maxResults,nameFilter,nextToken,portfolioIdFilter,queryString,requestId,stateFilter.- Query:campaignIdFilter,maxResults,nameFilter,nextToken,portfolioIdFilter,stateFilter; body: None. - Constraints:
none.
ads_manager.sd.list_creatives - List Creatives
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):GET /sd/creatives; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,adGroupIdFilter,creativeIdFilter,fetchAll,maxPages,maxResults,nextToken,queryString,requestId.- Query:adGroupIdFilter,creativeIdFilter,maxResults,nextToken; body: None. - Constraints:
none.
ads_manager.sd.list_negative_targets - List Negative Targets
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):GET /sd/negativeTargets; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,adGroupIdFilter,campaignIdFilter,fetchAll,maxPages,maxResults,nextToken,queryString,requestId,stateFilter.- Query:adGroupIdFilter,campaignIdFilter,maxResults,nextToken,stateFilter; body: None. - Constraints:
none.
ads_manager.sd.list_product_ads - List Product Ads
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):GET /sd/productAds; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,adGroupIdFilter,adIdFilter,asinFilter,campaignIdFilter,fetchAll,maxPages,maxResults,nextToken,queryString,requestId,skuFilter,stateFilter.- Query:adGroupIdFilter,adIdFilter,campaignIdFilter,maxResults,nextToken,stateFilter; body: None. - Constraints:
none.
ads_manager.sd.list_targets - List Targets
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):GET /sd/targets; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,adGroupIdFilter,campaignIdFilter,fetchAll,maxPages,maxResults,nextToken,queryString,requestId,stateFilter,targetIdFilter.- Query:adGroupIdFilter,campaignIdFilter,maxResults,nextToken,stateFilter,targetIdFilter; body: None. - Constraints:
none.
ads_manager.sd.update_ad_groups - Update Ad Groups
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):PUT /sd/adGroups; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.update_budget_rules - Update Budget Rules
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):PUT /sd/budgetRules; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.update_campaigns - Update Campaigns
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):PUT /sd/campaigns; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.update_creatives - Update Creatives
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):PUT /sd/creatives; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.update_negative_targets - Update Negative Targets
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):PUT /sd/negativeTargets; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.update_product_ads - Update Product Ads
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):PUT /sd/productAds; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sd.update_targets - Update Targets
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):PUT /sd/targets; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sp.create_ad_groups - Create Ad Groups
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sp/adGroups; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sp.create_budget_rules - Create Budget Rules
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sp/budgetRules; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sp.create_budget_rules_association - Create Budget Rules Association
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sp/budgetRulesAssociation; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sp.create_campaign_negative_keywords - Create Campaign Negative Keywords
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sp/campaignNegativeKeywords; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sp.create_campaign_negative_targets - Create Campaign Negative Targets
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sp/campaignNegativeTargets; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sp.create_campaigns - Create Campaigns
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sp/campaigns; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sp.create_keywords - Create Keywords
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sp/keywords; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sp.create_negative_keywords - Create Negative Keywords
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sp/negativeKeywords; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sp.create_negative_targets - Create Negative Targets
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sp/negativeTargets; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sp.create_product_ads - Create Product Ads
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sp/productAds; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sp.create_targets - Create Targets
- Gateway request:
POST /api/skill/amazon/ads/write-preview -> POST /api/skill/amazon/ads/write-confirm; provider request (request-bodypath):POST /sp/targets; access:write; execution:generic. - Required:
connectionId,payload.- Optional:workspaceId,queryString,requestId.- Query: None; body:payload. - Constraints:
none.
ads_manager.sp.list_ad_groups - List Ad Groups
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):POST /sp/adGroups/list; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,adGroupIdFilter,campaignIdFilter,campaignTargetingTypeFilter,fetchAll,maxPages,maxResults,nameFilter,nextToken,queryString,requestId,stateFilter.- Query: None; body:adGroupIdFilter,campaignIdFilter,campaignTargetingTypeFilter,maxResults,nameFilter,nextToken,stateFilter. - Constraints:
none.
ads_manager.sp.list_budget_rules - List Budget Rules
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):GET /sp/budgetRules; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,fetchAll,maxPages,nextToken,queryString,requestId.- Query:nextToken; body: None. - Constraints:
none.
ads_manager.sp.list_campaigns - List Campaigns
- Gateway request:
POST /api/skill/amazon/ads/read; provider request (request-bodypath):POST /sp/campaigns/list; access:read; execution:generic. - Required:
connectionId.- Optional:workspaceId,campaignIdFilter,fetchAll,maxPages,maxResults,nameFilter,nextToken,portfolioIdFilter,queryString,requestId,stateFilter.- Query: None; body:campaignIdFilter,maxResults,nameFilter,nextToken,portfolioIdFilter,stateFilter. - Constraints:
none.
ads_manager.sp.list_keywords - List Keywords
Shortened here. Read the whole file on GitHub.
Signals
- GitHub stars
- 67
- Forks
- 9
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
ecommerce-amazon-advertising-api- Source
- github.com/nexscope-ai/nexscope-ecommerce-skills