
Amazon Best Selling Products Finder Api Skill
- 21 installs
- 5.2k repo stars
- Updated July 21, 2026
- browser-act/skills
amazon-best-selling-products-finder-api-skill is a Claude skill that extracts structured best-selling Amazon product data for a keyword via the BrowserAct API.
About
This skill uses BrowserAct's Amazon Best Selling Products Finder API to extract structured best-seller data for a search keyword. A developer uses it for market research and competitor analysis, pulling titles, prices, ratings, review counts, past-month sales, and promotional details. Inputs are the keyword, a result limit, and a marketplace URL for region-specific searches.
- Extracts best-selling Amazon products by keyword via the BrowserAct API
- Returns price, ratings, review count, past-month sales, and badges
- Supports region-specific marketplace URLs
Amazon Best Selling Products Finder Api Skill by the numbers
- 21 all-time installs (skills.sh)
- Ranked #657 of 853 Sales & Marketing skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
amazon-best-selling-products-finder-api-skill capabilities & compatibility
Requires a BrowserAct API key from the BrowserAct Console
- Capabilities
- amazon best sellers · market research · competitor analysis
- Use cases
- research · marketing · web scraping
- Runs
- Runs locally
- Pricing
- Bring your own API key
What amazon-best-selling-products-finder-api-skill says it does
This skill helps users extract structured best-selling product data from Amazon via the BrowserAct API.
By inputting search keywords, data limit, and marketplace URL, you can easily get clean and usable product data including titles, prices, ratings, reviews, sales volume, and promotional details.
Before running, first check the `BROWSERACT_API_KEY` environment variable.
npx skills add https://github.com/browser-act/skills --skill amazon-best-selling-products-finder-api-skillAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 21 |
|---|---|
| repo stars | ★ 5.2k |
| Last updated | July 21, 2026 |
| Repository | browser-act/skills ↗ |
What it does
A seller finds the best-selling products for a keyword to research the market and monitor competitor pricing.
Who is it for?
Market research and competitor analysis by pulling best-seller data for a keyword
Skip if: Looking up a single known product where an ASIN lookup fits better
When should I use this skill?
When the user wants to find best-selling or trending Amazon products for a keyword
What you get
A clean structured list of best-selling products with price, ratings, sales, and promotions for a keyword.
- structured best-selling Amazon product list
By the numbers
- default result limit 10
- automatic retry limited to once
Files
Amazon Best Selling Products Finder API Skill
📖 Skill Introduction
This skill provides users with a one-stop product data extraction service using the BrowserAct Amazon Best Selling Products Finder API template. It can directly extract structured best-selling product data from Amazon. By inputting search keywords, data limit, and marketplace URL, you can easily get clean and usable product data including titles, prices, ratings, reviews, sales volume, and promotional details.
✨ Features
1. No hallucinations, ensuring stable and precise data extraction: Preset workflows avoid AI generative hallucinations. 2. No CAPTCHA issues: No need to handle reCAPTCHA or other verification challenges. 3. No IP access restrictions and geofencing: No need to handle regional IP restrictions. 4. More agile execution speed: Compared to pure AI-driven browser automation solutions, task execution is faster. 5. Extremely high cost-effectiveness: Significantly reduces data acquisition costs compared to AI solutions that consume a large number of Tokens.
🔑 API Key Guide Flow
Before running, first check the BROWSERACT_API_KEY environment variable. If it is not set, do not take other actions; require and wait for the user to collaborate to provide it. The Agent must inform the user at this time:
"Since you have not configured the BrowserAct API Key yet, please go to the BrowserAct Console to get your Key."
🛠️ Input Parameters
When calling the script, the Agent should flexibly configure the following parameters based on user needs:
1. KeyWords
- Type:
string - Description: Search keywords used to find Amazon products.
- Example:
iphone 17 pro max,gaming mouse,running shoes
2. Date_limit
- Type:
number - Description: Maximum number of products to extract.
- Default:
10 - Recommendation: Set to a lower number for quick checks, or higher for comprehensive analysis.
3. Marketplace_url
- Type:
string - Description: Amazon marketplace URL for region-specific searches.
- Default:
https://www.amazon.com - Example:
https://www.amazon.co.uk,https://www.amazon.de
🚀 Call Method (Recommended)
The Agent should execute the following standalone script to achieve "one command to get results":
# Call example
python -u ./scripts/amazon_best_selling_products_finder_api.py "search keywords" limit "marketplace_url"⏳ Running Status Monitoring
Since this task involves automated browser operations, it may take a long time (several minutes). The script will continuously output status logs with timestamps (e.g. [14:30:05] Task Status: running) during execution. Agent notice:
- While waiting for the script to return the result, please keep an eye on the terminal output.
- As long as the terminal is still outputting new status logs, it means the task is running normally. Please do not mistakenly judge it as a deadlock or unresponsive.
- If the status remains unchanged for a long time or the script stops outputting and no result is returned, the retry mechanism can be triggered.
📊 Data Output Description
After successful execution, the script will parse and print the result directly from the API response. The result contains:
title: Product titlebrand: Brand namelist_price: Original list pricecurrent_price: Current selling pricestar_rating: Average star ratingreview_count: Total review countpast_month_sales: Sales volume in the past monthavailability: Stock statuspromotion: Promotional offersasin: Amazon Standard Identification Numbercategory: Product categorybadge: Badges like Amazon's Choiceproduct_url: Direct link to the product
⚠️ Error Handling & Retry Mechanism
During the execution of the script, if an error occurs (such as network fluctuation or task failure), the Agent should follow this logic:
1. Check the output content:
- If the output contains
"Invalid authorization", it means the API Key is invalid or expired. At this time, do not retry, and guide the user to recheck and provide the correct API Key. - If the output does not contain
"Invalid authorization"but the task execution fails (for example, the output starts withError:or the returned result is empty), the Agent should automatically try to execute the script again once.
2. Retry limit:
- Automatic retry is limited to once. If the second attempt still fails, stop retrying and report the specific error message to the user.
🌟 Typical Use Cases
1. Market Research: Extract product listings and ratings to analyze the current market for specific keywords. 2. Competitor Analysis: Monitor competitor pricing, discounts, and sales volume over time. 3. Trending Products Discovery: Find the best-selling and highly rated products within a specific category. 4. Price Monitoring: Track current prices and list prices to optimize purchasing strategies. 5. Cross-Region Analysis: Compare product availability and pricing across different Amazon marketplaces.
import os
import time
import requests
import json
import sys
import datetime
import io
# Force UTF-8 encoding for standard output and error streams
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
sys.stderr = io.TextIOWrapper(sys.stderr.buffer, encoding='utf-8')
# API Configuration
TEMPLATE_ID = "85569073892601737"
API_BASE_URL = "https://api.browseract.com/v2/workflow"
def run_amazon_best_selling_products_finder_task(api_key, keywords, limit=10, marketplace_url="https://www.amazon.com"):
headers = {"Authorization": f"Bearer {api_key}"}
payload = {
"workflow_template_id": TEMPLATE_ID,
"input_parameters": [
{"name": "KeyWords", "value": keywords},
{"name": "Date_limit", "value": str(limit)},
{"name": "Marketplace_url", "value": marketplace_url}
]
}
# 1. Start Task
print(f"Start Task", flush=True)
try:
res = requests.post(f"{API_BASE_URL}/run-task-by-template", json=payload, headers=headers, timeout=30).json()
except Exception as e:
print(f"Error: Connection to API failed - {e}", flush=True)
return None
if "id" not in res:
print(f"Error: Could not start task. Response: {res}", flush=True)
return None
task_id = res["id"]
print(f"Task started. ID: {task_id}", flush=True)
# 2. Poll for Completion
max_poll_time = 300
poll_start = time.time()
while time.time() - poll_start < max_poll_time:
try:
status_res = requests.get(f"{API_BASE_URL}/get-task-status?task_id={task_id}", headers=headers, timeout=30).json()
status = status_res.get("status")
timestamp = datetime.datetime.now().strftime("%H:%M:%S")
print(f"[{timestamp}] Task Status: {status}", flush=True)
if status == "finished":
print(f"[{timestamp}] Task finished successfully.", flush=True)
break
elif status in ["failed", "canceled"]:
print(f"Error: Task {status}. Please check your BrowserAct dashboard.", flush=True)
return None
except Exception as e:
timestamp = datetime.datetime.now().strftime("%H:%M:%S")
print(f"[{timestamp}] Polling error: {e}. Retrying...", flush=True)
time.sleep(10)
print(f"Error: Task polling timed out after {max_poll_time} seconds.", flush=True)
return None
# 3. Get Results
try:
task_info = requests.get(f"{API_BASE_URL}/get-task?task_id={task_id}", headers=headers, timeout=30).json()
# Extract data from output["string"] as requested
# Usually task_info['output']['string'] contains the result
output = task_info.get("output", {})
result_string = output.get("string")
if result_string:
return result_string
else:
return json.dumps(task_info, ensure_ascii=False)
except Exception as e:
print(f"Error: Failed to retrieve results - {e}", flush=True)
return None
if __name__ == "__main__":
# Prioritize command line API key, then environment variable
api_key = os.getenv("BROWSERACT_API_KEY")
if len(sys.argv) < 2:
print("Usage: python amazon_best_selling_products_finder_api.py <keywords> [limit] [marketplace_url]", flush=True)
sys.exit(1)
if not api_key:
print("\n[!] ERROR: BrowserAct API Key is missing.", flush=True)
print("Please follow these steps:", flush=True)
print("1. Go to: https://www.browseract.com/reception/integrations", flush=True)
print("2. Copy your API Key.", flush=True)
print("3. Provide it to me or set it as an environment variable (BROWSERACT_API_KEY).", flush=True)
sys.exit(1)
keywords = sys.argv[1]
limit = sys.argv[2] if len(sys.argv) > 2 else 10
marketplace_url = sys.argv[3] if len(sys.argv) > 3 else "https://www.amazon.com"
result = run_amazon_best_selling_products_finder_task(api_key, keywords, limit, marketplace_url)
if result:
print(result, flush=True)
Related skills
FAQ
What data does the best-selling finder return?
Fields including title, brand, list and current price, star rating, review count, past-month sales, availability, promotion, ASIN, category, badge, and product URL.
Can it search non-US Amazon sites?
Yes, a marketplace URL like amazon.co.uk or amazon.de can be passed for region-specific searches.