Amazon Search API
REST API and MCP service documentation generated from server-side API definitions. Responses use the shared code, msg, and data envelope.
API selector
REST API and MCP service documentation generated from server-side API definitions. Responses use the shared code, msg, and data envelope.
Retrieve live Amazon storefront search results and keyword rankings. Review request parameters, response fields, and MCP usage.
https://api.nexscope.ai/api/skill-api/v1/skills/amazon-search/runnexscope_amazon_searchAll run endpoints require a user API key. Send it as a bearer token in the Authorization header.
Authorization: Bearer nk-xxxxxxxxxxxxxxxxxhttps://api.nexscope.ai/api/skill-api/v1/skills/amazon-search/runRequest parameters documented by ecommerce.amazon-search.
| Slug | amazon-search |
| Headers | Authorization: Bearer nk-...Content-Type: application/json |
| Request body | API-specific JSON object. |
| Response body | Platform envelope: code, msg, data, ts, time, cost, traceId. Inspect data.status for asynchronous completion. |
| 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. |
Replace YOUR_API_KEY, then run this command in your terminal.
curl -X POST 'https://api.nexscope.ai/api/skill-api/v1/skills/amazon-search/run' \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"keyword": "phone case",
"page": 1
}'https://api.nexscope.ai/api/skill-api/v1/skills/amazon-search/runSend a JSON request to execute this API and receive the documented response payload.
| Method | POST |
| Path | https://api.nexscope.ai/api/skill-api/v1/skills/amazon-search/run |
| Auth | Bearer API key |
| Content-Type | application/json |
| Name | Type | Required | Description |
|---|---|---|---|
keyword | string | optional | Keyword; please translate to the language of the target country whenever possible, e.g., use English keywords for the US, German keywords for Germany, etc. (max length 1024) Example: phone case |
amazonDomain | string | optional | Amazon country site, default amazon.com |
node | string |
{
"keyword": "phone case",
"page": 1
}Platform response envelope. code 0 indicates success or acceptance; data contains the business result.
{
"data": {
"total": 1,
"keyword": "phone case",
"columns": [],
"costToken": 1,
"products": [
{
"asin": "B072MQ5BRX",
"price": 1,
"extractedPrice": 1,
"oldPrice": 1,
"extractedOldPrice": 1,
"extractedPriceUnit": 1,
"rating": 1,
"ratings": 1,
"position": 1,
"sponsored": false,
"imageUrl": "https://example.com/image.jpg",
"asinUrl": "B072MQ5BRX",
"availableDate": "2026-01-01",
"monthlySalesUnits": 1,
"snapEbtEligible": false,
"keyword": "phone case"
}
]
},
"code": 0,
"msg": null,
"ts": "0",
"time": "2026-01-01 00:00:00",
"cost": "-1",
"traceId": null
}| 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 |
| 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. |
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.
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/api/skill-api/v2/mcp
MCP-Protocol-Version: 2025-11-25
Content-Type: application/jsonOAuth clients request the mcp:tools scope. The endpoint's 401 response advertises protected-resource metadata for authorization discovery.
{
"jsonrpc": "2.0",
"id": "tool-call-1",
"method": "tools/call",
"params": {
"name": "nexscope_amazon_search",
"arguments": {
"keyword": "phone case",
"page": 1
}
}
}Existing API-key clients can continue using the compatibility endpoint. New integrations should use MCP v2.
GET / POST /api/skill-api/v1/mcpExecute the current API with your API key and JSON payload.
Send a real request with the same contract shown in the reference.
https://api.nexscope.ai/api/skill-api/v1/skills/amazon-search/runnexscope_amazon_searchcurl -X POST \
https://api.nexscope.ai/api/skill-api/v1/skills/amazon-search/run \
-H "Authorization: Bearer nk-..." \
-H "Content-Type: application/json" \
-d '{ "keyword": "phone case", "page": 1 }'No response yet. Run the request to see the response here.
Analyze an Amazon ASIN’s traffic source mix and compare current, previous, newly entered, and exited keyword periods.
Search and filter Amazon products by price, sales, BSR, margin, ratings, fulfillment, badges, and seller origin across multiple marketplaces.
Browse Amazon category nodes by marketplace and parent identifier, or search category metadata by label for research and listing workflows.
Analyze Amazon competitors across 12 marketplaces using sales, BSR, pricing, ratings, and growth metrics. View request parameters, response fields, and MCP usage.
| optional |
Amazon category node (max length 1000) |
language | string | optional | Language/region code, e.g., en_US, de_DE, ja_JP, fr_FR (max length 1000) |
sort | string | optional | Sort order: relevanceblender (Featured, default), price-asc-rank (Price low to high), price-desc-rank (Price high to low), review-rank (Avg. customer review), date-desc-rank (Newest arrivals), exact-aware-popularity-rank (Best sellers) |
page | integer | optional | Page number (starting from 1, ~20 items per page), default 1 Example: 1 |
deliveryZip | string | optional | Delivery zip code, used to simulate Amazon frontend address. It is recommended to use commonly used zip codes for major cities in the target country, e.g., New York zip code 10001 for the US site (max length 1000) |
device | string | optional | Device type: desktop, mobile, tablet, default desktop (max length 1000) |
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. |
| Name | Type | Required | Description |
|---|---|---|---|
data | object | required | Data value used by this API operation. |
data.total | integer | optional | Total rows Example: 1 |
data.keyword | string | optional | Search keyword Example: phone case |
data.type | string | optional | Render style Example: null |
data.columns | array | optional | Rendered column definitions Example: [] |
data.costToken | integer | optional | Token consumption Example: 1 |
data.products | array | optional | Search result list (see below) Example: [] |
data.products[].asin | string | optional | ASIN Example: B072MQ5BRX |
data.products[].title | string | optional | Title Example: null |
data.products[].brand | string | optional | Brand Example: null |
data.products[].price | number | optional | Price Example: 1 |
data.products[].extractedPrice | number | optional | Parsed price Example: 1 |
data.products[].oldPrice | number | optional | Strikethrough price Example: 1 |
data.products[].extractedOldPrice | number | optional | Parsed strikethrough price Example: 1 |
data.products[].currency | string | optional | Currency Example: null |
data.products[].priceUnit | string | optional | Price unit Example: null |
data.products[].extractedPriceUnit | number | optional | Parsed price unit Example: 1 |
data.products[].rating | number | optional | Rating Example: 1 |
data.products[].ratings | integer | optional | Number of ratings Example: 1 |
data.products[].position | integer | optional | Position Example: 1 |
data.products[].sponsored | boolean | optional | Whether sponsored Example: false |
data.products[].imageUrl | string | optional | Thumbnail Example: https://example.com/image.jpg |
data.products[].asinUrl | string | optional | Link Example: B072MQ5BRX |
data.products[].delivery | string | optional | Delivery information Example: null |
data.products[].fulfillment | string | optional | Fulfillment information (e.g., FBA) Example: null |
data.products[].availableDate | string | optional | Listing time Example: 2026-01-01 |
data.products[].monthlySalesUnits | integer | optional | Monthly sales units Example: 1 |
data.products[].monthlySalesRevenue | string | optional | Monthly sales revenue Example: null |
data.products[].sellerNation | string | optional | Seller nationality Example: null |
data.products[].dimension | string | optional | Dimensions Example: null |
data.products[].weight | string | optional | Weight Example: null |
data.products[].options | string | optional | Options Example: null |
data.products[].offers | string | optional | Offer information Example: null |
data.products[].badges | string | optional | Amazon frontend search badges Example: null |
data.products[].tags | string | optional | Tags Example: null |
data.products[].snapEbtEligible | boolean | optional | SNAP/EBT eligibility Example: false |
data.products[].sourceType | string | optional | Source type: amazon Example: null |
data.products[].sourceTool | string | optional | Source tool Example: null |
data.products[].keyword | string | optional | Keyword Example: phone case |
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.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 |
| Name | Type | Required | Description |
|---|---|---|---|
data | null | required | Data value used by this API operation. |