Nexscope

Amazon Ads Manager

Manage Amazon Sponsored Products, Sponsored Brands, and Sponsored Display campaigns, targeting, creatives, ads, and budget rules. Call it via REST API or MCP.

Cost10 credits / call
Try online
POST · https://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-manager/runMCP · nexscope_amazon_ads_manager

Choose an integration method

API

What this API does

Manage Amazon Sponsored Products, Sponsored Brands, and Sponsored Display campaigns, targeting, creatives, ads, and budget rules. The request accepts operationId, connectionId, payload, queryString, adType. Its documented result includes confirmationToken, dataSnapshotMonth, expiresAt, page, pageItemCount, pageSize, sourceTool, sourceType.

Amazon Ads Manager API use cases

Review advertising evidence

To review advertising evidence, a marketplace analyst submits operationId and connectionId to Amazon Ads Manager. The returned confirmationToken, dataSnapshotMonth, expiresAt help inspect the advertising information returned for the request.

Prepare an advertising research brief

A marketplace analyst uses Amazon Ads Manager with operationId and connectionId to prepare an advertising research brief. The returned confirmationToken, dataSnapshotMonth, expiresAt help assemble evidence before changing an advertising workflow.

Compare campaign inputs and results

For this workflow, a marketplace analyst calls Amazon Ads Manager with operationId and connectionId to compare campaign inputs and results. The result helps compare campaign evidence without assuming performance improvements.

Amazon Ads Manager API FAQ

What does the Amazon Ads Manager API return?

Manage Amazon Sponsored Products, Sponsored Brands, and Sponsored Display campaigns, targeting, creatives, ads, and budget rules. The documented output includes confirmationToken, dataSnapshotMonth, expiresAt, page, pageItemCount, pageSize, sourceTool, sourceType. It corresponds to the supplied operationId, connectionId, payload, queryString, adType. Optional fields can be absent; a missing value should not be interpreted as a measured zero. Example values illustrate the response shape, rather than live account results.

How many credits does the Amazon Ads Manager API cost?

The current documented cost is 10 credits / call. This is the same cost shown at the top of this page. If a range or estimate is displayed, the final charge depends on the request. Review your available credits and the pricing page before calling the API, and check API usage records for the actual charge.

How do I call the Amazon Ads Manager API from my app or an MCP client?

Send a POST request to https://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-manager/run with your API key as a Bearer token and the JSON inputs shown in API integration. In a compatible MCP client such as Claude or Cursor, connect Nexscope and call nexscope_amazon_ads_manager. Use the MCP arguments shown in the MCP guide, or switch Online test to MCP to review its request before adding it to your app.

View plans and creditsConnect this API with MCP

Try this API
Endpoint
https://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-manager/run
MCP method
nexscope_amazon_ads_manager

Step 1 of 3 · Authenticate

Authentication

All run endpoints require a user API key. Send it as a bearer token in the Authorization header.

Authorization: Bearer nk-xxxxxxxxxxxxxxxxx
Missing or invalid API keys return an authentication error. Manage keys from .

Step 2 of 3 · Send a request

POSThttps://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-manager/run

Run an API

The API key owner must own connectionId. Raw provider method, path, content type, and workspace are not accepted.

Example request

Replace YOUR_API_KEY, then run this command in your terminal.

curl -X POST 'https://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-manager/run' \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "connectionId": 123,
  "operationId": "sp.list_campaigns",
  "payload": {
    "campaignIdFilter": {
      "include": [
        "123456789"
      ]
    },
    "maxResults": 10
  }
}'

Step 3 of 3 · Inspect the result

Check the response

Read code for the request status and data for the result. Open the parameter and response reference for the full field definitions.

HTTP status codes

CodeDescription
200HTTP request completed. Check JSON code; only 0 indicates business success or acceptance.
400Request JSON or required API parameters are invalid.
401API key is missing, invalid, or cannot be matched to a user.
5xxAPI execution or upstream service failed.
POSThttps://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-manager/run

Run this API

Send a JSON request to execute this API and receive the documented response payload.

Endpoint

MethodPOST
Pathhttps://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-manager/run
AuthBearer API key
Content-Typeapplication/json

