Amazon API: List Amazon Best Sellers
Lists current Amazon Best Sellers in the closest matching top-level category for a store country (United States, United Kingdom, Germany, India, Canada or Australia), up to 100 ranked products. Prices, ratings and photos may be missing.
Unofficial. Not affiliated with or endorsed by Amazon.
Inputs
Values from the run on Oct 31, 2026, shown under Output.
- Country optional
country Store country name or two-letter code, for example United Kingdom or DE.
United States (default)
- Category, required
category Category in plain words, such as kitchen, books, toys, or electronics.
books
- Max Results optional
max_results Maximum products to list, for example 50.
70
Whole number from 1 to 100. Default
50.
Input as JSON
{ "category": "books", "max_results": 70}Output
{ "products": [ { "asin": "168281808X", "rank": 1, "price": 25.99, "photo_link": "https://images-na.ssl-images-amazon.com/images/I/911TynawjkL._AC_UL300_SR300,200_.jpg" , "star_rating": null, "product_link": "https://www.amazon.com/Threshing-Wing-Claw-Collection-Empyrean/dp/168281808X" , "product_name": "Threshing Day (Wing and Claw Collection) (The Empyrean)", "currency_code": "USD", "number_of_ratings": null }, { "asin": "1668032147", "rank": 2, "price": 29.4, "photo_link": "https://images-na.ssl-images-amazon.com/images/I/61-XSfSVAEL._AC_UL300_SR300,200_.jpg" , "star_rating": 4.6, "product_link": "https://www.amazon.com/Protocols-Operating-Manual-Human-Body/dp/1668032147" , "product_name": "Protocols: An Operating Manual for the Human Body", "currency_code": "USD", "number_of_ratings": 133 }, { "asin": "1668236516", "rank": 3, "price": 12.99, "photo_link": "https://images-na.ssl-images-amazon.com/images/I/81P0NvoRrWL._AC_UL300_SR300,200_.jpg" , "star_rating": 4.7, "product_link": "https://www.amazon.com/Theo-Golden-Novel-Allen-Levi/dp/1668236516" , "product_name": "Theo of Golden: A Novel", "currency_code": "USD", "number_of_ratings": 192623 } ], "category_link": "https://www.amazon.com/best-sellers-books-Amazon/zgbs/books" , "category_name": "Books"}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"amazon.com/list_best_sellers","input":{"category":"books","max_results":70}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "amazon.com/list_best_sellers" , "input": { "category": "books", "max_results": 70 }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "amazon.com/list_best_sellers" , "input": { "category": "books", "max_results": 70 } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run amazon.com/list_best_sellers# with {"category":"books","max_results":70}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "category" ], "properties": { "country": { "type": "string", "default": "United States", "description": "Store country name or two-letter code, for example United Kingdom or DE." }, "category": { "type": "string", "description": "Category in plain words, such as kitchen, books, toys, or electronics." }, "max_results": { "type": "integer", "default": 50, "maximum": 100, "minimum": 1, "description": "Maximum products to list, for example 50." } }}Output schema
{ "type": "object", "required": [ "category_name", "category_link", "products" ], "properties": { "products": { "type": "array", "items": { "type": "object", "required": [ "rank", "product_name", "price", "currency_code", "star_rating", "number_of_ratings", "photo_link", "product_link", "asin" ], "properties": { "asin": { "type": [ "string", "null" ], "x-fous-developer": true }, "rank": { "type": "integer" }, "price": { "type": [ "number", "null" ] }, "photo_link": { "type": [ "string", "null" ] }, "star_rating": { "type": [ "number", "null" ] }, "product_link": { "type": "string" }, "product_name": { "type": "string" }, "currency_code": { "type": [ "string", "null" ] }, "number_of_ratings": { "type": [ "integer", "null" ] } }, "additionalProperties": false }, "description": "Best sellers in rank order." }, "category_link": { "type": "string", "description": "Page for this category on the selected Amazon store." }, "category_name": { "type": "string", "description": "Amazon category used for this list." } }, "additionalProperties": false}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
amazon.com/list_best_sellers- Returns
- category name and link, products in rank order (rank, name, price, currency, star rating, number of ratings, photo, product link, ASIN)
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method amazon.com/list_best_sellers with the inputs above.
Ask your agent
- What are the top 20 best-selling kitchen products on Amazon right now in the US?
- Show me the current best-selling books in the UK store, top 50 with prices and ratings.
- I need the ranked list of top-selling toys in Germany — give me the first 100 with ASINs.
- Which electronics are selling the most on Amazon India at the moment? Just the top 10.
- Pull the current best seller rankings for beauty products in Australia, around 30 items with star ratings and links.
See more
All Amazon methodsSearches Amazon products in a chosen country store, with price range, sort, Prime and page options. Returns the listings and prices shown to an anonymous shopper in the store's currency.
amazon.com/search_productsLists current public Today's Deals in page order for an Amazon store country, optionally for one deal category and a minimum discount, with deal and original prices, discount, deal type, time left, share claimed, rating and links.
amazon.com/list_dealsGets details for an Amazon product, found by name or by link, in a chosen country store. Offer prices, delivery and variants may be missing when Amazon does not show them publicly.
amazon.com/get_productLists the current bestselling audiobooks of an Audible store (United States, United Kingdom, Canada, Australia, India, Germany, France, Italy, Spain, Brazil or Japan), overall or in one chart category, in chart order with listed prices.
audible.com/list_best_sellersLists the biggest percentage Amazon price drops of the past week on CamelCamelCamel for one Amazon store, optionally in one product category, with old and new prices, photo, category and links.
camelcamelcamel.com/list_price_dropsLists Similarweb's most visited websites for a category and country, with rankings and engagement figures for the reported month. Anonymous view limits may restrict results, especially for country rankings.
similarweb.com/list_top_websitesLists Steam's top-selling, discounted, or new and trending games in store order, with prices for a chosen country, review summaries and release dates.
store.steampowered.com/list_top_sellersLists Twitch games and categories ranked by current live viewers, with content tags, box art and category links.
twitch.tv/list_top_categories