Amazon Ads API Access
Connect an Amazon Ads account and check its connection status.
Cost10 credits / call
POST ·
https://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-api-access/runMCP · nexscope_amazon_ads_api_accessChoose an integration method
API
What this API does
Start Amazon Ads OAuth authorization or return safe connection and profile metadata; tokens are never accepted. View request parameters, response fields, and MCP usage.
Endpoint
https://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-api-access/runMCP method
nexscope_amazon_ads_api_accessStep 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-xxxxxxxxxxxxxxxxxMissing or invalid API keys return an authentication error. Manage keys from .
Step 2 of 3 · Send a request
POST
https://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-api-access/runRun an API
Operation-specific inputs: authorize requires region and marketplaceId; profiles requires connectionId; connections requires no additional input. Connections are scoped to the API-key owner, and OAuth tokens are backend-owned.
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-api-access/run' \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"region": "NA",
"accountName": "US Ads account",
"operation": "authorize",
"marketplaceId": "ATVPDKIKX0DER"
}'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
| Code | Description |
|---|---|
| 200 | HTTP request completed. Check JSON code; only 0 indicates business success or acceptance. |
| 400 | Request JSON or required API parameters are invalid. |
| 401 | API key is missing, invalid, or cannot be matched to a user. |
| 5xx | API execution or upstream service failed. |
POST
https://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-api-access/runRun this API
Send a JSON request to execute this API and receive the documented response payload.
Endpoint
| Method | POST |
| Path | https://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-api-access/run |
| Auth | Bearer API key |
| Content-Type | application/json |
Amazon Ads operation guide
Use operation: authorize with region and marketplaceId to start OAuth, operation: connections to list connections owned by your API key, and operation: profiles with an owned connectionId to list profiles. Open the returned authorization URL in a browser.
Provider access and refresh tokens stay on the backend. This public API does not accept or return raw provider tokens.
Request parameters
| Name | Type | Required | Description |
|---|---|---|---|
operation | string | required | Operation: authorize, connections, or profiles. Example: authorize |
region | string | required | Required when operation=authorize. Amazon Ads region: NA, EU, or FE. Example: NA |
marketplaceId | string | required | Required when operation=authorize. Amazon marketplace identifier. Example: ATVPDKIKX0DER |
accountName | string | optional | Optional display name for the authorization request. Example: US Ads account |
connectionId | integer | optional | Required when operation=profiles. Owned Amazon Ads connection ID. Example: 123 |
Code example
{
"region": "NA",
"accountName": "US Ads account",
"operation": "authorize",
"marketplaceId": "ATVPDKIKX0DER"
}Response example
Platform response envelope. code 0 indicates success or acceptance; data contains the business result.
{
"data": {
"authorizationUrl": "https://example.com/authorize",
"state": "opaque-state",
"expiresAt": "1760000000000",
"connections": [],
"profiles": [
{
"profileId": "123456789",
"countryCode": "US",
"currencyCode": "USD"
}
]
},
"code": 0,
"msg": null,
"ts": "0",
"time": "2026-01-01 00:00:00",
"cost": "-1",
"traceId": null
}Response fields
| Name | Type | Required | Description |
|---|---|---|---|
data | any | required | Data value used by this API operation. |
code | integer | required | 0 means accepted or successful; nonzero is a platform error. |
msg | string | null | required | Msg value used by this API operation. |
ts | string | required | Epoch milliseconds. |
time | string | required | Server local time: yyyy-MM-dd HH:mm:ss. |
cost | string | required | Elapsed milliseconds, never credits; -1 outside web requests. |
traceId | string | null | required | Trace id value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data | object | required | Data value used by this API operation. |
data.authorizationUrl | string | optional | OAuth URL to open in a browser. Example: https://example.com/authorize |
data.state | string | optional | Opaque OAuth state used only by the backend callback. Example: opaque-state |
data.expiresAt | integer | optional | Authorization state expiry timestamp in milliseconds. Example: 1760000000000 |
data.connections | array | optional | Safe owned Amazon Ads connection metadata. Example: [] |
data.profiles | array | optional | Safe Amazon Ads profiles for the selected connection. Example: [] |
data.profiles[] | object | required | Item in data profiles. |
data.profiles[].profileId | string | optional | Amazon Ads profile ID. Example: 123456789 |
data.profiles[].countryCode | string | optional | Profile country code. Example: US |
data.profiles[].currencyCode | string | optional | Profile currency code. Example: USD |
data.type | string | optional | Provider-specific render or payload type. Example: null |
data.title | string | optional | Provider-specific response title. Example: null |
data.sourceType | string | optional | Provider-specific source platform type. Example: null |
data.sourceTool | string | optional | Provider-specific source tool name. Example: null |
data.costToken | integer | optional | Token cost reported by the upstream provider. Example: null |
data.costTime | integer | optional | Execution time reported by the upstream provider. Example: null |
data.page | integer | optional | Current page returned by the upstream provider. Example: null |
data.pageSize | integer | optional | Page size returned by the upstream provider. Example: null |
data.pageItemCount | integer | optional | Item count on the current page returned by the upstream provider. Example: null |
data.totalPage | integer | optional | Total page count returned by the upstream provider. Example: null |
data.dataSnapshotMonth | string | optional | Data snapshot month returned by the upstream provider. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data | null | required | Data value used by this API operation. |
Responses
| Code | Description |
|---|---|
| 200 | HTTP request completed. Check JSON code; only 0 indicates business success or acceptance. |
| 400 | Request JSON or required API parameters are invalid. |
| 401 | API key is missing, invalid, or cannot be matched to a user. |
| 5xx | API 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 recommendedConnect 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/api/skill-api/v2/mcp
MCP-Protocol-Version: 2025-11-25
Content-Type: application/jsonAuthentication
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_api_access",
"arguments": {
"region": "NA",
"accountName": "US Ads account",
"operation": "authorize",
"marketplaceId": "ATVPDKIKX0DER"
}
}
}Legacy MCP v1
Existing API-key clients can continue using the compatibility endpoint. New integrations should use MCP v2.
GET / POST /api/skill-api/v1/mcpOnline test
Execute the current API with your API key and JSON payload.
10 credits / callAPI usage records
Try it
Send a real request with the same contract shown in the reference.
Endpoint
https://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-api-access/runMCP method
nexscope_amazon_ads_api_accesscURL
curl -X POST \
https://api.nexscope.ai/api/skill-api/v1/skills/amazon-ads-api-access/run \
-H "Authorization: Bearer nk-..." \
-H "Content-Type: application/json" \
-d '{ "region": "NA", "accountName": "US Ads account", "operation": "authorize", "marketplaceId": "ATVPDKIKX0DER" }'Response
No response yet. Run the request to see the response here.
Related APIs
Amazon Ads Sponsored Products Audience Report
Retrieve Sponsored Products audience reports.
Amazon Ads Sponsored Products Search Impression Share Report
Retrieve Sponsored Products search impression share reports.
Amazon Ads Sponsored Products Insights Report Status
Check the processing status of an advertising insights report.
Amazon Ads Sponsored Products Insights Report Download
Download a completed advertising insights report.