Amazon Ads operation guide

Select an operation ID below and send it with an owned connectionId. Read operations return the governed result. Create and update operations require payload and a preview followed by a separate confirmation with the returned single-use confirmationToken. Sponsored Products POST /list filters belong in payload, not queryString.

The table lists the 61 operation IDs accepted by the Nexscope catalog. Use the Nexscope run endpoint shown above; provider paths and credentials are handled by the backend.

Sponsored Products (28 operations)
operationIdActionAccess
sp.create_ad_groupsCreate Ad GroupsPreview and confirm
sp.create_budget_rulesCreate Budget RulesPreview and confirm
sp.create_budget_rules_associationCreate Budget Rules AssociationPreview and confirm
sp.create_campaign_negative_keywordsCreate Campaign Negative KeywordsPreview and confirm
sp.create_campaign_negative_targetsCreate Campaign Negative TargetsPreview and confirm
sp.create_campaignsCreate CampaignsPreview and confirm
sp.create_keywordsCreate KeywordsPreview and confirm
sp.create_negative_keywordsCreate Negative KeywordsPreview and confirm
sp.create_negative_targetsCreate Negative TargetsPreview and confirm
sp.create_product_adsCreate Product AdsPreview and confirm
sp.create_targetsCreate TargetsPreview and confirm
sp.list_ad_groupsList Ad GroupsRead
sp.list_budget_rulesList Budget RulesRead
sp.list_campaignsList CampaignsRead
sp.list_keywordsList KeywordsRead
sp.list_negative_keywordsList Negative KeywordsRead
sp.list_product_adsList Product AdsRead
sp.list_targetsList TargetsRead
sp.update_ad_groupsUpdate Ad GroupsPreview and confirm
sp.update_budget_rulesUpdate Budget RulesPreview and confirm
sp.update_campaign_negative_keywordsUpdate Campaign Negative KeywordsPreview and confirm
sp.update_campaign_negative_targetsUpdate Campaign Negative TargetsPreview and confirm
sp.update_campaignsUpdate CampaignsPreview and confirm
sp.update_keywordsUpdate KeywordsPreview and confirm
sp.update_negative_keywordsUpdate Negative KeywordsPreview and confirm
sp.update_negative_targetsUpdate Negative TargetsPreview and confirm
sp.update_product_adsUpdate Product AdsPreview and confirm
sp.update_targetsUpdate TargetsPreview and confirm
Sponsored Brands (12 operations)
operationIdActionAccess
sb.create_ad_groupsCreate Ad GroupsPreview and confirm
sb.create_adsCreate AdsPreview and confirm
sb.create_budget_rulesCreate Budget RulesPreview and confirm
sb.create_campaignsCreate CampaignsPreview and confirm
sb.list_ad_groupsList Ad GroupsRead
sb.list_adsList AdsRead
sb.list_budget_rulesList Budget RulesRead
sb.list_campaignsList CampaignsRead
sb.update_ad_groupsUpdate Ad GroupsPreview and confirm
sb.update_adsUpdate AdsPreview and confirm
sb.update_budget_rulesUpdate Budget RulesPreview and confirm
sb.update_campaignsUpdate CampaignsPreview and confirm
Sponsored Display (21 operations)
operationIdActionAccess
sd.create_ad_groupsCreate Ad GroupsPreview and confirm
sd.create_budget_rulesCreate Budget RulesPreview and confirm
sd.create_campaignsCreate CampaignsPreview and confirm
sd.create_creativesCreate CreativesPreview and confirm
sd.create_negative_targetsCreate Negative TargetsPreview and confirm
sd.create_product_adsCreate Product AdsPreview and confirm
sd.create_targetsCreate TargetsPreview and confirm
sd.list_ad_groupsList Ad GroupsRead
sd.list_budget_rulesList Budget RulesRead
sd.list_campaignsList CampaignsRead
sd.list_creativesList CreativesRead
sd.list_negative_targetsList Negative TargetsRead
sd.list_product_adsList Product AdsRead
sd.list_targetsList TargetsRead
sd.update_ad_groupsUpdate Ad GroupsPreview and confirm
sd.update_budget_rulesUpdate Budget RulesPreview and confirm
sd.update_campaignsUpdate CampaignsPreview and confirm
sd.update_creativesUpdate CreativesPreview and confirm
sd.update_negative_targetsUpdate Negative TargetsPreview and confirm
sd.update_product_adsUpdate Product AdsPreview and confirm
sd.update_targetsUpdate TargetsPreview and confirm

