Amazon Product Research API with Sales, Revenue and BSR Filters
What this API returns
The Product Research endpoint is a filter over Amazon listings. You describe the products you are looking for — a keyword or category, a price band, a minimum monthly sales figure, an upper limit on reviews — and it returns the listings that match, one row per product, sorted the way you ask.
It answers the question a product researcher asks before anything else: which products in this niche already sell, at what price, against how many reviews.
A real request for cat water fountain in the US, phrase match, latest 30 days, at least 300 units a month, variations collapsed, returned 378 products. The top row:
| Field | What it tells you | Value from the request above |
|---|---|---|
units | Estimated monthly unit sales for the parent listing | 52585 |
price | Current price in the marketplace currency | 27.99 |
revenue | Estimated monthly revenue | 1471854.1 |
bsr | Top-level Best Sellers Rank | 82 |
rating / ratings | Star rating and total rating count | 4.3 / 5577 |
ratingsCv | Ratings added in the selected month | 920 |
availableDate | Listing date, as a millisecond timestamp | 1758412800000 (Sept 2025) |
fba / profit | Estimated FBA fee and gross margin percentage | 6.34 / 62.35 |
sellers / sellerNation | Sellers on the listing and the main seller's country | 1 / US |
nodeLabelPath | Category path | Pet Supplies:Cats:…:Fountains |
You can check the arithmetic: 52,585 units × $27.99 = $1,471,854, which is the revenue value. That row is a listing a little over a year old that already outsells products with eight times its reviews — exactly the kind of signal this endpoint is for. The full field list is in the Product Research reference.
Request example
curl --request POST \
--url https://ecommercedataapi.com/v1/amazon/product/research \
--header "Content-Type: application/json" \
--header "X-API-Key: ${ECOMMERCE_DATA_API_KEY}" \
--data '{
"marketplace": "US",
"month": "nearly",
"keyword": "cat water fountain",
"matchType": 1,
"minUnits": 300,
"variation": "Y",
"page": 1,
"size": 20,
"order": { "field": "total_units", "desc": true }
}'marketplaceis the only required field. Supported codes: US, UK, DE, FR, IT, ES, MX, CA, AU, JP, IN, AE, BR.monthtakesnearlyfor the latest 30 days oryyyyMMfor a calendar month within the past 24 months.matchTypeis1phrase,2broad (the default) or3exact. Broad match on a short keyword pulls in loosely related listings; start with phrase.variation: "Y"collapses variations into one row per parent, so a product with six colours is not counted six times.- One query returns at most 2,000 records. Narrow the filters rather than paging past that.
Filters that do the work
Most of the value is in the filters. The ones product researchers use first:
- Demand:
minUnits/maxUnits,minRevenue/maxRevenue, and growth ratesminUnitsCr,minRevenueCrto find products that are rising, not only large. - Competition:
maxRatingskeeps listings that have not yet built a review moat;minRatingsCvshows which ones are still gaining reviews this month. - Entry timing:
availableMonth(1, 3, 6, 12 or 24) limits results to listings launched recently — the clearest evidence that a newcomer can still get in. - Price and margin:
minPrice/maxPrice,maxFba,minProfit. - Category:
nodeIdPathornodeIdPathsrestrict results to a category path. Get the path from the category endpoint. - Sellers:
sellerNation,fulfillment(AMZ, FBA, FBM),maxSellers,includeBrands/excludeBrands. - Badges:
badgeBS,badgeAC,badgeNRrequire Best Seller, Amazon's Choice or New Release.
Keyword match is text matching, not category matching. In the request above, the second row was a dog fountain filed under Pet Supplies:Dogs. If you need one category only, add its nodeIdPath.
Common workflows
- Shortlist a niche. Pick the category, filter products by sales and review ceiling, then rank the shortlist. The bulk product research workflow chains this endpoint with market research and BSR sales estimates.
- Find recent winners. Set
availableMonth: 6with aminUnitsfloor to see which products launched in the last six months are already selling. If there are none, the category is harder to enter than its size suggests. - Check the price bands. Sort by
total_unitswithin a category and read where the sales cluster. Price band analysis shows how to turn that into a launch price. - Go deeper on one product. Take an ASIN from the results to the sales estimate, competitor and reverse ASIN endpoints.
Limits worth knowing
units,revenue,profitandfbaare estimates. Amazon publishes no unit sales; these figures are modelled from rank and other public signals. Use them to compare products and track direction, not as accounting figures. What sales estimates can and cannot tell you explains how they are derived.- Some fields can be empty for some rows —
ratingsCvwasnullon one row of the request above. Treat a missing value as unknown, not zero. - Each successful call consumes one billing unit, regardless of
size. Ask for up to 100 rows per call. - An opportunity score that decides for you is not part of the response. You set the thresholds; choosing a product research tool explains why that matters.
FAQ
Is this the Amazon Product Advertising API? No. The Product Advertising API returns catalogue data for affiliates and has no sales estimates or research filters. This endpoint is built for screening products by demand and competition.
Can I search by category instead of keyword?
Yes. Send nodeIdPath (or several in nodeIdPaths) and omit keyword. Use nodeIdPathEqual: true to exclude subcategories.
Can an AI agent use it? Yes. The endpoint is exposed as a tool through the remote MCP server, so Claude, Cursor and other MCP clients can run product research in a conversation.