Amazon Bestsellers API
List the top-ranked products of any Amazon Best Sellers category (rank, title, price, and rating) in one normalized request.
Provider network
Providers ranked by traffic
capped at $0.0902 per request1 result$0.0045110 results$0.045120 results$0.0902 capYou are charged for what comes back. Lower the limit to pay less - and no single request can cost more than the cap, however much comes back.
Try it
Make your first request
{
"data": {
"items": [
{
"asin": "example",
"categoryName": "Example title",
"currency": "USD",
"image": "https://example.com/image.jpg",
"offersCount": 12500,
"price": 19.99,
"rank": 1,
"rating": 4.6,
"reviewsCount": 12500,
"title": "Example title",
"url": "https://example.com/page"
}
]
},
"found": true
}interface AmazonBestsellersResponse {
data: {
items: {
asin: string;
categoryName?: string | null;
currency?: string;
image?: string;
offersCount?: number | null;
price?: number;
rank?: number;
rating?: number;
reviewsCount?: number;
title: string;
url: string;
}[];
} | null;
found: boolean;
}Full parameter and response reference - every field, type, and example for this endpoint.
Reference
Request, response, and price
Last verified 2026-09-16 · uptime and latency measured over 30dcurl -X POST https://api.getanyapi.com/v1/run/amazon.bestsellers \
-H "Authorization: Bearer $ANYAPI_KEY" \
-H "Content-Type: application/json" \
-d '{"limit":3,"url":"https://www.amazon.com/gp/bestsellers/electronics"}'| Field | Type | Example value |
|---|---|---|
| Request body | ||
| url | string | "https://www.amazon.com/gp/bestsellers/electronics"Amazon Best Sellers category URL (e.g. https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics). |
| limit | integer | 3Maximum number of results to return (1-20, default 20). |
| requireFields | array | Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `offersCount` or `categoryName`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. A named field can still be absent on a product that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge. |
| Response | ||
| data | object | Best-sellers wrapper, or null when the category returned nothing. |
| data.items | object[] | Best-seller product records ordered by category rank. Populated whenever the provider has data for the entity. |
| data.items[].asin | string | Amazon Standard Identification Number. Populated whenever the provider has data for the entity. |
| data.items[].categoryNamecan require | string | Best Sellers category name the product ranks in, or null when the serving source does not publish it. |
| data.items[].currencycan require | string | Price currency symbol or code, e.g. "$". |
| data.items[].imagecan require | string | Primary product thumbnail image URL. |
| data.items[].offersCountcan require | integer | Number of available offers, or null when the serving source does not publish it. |
| data.items[].pricecan require | number | Listed price; 0 when no offer is available. |
| data.items[].rankcan require | integer | Best-seller rank within the category (1 = top). |
| data.items[].ratingcan require | number | Average star rating, 0-5; 0 when unrated. |
| data.items[].reviewsCountcan require | integer | Number of customer reviews; 0 when none. |
| data.items[].title | string | Product title. Populated whenever the provider has data for the entity. |
| data.items[].url | string | Canonical product detail page URL (tracking query params stripped). Populated whenever the provider has data for the entity. |
| found | boolean | True when the category returned at least one best-seller. |
| Price | ||
| Price per request | USD | $0.0005 |
| Price /1k req | USD | $0.50 |
FAQ
About the Amazon Bestsellers API
The AnyAPI Amazon Bestsellers API returns Amazon bestsellers data as normalized JSON from one POST call to /v1/run/amazon.bestsellers. List the top-ranked products of any Amazon Best Sellers category (rank, title, price, and rating) in one normalized request. AnyAPI routes each request across 2 sources and falls back automatically when one fails. It costs from $0.50 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 100.0% of Amazon bestsellers calls through AnyAPI succeeded, with a median response time of 5.4 seconds across 2 measured calls.