Request parameters

NameTypeRequiredDescription
operationIdstringrequired
Exact catalog operation ID, for example sp.list_campaigns.
Example: sp.list_campaigns
connectionIdintegerrequired
Owned Amazon Ads connection ID.
Example: 123
payloadobjectoptional
Documented fields for the selected operation; required by create/update operations. SP POST /list filters such as campaignIdFilter and stateFilter belong in payload as objects with non-empty include arrays of strings.
Example: { "campaignIdFilter": { "include": [ "123456789" ] }, "maxResults": 10 }
queryStringstringoptional
Optional operation-specific query string without a leading ?; do not use it for SP POST /list filters.
Example:
adTypestringoptional
Required only by sb.create_ads.
Example: video
actionstringoptional
preview (default) or confirm for mutations; ignored for reads.
Example: preview
confirmationTokenstringoptional
Single-use token required when action is confirm.
Example: opaque-token

Code example

{
  "connectionId": 123,
  "operationId": "sp.list_campaigns",
  "payload": {
    "campaignIdFilter": {
      "include": [
        "123456789"
      ]
    },
    "maxResults": 10
  }
}

Response example

Platform response envelope. code 0 indicates success or acceptance; data contains the business result.

{
  "code": 0,
  "cost": "-1",
  "data": {
    "confirmationToken": "opaque-token",
    "data": {},
    "expiresAt": "1760000000000"
  },
  "msg": null,
  "time": "2026-01-01 00:00:00",
  "traceId": null,
  "ts": "0"
}

Response fields

NameTypeRequiredDescription
codeintegerrequired
0 means accepted or successful; nonzero is a platform error.
coststringrequired
Elapsed milliseconds, never credits; -1 outside web requests.
dataanyrequired
Data value used by this API operation.
msgstring | nullrequired
Msg value used by this API operation.
timestringrequired
Server local time: yyyy-MM-dd HH:mm:ss.
traceIdstring | nullrequired
Trace id value used by this API operation.
tsstringrequired
Epoch milliseconds.

Any of option 1

NameTypeRequiredDescription
dataobjectrequired
Data value used by this API operation.
data.confirmationTokenanyoptional
Confirmation token value used by this API operation.
data.costTimeanyoptional
Cost time value used by this API operation.
data.costTokenanyoptional
Cost token value used by this API operation.
data.dataanyoptional
Data value used by this API operation.
data.dataSnapshotMonthanyoptional
Data snapshot month value used by this API operation.
data.expiresAtanyoptional
Expires at value used by this API operation.
data.pageanyoptional
Page value used by this API operation.
data.pageItemCountanyoptional
Page item count value used by this API operation.
data.pageSizeanyoptional
Page size value used by this API operation.
data.sourceToolanyoptional
Source tool value used by this API operation.
data.sourceTypeanyoptional
Source type value used by this API operation.
data.titleanyoptional
Title value used by this API operation.
data.totalPageanyoptional
Total page value used by this API operation.
data.typeanyoptional
Type value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.confirmationTokenstringoptional
Single-use mutation confirmation token returned by preview.
Example: opaque-token

Any of option 2

NameTypeRequiredDescription
data.confirmationTokennulloptional
Confirmation token value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.costTimeintegeroptional
Execution time reported by the upstream provider.
Example: null

Any of option 2

NameTypeRequiredDescription
data.costTimenulloptional
Cost time value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.costTokenintegeroptional
Token cost reported by the upstream provider.
Example: null

Any of option 2

NameTypeRequiredDescription
data.costTokennulloptional
Cost token value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.dataobjectoptional
Safe Amazon Ads provider result.
Example: {}

Any of option 2

NameTypeRequiredDescription
data.datanulloptional
Data value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.dataSnapshotMonthstringoptional
Data snapshot month returned by the upstream provider.
Example: null

