Nexscope

Amazon Sales Estimates

Get daily estimated Amazon ASIN sales and latest known price for a selected date range across 10 marketplaces. Call it via REST API or MCP.

CostRecent 133 credits / call
Try online
POST · https://api.nexscope.ai/js/sales-estimates/queryMCP · nexscope_amazon_sales_estimates

Choose an integration method

Amazon Research JS

What this API does

Get daily estimated Amazon ASIN sales and latest known price for a selected date range across 10 marketplaces. The request accepts marketplace, asin, startDate, endDate. Its documented result includes asin, dailyEstimates, dataSnapshotMonth, date, estimatedUnitsSold, id, isParent, isStandalone.

Amazon Sales Estimates API use cases

Compare market evidence

To compare market evidence, a marketplace analyst submits marketplace and asin to Amazon Sales Estimates. The returned asin, dailyEstimates, dataSnapshotMonth help compare the requested market or product research signals.

Review a product demand signal

A marketplace analyst uses Amazon Sales Estimates with marketplace and asin to review a product demand signal. The returned asin, dailyEstimates, dataSnapshotMonth help identify demand evidence worth checking against other sources.

Prepare a sourcing or inventory review

For this workflow, a marketplace analyst calls Amazon Sales Estimates with marketplace and asin to prepare a sourcing or inventory review. The result helps inform a sourcing review without assuming future sales.

Amazon Sales Estimates API FAQ

What does the Amazon Sales Estimates API return?

Get daily estimated Amazon ASIN sales and latest known price for a selected date range across 10 marketplaces. The documented output includes asin, dailyEstimates, dataSnapshotMonth, date, estimatedUnitsSold, id, isParent, isStandalone. It corresponds to the supplied marketplace, asin, startDate, endDate. 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 Sales Estimates API cost?

The current documented cost is Recent 133 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 Sales Estimates API from my app or an MCP client?

Send a POST request to https://api.nexscope.ai/js/sales-estimates/query 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_sales_estimates. 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/js/sales-estimates/query
MCP method
nexscope_amazon_sales_estimates

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/js/sales-estimates/query

Run an API

Send a JSON request body using the parameters described below.

Example request

Replace YOUR_API_KEY, then run this command in your terminal.

curl -X POST 'https://api.nexscope.ai/js/sales-estimates/query' \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "asin": "B0CXXX1234",
  "endDate": "2026-03-31",
  "marketplace": "us",
  "startDate": "2026-03-01"
}'

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
200Default HTTP response for both success and many business errors. Only outer JSON code 0 indicates success or asynchronous acceptance; inspect data for the result.
429Execution admission rate limit; honor Retry-After when present.
503Execution admission is temporarily unavailable; honor Retry-After when present.
Opt-inX-Nexscope-Http-Status: semantic maps controller-handled business errors to HTTP status on run and task routes. Pre-authentication failures, such as a missing API key (code 11209), may still return HTTP 200 before this mapping. Always check the outer JSON code; malformed requests and infrastructure failures may also return non-200 HTTP responses.
All categories/ Amazon Research JS
POSThttps://api.nexscope.ai/js/sales-estimates/query

Run this API

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

Endpoint

MethodPOST
Pathhttps://api.nexscope.ai/js/sales-estimates/query
AuthBearer API key
Content-Typeapplication/json

Request parameters

NameTypeRequiredDescription
marketplacestringrequired
Target market code. Optional values: `us`, `uk`, `de`, `in`, `ca`, `fr`, `it`, `es`, `mx`, `jp`
Example: us
asinstringrequired
Amazon ASIN to query
startDatestringrequired
Start date (format: YYYY-MM-DD)
endDatestringrequired
End date (format: YYYY-MM-DD); must be before the current date

Code example

{
  "asin": "B0CXXX1234",
  "endDate": "2026-03-31",
  "marketplace": "us",
  "startDate": "2026-03-01"
}

Response example

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

