# Amazon Best Sellers (`scrapier/amazon-bestsellers-scraper`) Actor

Scrape Amazon Best Sellers categories and extract details on top 100 most popular items. Download product name, price, URL and thumbnail. Best used on .com, .co.uk, .de, .fr, .es, and .it domains.

- **URL**: https://apify.com/scrapier/amazon-bestsellers-scraper.md
- **Developed by:** [Scrapier](https://apify.com/scrapier) (community)
- **Categories:** Automation, E-commerce, Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $5.99 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

###  What does Amazon Bestsellers Scraper do?

The Amazon Bestsellers Scraper is a powerful tool designed to extract data on the top-selling products from Amazon. It helps you easily access information about Amazon's Best-Seller List, including product names, prices, ASINs, and ratings. This scraper can also be used to gather data from Amazon Best Sellers API for programmatic access, or explore custom solutions through Amazon Scraper GitHub repositories. Whether you're an Amazon seller looking for product insights, conducting competitive analysis, or researching trending items, this scraper provides valuable, real-time data to help you stay ahead in the market.

### What can I extract with Amazon Bestsellers Scraper?

The Amazon Bestsellers Scraper allows you to extract key details of top-selling products across various categories. It pulls vital product information, including price, ranking, reviews, and more, which helps in conducting market research and competitive analysis. This structured data gives you insights into trending products, enabling better decision-making for your business or research.

Here’s a breakdown of what you can extract:

| Data Type | Details Extracted |
| --- | --- |
| Product Name | The name of the top-selling product |
| Price | The current price of the product |
| ASIN | Amazon Standard Identification Number (ASIN) |
| URL | Direct product URL on Amazon |
| Category | The category or subcategory to which the product belongs |
| Image | Product image thumbnail |
| Ratings | Average rating based on customer reviews |
| Review Count | Total number of reviews for the product |
| Rank | Rank of the product in its category (e.g., #1 Best Seller) |

The great thing about the Amazon Bestsellers Scraper is its ability to deliver large-scale data quickly and in various formats. It enables you to scrape specific categories, track the best-selling products, and export the data in JSON, CSV, Excel, or XML for easy analysis and comparison.

#### Key Features of Amazon Bestsellers Scraper

The Amazon Bestsellers Scraper comes with powerful features to help you stay ahead of market trends. Whether you're a seller, researcher, or developer, this tool provides the flexibility and reliability you need.

*   Multi-Domain Scraping: Extract best-selling products from Amazon domains across multiple regions (e.g., US, UK, DE, FR).  
      
    
*   Category-Based Scraping: Scrape top products from specific categories like Electronics, Books, and more.  
      
    
*   Bulk Processing: Easily handle large quantities of data by scraping multiple categories or URLs at once.  
      
    
*   Flexible Output: Get data in JSON, CSV, Excel, or XML format.  
      
    
*   API Integrations: Connect to Amazon Best Sellers API for seamless automation and data synchronization.  
      
    
*   Python Automation: Use Python scripts to automate and integrate scraping into your workflows.  
      
    
*   Alternative Scrapers: Compare with other tools like Oxylabs Amazon Scraper for larger-scale scraping needs.  
      
    

This makes it an essential tool for businesses seeking to analyze product performance and competitive data.

### How to use Amazon Bestsellers Scraper

Using the Amazon Bestsellers Scraper is simple and doesn’t require technical expertise. Just follow these easy steps to start extracting top-selling product data from Amazon in minutes.

#### Step-by-Step Guide:

1.  Log in to Apify: Create a free account or sign in to your existing Apify account.  
      
    
2.  Select the Actor: Search for “Amazon Bestsellers Scraper” in the Apify store.  
      
    
3.  Enter Input Data: Paste the Amazon Bestsellers URLs into the startUrls field. You can add multiple URLs for different categories or subcategories.  
      
    
4.  Choose Options: Select your preferred output format, such as JSON, CSV, or Excel, and adjust any other settings as needed.  
      
    
5.  Run the Actor: Click "Start" to begin scraping. The tool will automatically extract the product details from Amazon.  
      
    
6.  Download Results: Once the scrape is complete, download the results in your chosen format (JSON, CSV, Excel, etc.).  
      

By following these steps, you can easily collect data from Amazon's Best Sellers lists, saving time and gaining valuable insights for market research, product analysis, or competitive monitoring.

### Input

```json
{
  "urls": [
    {
      "url": "https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/",
      "method": "GET"
    }
  ]
}
````

#### Output

```json
[
  {
    "input": "https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/",
    "success": true,
    "error": null,
    "name": "Blink Subscription Plus Plan with monthly auto-renewal",
    "url": "https://www.amazon.com/Blink-Plus-Plan-monthly-auto-renewal/dp/B08JHCVHTY/ref=zg_bs_g_electronics_d_sccl_1/132-3998273-6472934?psc=1",
    "asin": "B08JHCVHTY",
    "position": 1,
    "price": {
      "value": 10,
      "currency": "$"
    },
    "number_of_offers": null,
    "stars": 4.4,
    "reviews_count": 259940,
    "thumbnail_url": "https://images-na.ssl-images-amazon.com/images/I/316iIKOVz7L._AC_UL300_SR300,200_.png",
    "category_name": "Best Sellers in Electronics",
    "category_full_name": "Best Sellers in Best Sellers in Electronics",
    "sub_categories": [
      {
        "category_name": "Accessories & Supplies",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Electronics-Accessories-Supplies/zgbs/electronics/281407/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Camera & Photo",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Camera-Photo-Products/zgbs/electronics/502394/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Car Electronics",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Car-Electronics/zgbs/electronics/1077068/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Cell Phones & Accessories",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Cell-Phones-Accessories/zgbs/electronics/2811119011/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Computers & Accessories",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Computers-Accessories/zgbs/electronics/541966/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "GPS & Navigation",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-GPS-Finders-Accessories/zgbs/electronics/172526/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Headphones",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Headphones-Earbuds/zgbs/electronics/172541/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Home Audio & Theater",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Home-Audio-Theater-Products/zgbs/electronics/667846011/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Marine Electronics",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Marine-Electronics/zgbs/electronics/319574011/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Office Electronics",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Office-Electronics-Products/zgbs/electronics/172574/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Portable Audio & Video",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Portable-Audio-Video/zgbs/electronics/172623/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Security & Surveillance",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Security-Surveillance-Equipment/zgbs/electronics/524136/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Service & Replacement Plans",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Computers-Electronics-Service-Plans/zgbs/electronics/16285901/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Televisions & Video",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Televisions-Video-Products/zgbs/electronics/1266092011/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Video Game Consoles & Accessories",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Video-Game-Consoles-Accessories/zgbs/electronics/7926841011/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Video Projectors",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Video-Projectors/zgbs/electronics/300334/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "Wearable Technology",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-Wearable-Technology/zgbs/electronics/10048700011/ref=zg_bs_nav_electronics_1"
      },
      {
        "category_name": "eBook Readers & Accessories",
        "category_url": "https://www.amazon.com/Best-Sellers-Electronics-eBook-Readers-Accessories/zgbs/electronics/2642125011/ref=zg_bs_nav_electronics_1"
      }
    ],
    "category_url": "https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/"
  }, ....]
```

### 🎯Why scrape Amazon Bestsellers?

Scraping Amazon Bestsellers provides valuable insights across various business and research domains. Here are some key use cases:

#### E-commerce Competitor Research

By analyzing Amazon’s top-selling products, you can gain a deeper understanding of pricing strategies, features, and trends that top-performing products in your niche follow. This helps businesses develop competitive strategies.

#### Market Trend Analysis

Tracking the most popular products in different categories (like "Best Seller Tongue Scrapers" or electronics) allows you to spot emerging trends early. This can help businesses align their product offerings with what customers are gravitating toward.

#### Product Research for Dropshipping

Scraping Amazon Bestsellers helps identify trending products that are perfect for dropshipping. By understanding what is selling well, dropshippers can stock their inventory with high-demand products, ensuring they stay ahead of competitors.

#### Amazon Rank Calculation

Scraping Best Sellers data helps businesses understand how Amazon ranks its products and what factors influence these rankings. This data can be useful for sellers wanting to optimize their product listings or create targeted campaigns.

In all these cases, using an Amazon Bestsellers Scraper is a smart way to automate the gathering of actionable data and stay ahead in the competitive e-commerce landscape.

### How many results can you scrape with Amazon Bestsellers Scraper?

The number of results you can scrape using the Amazon Bestsellers Scraper typically ranges from the top 100 to 200 products, but can go beyond that depending on your needs. Here's a breakdown of the factors that affect the number of products you can scrape:

#### Number of Categories

The more categories you want to scrape, the more results you'll get. You can scrape Best Sellers in a wide range of categories such as electronics, books, home goods, and more. Including multiple categories will naturally increase the number of results.

#### Depth of Scraping

You can adjust the depth of your scrape, which determines how deep into subcategories the scraper goes. Deeper scraping will retrieve more detailed results, but may also impact the overall number of results, as well as scraping speed.

#### Location

Scraping from different Amazon domains (e.g., Amazon.com, Amazon.co.uk, etc.) can yield different results depending on the local market's best-sellers. Each region’s ranking and product availability can influence the number of products you can scrape.

#### Proxy Considerations

To avoid detection and blocking, using proxies is essential. Proxies help manage bulk scraping without encountering restrictions. Make sure to consider proxy limits when scraping large volumes.

The scraper allows for flexibility, but for more extensive scraping, be mindful of these factors to optimize performance.

### How much will scraping Amazon Bestsellers cost you?

The cost of scraping Amazon Bestsellers depends on your scraping needs and the scale of the project. Apify offers a flexible pricing model to accommodate both small-scale and large-scale scraping tasks.

#### Pricing Model

The basic plan starts at $5/month, which is perfect for users with light scraping needs. This allows you to scrape up to 1,000 products per month, making it an affordable option for most individuals and small businesses.

#### Pay-as-you-go Flexibility

For larger projects, Apify’s pay-as-you-go model allows you to pay based on the resources consumed. This means you only pay for what you use, providing flexibility for large-scale scraping tasks or for projects that require more data. You can scale your plan up depending on your needs.

#### Free and Premium Plans

Apify also offers free and premium plans. The free plan is ideal for occasional users, providing up to 20,000 results per month at no cost. For those needing more data, the premium plans allow for more products to be scraped and come with added features like API access and increased processing speed.

#### Example Calculation

If you’re scraping 1,000 products, it would cost you around $5/month. For larger scraping jobs, the cost will increase based on the number of products and requests.

### Is it legal to scrape Amazon Bestsellers?

#### Amazon’s Terms of Service

Scraping Amazon Bestsellers is subject to Amazon's Terms of Service. Amazon's policies generally prohibit automated scraping of their website, especially for commercial purposes. However, scraping publicly available data that doesn't violate these terms may still be legally permissible. It’s essential to review Amazon’s terms and conditions to ensure compliance before scraping. Using APIs like Amazon’s official API may offer a more structured and legal way to extract data, as they comply with Amazon's rules.

#### Ethical Scraping Practices

Ethical scraping focuses on collecting publicly available data, such as product names, prices, and ratings, without overburdening Amazon's servers. Scrapers should avoid scraping excessive amounts of data in short periods, use rate limits, and respect robots.txt guidelines to minimize any negative impact on the platform.

#### GDPR Compliance

If your scraper extracts personal data, such as user reviews or comments, it must comply with the General Data Protection Regulation (GDPR). For example, collecting user data from reviews may require obtaining explicit consent from users, depending on the context. Ensure that data collection complies with privacy laws and only scrapes data that is publicly shared.

Always verify the legal aspects before engaging in web scraping and consult legal professionals if necessary to ensure compliance with both Amazon's policies and relevant data protection regulations.

### FAQ

#### Is Amazon Bestsellers Scraper free?

Amazon Bestsellers Scraper offers limited access with the Apify Free plan, allowing up to 20,000 results per month. For more extensive scraping, you may need to upgrade to a paid plan, which provides more flexibility and higher data limits.

#### What is Amazon's Top 10 Best-Seller List?

Amazon’s Top 10 Best-Seller List showcases the most popular and top-selling products across a variety of categories. This list is constantly updated to reflect the latest trends and most in-demand products based on sales data.

#### Can I use Amazon Bestsellers API instead of scraping?

Yes, Amazon provides an API that allows programmatic access to Best Sellers data. This is a structured and official method for extracting product information without the need for scraping, ensuring compliance with Amazon’s terms of service.

#### Are Amazon Best Sellers trustworthy?

While Amazon’s Best Sellers list is a valuable resource, it may not always reflect long-term trends. Rankings are based on recent sales, which can fluctuate rapidly due to promotions, seasonal changes, or sudden spikes in demand. The list is generally reliable for identifying popular products but should be used in conjunction with other market insights.

#### How is Amazon Best Seller Rank calculated?

Amazon's Best Seller Rank (BSR) is determined by a combination of factors, including the number of sales over time, product reviews, and how well the product performs relative to others in the same category. The BSR is updated hourly and reflects current sales velocity.

### What are other Amazon scraping tools?

If you want to scrape specific Amazon data, you can use any of the dedicated scrapers below for faster and more targeted results.

| Scraper Name | Scraper Name |
|---|---|
| [Amazon Asin Scraper](https://apify.com/scrapier/amazon-asin-scraper) | [Amazon Product Details Scraper](https://apify.com/scrapier/amazon-product-details-scraper) |
| [Amazon B2b Email Scraper](https://apify.com/scrapier/amazon-b2b-email-scraper) | [Amazon Product Scraper](https://apify.com/scrapier/amazon-product-scraper) |
| [Amazon B2b Phone Number Scraper](https://apify.com/scrapier/amazon-b2b-phone-number-scraper) | [Amazon Search Products Scraper](https://apify.com/scrapier/amazon-search-products-scraper) |
| [Amazon DE Sellers Leads Scraper](https://apify.com/scrapier/amazon-de-sellers-leads-scraper) | [Amazon Search Scraper](https://apify.com/scrapier/amazon-search-actor) |
| [Amazon Email Scraper](https://apify.com/scrapier/amazon-email-scraper) | [Amazon Seller Data Extractor Scraper](https://apify.com/scrapier/amazon-seller-data-extractor-scraper) |
| [Amazon Phone Number Scraper](https://apify.com/scrapier/amazon-phone-number-scraper) | [Amazon Today's Deals Scraper](https://apify.com/scrapier/amazon-todays-deals-scraper) |

# Actor input Schema

## `categoryUrls` (type: `array`):

📋 Amazon Best Sellers category page URLs to scrape.

## `maxResults` (type: `integer`):

📈 Maximum number of products to extract per each Amazon category URL.

## `subcategoryDepth` (type: `integer`):

1️⃣ = main category only, 2️⃣+ = include subcategories.

## `language` (type: `string`):

🗣️ Language to use on Amazon. ⚠️ Disclaimer: each Amazon domain has a different set of supported languages. If you choose a language that is not supported by the domain, the scraper will use the default language of the domain.

## `detailedInformation` (type: `boolean`):

Fetch extra product details (when available).

## `useCaptchaSolver` (type: `boolean`):

🔓 Use captcha solver when blocked (⚠️ warning: may incur extra cost).

## `proxyConfiguration` (type: `object`):

🔒 Proxy settings. Default is DIRECT. If blocked, falls back to residential proxy.

## Actor input object example

```json
{
  "categoryUrls": [
    "https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/"
  ],
  "maxResults": 20,
  "subcategoryDepth": 2,
  "detailedInformation": false,
  "useCaptchaSolver": false,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "categoryUrls": [
        "https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/"
    ],
    "proxyConfiguration": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapier/amazon-bestsellers-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "categoryUrls": ["https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/"],
    "proxyConfiguration": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("scrapier/amazon-bestsellers-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "categoryUrls": [
    "https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/"
  ],
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}' |
apify call scrapier/amazon-bestsellers-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=scrapier/amazon-bestsellers-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Amazon Best Sellers",
        "description": "Scrape Amazon Best Sellers categories and extract details on top 100 most popular items. Download product name, price, URL and thumbnail. Best used on .com, .co.uk, .de, .fr, .es, and .it domains.",
        "version": "0.2",
        "x-build-id": "0E68ThbOm33JyKgg4"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scrapier~amazon-bestsellers-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scrapier-amazon-bestsellers-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/scrapier~amazon-bestsellers-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scrapier-amazon-bestsellers-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/scrapier~amazon-bestsellers-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scrapier-amazon-bestsellers-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "categoryUrls"
                ],
                "properties": {
                    "categoryUrls": {
                        "title": "🔗 Amazon category URLs",
                        "type": "array",
                        "description": "📋 Amazon Best Sellers category page URLs to scrape.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxResults": {
                        "title": "📊 Max results (per start URL)",
                        "minimum": 1,
                        "maximum": 500,
                        "type": "integer",
                        "description": "📈 Maximum number of products to extract per each Amazon category URL.",
                        "default": 20
                    },
                    "subcategoryDepth": {
                        "title": "📁 How many subcategories do you want to scrape?",
                        "minimum": 1,
                        "type": "integer",
                        "description": "1️⃣ = main category only, 2️⃣+ = include subcategories.",
                        "default": 2
                    },
                    "language": {
                        "title": "🌐 Language",
                        "enum": [
                            "",
                            "cs",
                            "da",
                            "de",
                            "en",
                            "es",
                            "fr",
                            "nl",
                            "pl",
                            "pt",
                            "sv",
                            "tr",
                            "he",
                            "ar",
                            "mrta",
                            "hi",
                            "bn",
                            "ta",
                            "te",
                            "kn",
                            "ml",
                            "ko",
                            "zh_CN",
                            "zh_TW",
                            "ja"
                        ],
                        "type": "string",
                        "description": "🗣️ Language to use on Amazon. ⚠️ Disclaimer: each Amazon domain has a different set of supported languages. If you choose a language that is not supported by the domain, the scraper will use the default language of the domain."
                    },
                    "detailedInformation": {
                        "title": "Detailed information",
                        "type": "boolean",
                        "description": "Fetch extra product details (when available).",
                        "default": false
                    },
                    "useCaptchaSolver": {
                        "title": "🤖 Use Captcha solver",
                        "type": "boolean",
                        "description": "🔓 Use captcha solver when blocked (⚠️ warning: may incur extra cost).",
                        "default": false
                    },
                    "proxyConfiguration": {
                        "title": "🌐 Proxy configuration",
                        "type": "object",
                        "description": "🔒 Proxy settings. Default is DIRECT. If blocked, falls back to residential proxy."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