Any of option 2

NameTypeRequiredDescription
data.dataSnapshotMonthnulloptional
Data snapshot month value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.expiresAtintegeroptional
Confirmation expiry timestamp when returned.
Example: 1760000000000

Any of option 2

NameTypeRequiredDescription
data.expiresAtnulloptional
Expires at value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.pageintegeroptional
Current page returned by the upstream provider.
Example: null

Any of option 2

NameTypeRequiredDescription
data.pagenulloptional
Page value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.pageItemCountintegeroptional
Item count on the current page returned by the upstream provider.
Example: null

Any of option 2

NameTypeRequiredDescription
data.pageItemCountnulloptional
Page item count value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.pageSizeintegeroptional
Page size returned by the upstream provider.
Example: null

Any of option 2

NameTypeRequiredDescription
data.pageSizenulloptional
Page size value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.sourceToolstringoptional
Provider-specific source tool name.
Example: null

Any of option 2

NameTypeRequiredDescription
data.sourceToolnulloptional
Source tool value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.sourceTypestringoptional
Provider-specific source platform type.
Example: null

Any of option 2

NameTypeRequiredDescription
data.sourceTypenulloptional
Source type value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.titlestringoptional
Provider-specific response title.
Example: null

Any of option 2

NameTypeRequiredDescription
data.titlenulloptional
Title value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.totalPageintegeroptional
Total page count returned by the upstream provider.
Example: null

Any of option 2

NameTypeRequiredDescription
data.totalPagenulloptional
Total page value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.typestringoptional
Provider-specific render or payload type.
Example: null

Any of option 2

NameTypeRequiredDescription
data.typenulloptional
Type value used by this API operation.

Any of option 2

NameTypeRequiredDescription
datanullrequired
Data value used by this API operation.

Responses

CodeDescription
200HTTP request completed. Check JSON code; only 0 indicates business success or acceptance.
400Request JSON or required API parameters are invalid.
401API key is missing, invalid, or cannot be matched to a user.
5xxAPI execution or upstream service failed.

Data source, freshness, and limitations

Source, freshness, coverage, rate limits, and estimation notes are not specified in this API definition unless they appear in the request or response field documentation above. Do not assume official marketplace data or real-time freshness when it is not explicitly documented.

Step 1 of 2 · Connect your MCP client

MCP

V2 recommended

Connect remote agents through the standard MCP 2025-11-25 Streamable HTTP endpoint. Use OAuth 2.1 Authorization Code with PKCE, or an API key for compatibility.

POST https://api.nexscope.ai/mcp
MCP-Protocol-Version: 2025-11-25
Content-Type: application/json
Authentication

OAuth clients request the mcp:tools scope. The endpoint's 401 response advertises protected-resource metadata for authorization discovery.

Step 2 of 2 · Call the tool

Call a tool

{
  "jsonrpc": "2.0",
  "id": "tool-call-1",
  "method": "tools/call",
  "params": {
    "name": "nexscope_amazon_ads_manager",
    "arguments": {
      "connectionId": 123,
      "operationId": "sp.list_campaigns",
      "payload": {
        "campaignIdFilter": {
          "include": [
            "123456789"
          ]
        },
        "maxResults": 10
      }
    }
  }
}

Legacy MCP v1

Existing API-key clients can continue using the compatibility endpoint. New integrations should use MCP v2.

GET / POST /mcp/legacy

Online test

Execute the current API with your API key and JSON payload. Online tests use this site's configured API environment; the Endpoint and copyable examples use the public integration address.

10 credits / callAPI usage records

Try it

Send a real request with the same contract shown in the reference.

Endpoint
/api/skill-api/v1/skills/amazon-ads-manager/run
MCP method
nexscope_amazon_ads_manager
cURL
curl -X POST \
  https://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-manager/run \
  -H "Authorization: Bearer nk-..." \
  -H "Content-Type: application/json" \
  -d '{ "connectionId": 123, "operationId": "sp.list_campaigns", "payload": { "campaignIdFilter": { "include": [ "123456789" ] }, "maxResults": 10 } }'
Response
No response yet. Run the request to see the response here.