{
  "code": 0,
  "cost": "-1",
  "data": {},
  "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.asinanyoptional
Asin 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.dailyEstimatesanyoptional
Daily estimates value used by this API operation.
data.dataSnapshotMonthanyoptional
Data snapshot month value used by this API operation.
data.dateanyoptional
Date value used by this API operation.
data.estimatedUnitsSoldanyoptional
Estimated units sold value used by this API operation.
data.idanyoptional
Id value used by this API operation.
data.isParentanyoptional
Is parent value used by this API operation.
data.isStandaloneanyoptional
Is standalone value used by this API operation.
data.isVariantanyoptional
Is variant value used by this API operation.
data.lastKnownPriceanyoptional
Last known price 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.parentAsinanyoptional
Parent asin value used by this API operation.
data.salesEstimateListanyoptional
Sales estimate list 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.
data.variantsanyoptional
Variants value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.asinstringoptional
Query ASIN
Example: null

Any of option 2

NameTypeRequiredDescription
data.asinnulloptional
Asin 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
Number of tokens consumed
Example: null

Any of option 2

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

Any of option 1

NameTypeRequiredDescription
data.dailyEstimatesarrayoptional
Array of daily estimated data
Example: null

Any of option 2

NameTypeRequiredDescription
data.dailyEstimatesnulloptional
Daily estimates 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.datestringoptional
Data date (YYYY-MM-DD)
Example: null

Any of option 2

NameTypeRequiredDescription
data.datenulloptional
Date value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.estimatedUnitsSoldintegeroptional
Estimated number of pieces sold on the day
Example: null

Any of option 2

NameTypeRequiredDescription
data.estimatedUnitsSoldnulloptional
Estimated units sold value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.idstringoptional
Data point identification
Example: null

Any of option 2

NameTypeRequiredDescription
data.idnulloptional
Id value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.isParentbooleanoptional
Is it a parent product?
Example: null

Any of option 2

NameTypeRequiredDescription
data.isParentnulloptional
Is parent value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.isStandalonebooleanoptional
Whether it is an independent product (non-variant)
Example: null

Any of option 2

NameTypeRequiredDescription
data.isStandalonenulloptional
Is standalone value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.isVariantbooleanoptional
Whether it is a variant product
Example: null

Any of option 2

NameTypeRequiredDescription
data.isVariantnulloptional
Is variant value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.lastKnownPricenumberoptional
Last known price (USD)
Example: null

Any of option 2

NameTypeRequiredDescription
data.lastKnownPricenulloptional
Last known price 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.parentAsinstringoptional
Parent ASIN (returned in variant scenarios)
Example: null

Any of option 2

NameTypeRequiredDescription
data.parentAsinnulloptional
Parent asin value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.salesEstimateListarrayoptional
Sales estimate result list
Example: null

Any of option 2

NameTypeRequiredDescription
data.salesEstimateListnulloptional
Sales estimate list 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
Resource type, fixed value `sales_estimate_result`
Example: null

Any of option 2

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

Any of option 1

NameTypeRequiredDescription
data.variantsarrayoptional
An array of variant ASINs under this parent
Example: null

Any of option 2

NameTypeRequiredDescription
data.variantsnulloptional
Variants value used by this API operation.

Any of option 2

NameTypeRequiredDescription
datanullrequired
Data value used by this API operation.

Responses

CodeDescription
200Default HTTP response for both success and many business errors. Only outer JSON code 0 indicates success or asynchronous acceptance; inspect data for the result.
429Execution admission rate limit; honor Retry-After when present.
503Execution admission is temporarily unavailable; honor Retry-After when present.
Opt-inX-Nexscope-Http-Status: semantic maps controller-handled business errors to HTTP status on run and task routes. Pre-authentication failures, such as a missing API key (code 11209), may still return HTTP 200 before this mapping. Always check the outer JSON code; malformed requests and infrastructure failures may also return non-200 HTTP responses.

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_sales_estimates",
    "arguments": {
      "asin": "B072MQ5BRX",
      "endDate": "2026-01-01",
      "marketplace": "us",
      "startDate": "2026-01-01"
    }
  }
}

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.

88 credits / callAPI usage records

Try it

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

Endpoint
/js/sales-estimates/query
MCP method
nexscope_amazon_sales_estimates
cURL
curl -X POST \
  https://api.nexscope.ai/js/sales-estimates/query \
  -H "Authorization: Bearer nk-..." \
  -H "Content-Type: application/json" \
  -d '{ "asin": "B0CXXX1234", "endDate": "2026-03-31", "marketplace": "us", "startDate": "2026-03-01" }'
Response
No response yet. Run the request to see the response here.

Related APIs