Amazon product search demand over time, structured as JSON. Track how consumer interest in any product, category, or brand has moved on Amazon - weekly series, growth percentages, and live bestseller rankings via a single POST endpoint.
Amazon's Product Advertising API is built for affiliate links and product lookups. It returns pricing, availability, and reviews. What it does not return is keyword-level search demand over time - how interest in "air fryer" or "standing desk" has grown or contracted across months and years.
That's the gap Trends MCP fills. Same single endpoint, same JSON structure as every other source.
POST https://api.trendsmcp.ai/api
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Weekly Amazon search demand for any product keyword, normalized 0-100.
{
"source": "amazon",
"keyword": "air fryer"
}
Response:
[
{
"date": "2026-03-21",
"value": 83,
"volume": null,
"keyword": "air fryer",
"source": "amazon"
}
]
Daily granularity for the last 30 days:
{
"source": "amazon",
"keyword": "air fryer",
"data_mode": "daily"
}
One call returns growth across as many periods as needed.
{
"source": "amazon",
"keyword": "protein powder",
"percent_growth": ["3M", "1Y", "3Y"]
}
Preset periods: 7D 14D 30D 1M 2M 3M 6M 9M 12M 1Y 18M 24M 2Y 36M 3Y 48M 60M 5Y MTD QTD YTD
Custom date comparison:
{
"source": "amazon",
"keyword": "protein powder",
"percent_growth": [
{ "name": "holiday lift", "recent": "2025-12-15", "baseline": "2025-10-01" }
]
}
{
"mode": "top_trends",
"type": "Amazon Best Sellers Top Rated",
"limit": 50
}
Python
import requests
res = requests.post(
"https://api.trendsmcp.ai/api",
headers={"Authorization": "Bearer YOUR_API_KEY"},
json={"source": "amazon", "keyword": "air fryer", "percent_growth": ["3M", "1Y"]}
)
data = res.json()
JavaScript
const res = await fetch("https://api.trendsmcp.ai/api", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({ source: "amazon", keyword: "air fryer", percent_growth: ["3M", "1Y"] })
});
const data = await res.json();
FAQ