# eBay Products by Category Scraper (`burbn/ebay-products-by-category`) Actor

Extract eBay products by Category ID across 20+ global marketplaces! Get prices, seller info, item aspects, ratings, sold items, and shipping details. Filter by condition, price & buying format. Export to JSON/CSV instantly.

- **URL**: https://apify.com/burbn/ebay-products-by-category.md
- **Developed by:** [Kevin](https://apify.com/burbn) (community)
- **Categories:** E-commerce, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 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.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — 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

## eBay Products by Category Scraper | Browse eBay Category Products API

Scrape eBay products by category ID across 20+ international marketplaces. Extract product titles, prices, conditions, seller info, shipping details, ratings, reviews, and more from any eBay category. Filter by condition, buying format, price range, item aspects (Brand, Model, Color, etc.), and sort order. The best eBay category scraper for product research, price monitoring, and e-commerce analysis.

### ❓ What is eBay Products by Category Scraper?

**eBay Products by Category Scraper** is a powerful Apify actor that lets you browse and extract product listings from any **eBay category** using the category ID — across 20+ international marketplaces. Perfect for e-commerce sellers, market researchers, price comparison tools, and dropshipping businesses.

With this eBay category scraper, you can:

- 📂 **Browse by Category** — Scrape products from any eBay category using the category ID (e.g., 9355 for Cell Phones, 175672 for Laptops)
- 🔎 **Search within Category** — Optionally filter results with search keywords for more specific results
- 🌍 **20+ Marketplaces** — Supports ebay.com, ebay.co.uk, ebay.de, ebay.com.au, and 16 more
- 📊 **Sort results** — Best Match, Ending Soonest, Newly Listed, Price Low to High, Price High to Low
- 📦 **Filter by condition** — New, Used, Open Box, Refurbished, For Parts
- 🛒 **Filter by format** — Buy It Now, Auction, Accepts Offers
- 💰 **Price range filter** — Set minimum and maximum price
- 🔍 **Item Aspects** — Filter by category-specific aspects like Brand, Model, Color, Storage Capacity, etc.
- 🏷️ **Listing attributes** — Free returns, free shipping, deals & savings, sold items, and more
- 🍪 **Sold/Completed Items** — Support for sold and completed listings with eBay session cookie
- 📄 **Automatic pagination** — Scrape multiple pages with up to 60 results each

### 🎯 What Data Can You Extract from eBay Categories?

| Field | Description |
|-------|-------------|
| `itemId` | Unique eBay item identifier |
| `title` | Product listing title |
| `url` | Direct link to eBay listing |
| `image` | Product image URL |
| `imageHighRes` | High resolution image URL |
| `price` | Current price |
| `priceRaw` | Price as displayed (string) |
| `currency` | Price currency (USD, GBP, EUR, etc.) |
| `originalPrice` | Original price before discount |
| `caption` | Product caption |
| `discount` | Discount percentage (e.g., "33% off") |
| `condition` | Item condition (New, Used, Refurbished, etc.) |
| `isSponsored` | Whether the listing is sponsored |
| `shipping` | Shipping cost or "Free shipping" |
| `location` | Seller location |
| `sellerName` | Seller username |
| `sellerFeedbackPercentage` | Seller positive feedback percentage |
| `sellerFeedbackCount` | Total seller feedback count |
| `sellerTopRated` | Whether seller is eBay Top Rated |
| `watchers` | Number of watchers |
| `itemsSold` | Number of items sold |
| `freeReturns` | Whether free returns are available |
| `rating` | Product rating (1-5 stars) |
| `reviewCount` | Number of product reviews |
| `buyingFormat` | Buying format (Buy It Now, Auction) |
| `timeLeft` | Time remaining for auction listings |
| `bidCount` | Number of bids (auctions) |
| `isNewListing` | Whether it's a new listing |
| `isEbayRefurbished` | Whether eBay Refurbished certified |
| `epid` | eBay product ID |
| `position` | Position in search results |

### 🚀 How to Use eBay Products by Category Scraper

#### Step 1: Enter Category ID

Enter the eBay category ID you want to browse. You can find category IDs in eBay URLs:

- **Cell Phones & Smartphones**: `9355`
- **Laptops & Netbooks**: `175672`
- **Clothing, Shoes & Accessories**: `11450`
- **Video Games & Consoles**: `139971`
- **Home & Garden**: `11700`

Example URL: `https://www.ebay.com/sch/9355/i.html` → Category ID is `9355`

#### Step 2: Set Filters (Optional)

| Input | Type | Required | Default | Description |
|-------|------|----------|---------|-------------|
| `category_id` | String | ✅ Yes | `21819543` | eBay category ID (e.g., 9355 for Cell Phones) |
| `query` | String | ❌ No | `iphone` | Search keywords within the category |
| `domain` | Enum | ❌ No | `com` | eBay marketplace (com, co.uk, de, etc.) |
| `sort_by` | Enum | ❌ No | `BEST_MATCH` | Sort order for results |
| `condition` | Array | ❌ No | `[]` | Item condition filter |
| `buying_format` | Enum | ❌ No | — | Buying format filter |
| `show_only` | Array | ❌ No | `[]` | Listing attribute filters |
| `aspects` | String | ❌ No | — | JSON array of item aspects filter |
| `min_price` | Number | ❌ No | — | Minimum price filter |
| `max_price` | Number | ❌ No | — | Maximum price filter |
| `page` | Integer | ❌ No | `1` | Starting page number (1-100) |
| `maxPages` | Integer | ❌ No | `1` | Maximum pages to scrape (1-100) |
| `cookie` | String | ❌ No | — | eBay session cookie for sold/completed items |

#### Step 3: Run and Download Results

Click **Start** to run the scraper. Results are available in JSON, CSV, Excel, XML, and RSS formats.

### 📋 Example Input

```json
{
  "category_id": "21819543",
  "query": "iphone",
  "domain": "com",
  "sort_by": "BEST_MATCH",
  "condition": ["new", "refurbished"],
  "maxPages": 3
}
```

#### Using Item Aspects Filter

```json
{
  "category_id": "21819543",
  "aspects": "[{\"name\":\"Brand\",\"value\":\"Iphone\"},{\"name\":\"Storage Capacity\",\"value\":[\"128 GB\",\"256 GB\"]}]",
  "maxPages": 2
}
```

### 📋 Example Output

```json
{
	"itemId": "116370846040",
	"title": "Apple iPhone 12 Unlocked Verizon, T-Mobile, AT&T all Carriers",
	"url": "https://www.ebay.com/itm/116370846040",
	"image": "https://i.ebayimg.com/images/g/qHAAAOSwOrBnHAtQ/s-l500.webp",
	"imageHighRes": "https://i.ebayimg.com/images/g/qHAAAOSwOrBnHAtQ/s-l1600.webp",
	"price": 189.94,
	"priceRaw": "$189.94",
	"currency": "USD",
	"originalPrice": null,
	"caption": null,
	"discount": null,
	"condition": "FREE  Shipping ✈️│✅1 YEAR WARRANTY ✅ 30 Days Return",
	"isSponsored": false,
	"shipping": "Free delivery",
	"location": "United States",
	"sellerName": "nikatronics",
	"sellerFeedbackPercentage": 99.6,
	"sellerFeedbackCount": 66100,
	"sellerTopRated": true,
	"watchers": null,
	"itemsSold": 1816,
	"freeReturns": true,
	"rating": 4.5,
	"reviewCount": 95,
	"buyingFormat": "buy_it_now",
	"timeLeft": null,
	"bidCount": null,
	"isNewListing": false,
	"isEbayRefurbished": false,
	"epid": "12041705164",
	"position": 1
}
```

### 🎨 Dataset Views

| View | Description |
|------|-------------|
| 📊 **Products Overview** | Title, price, condition, seller, shipping, location, and link |
| 💰 **Pricing Details** | Original price, discount, buying format, bid count, time left |
| 🏪 **Seller Details** | Seller name, feedback, top rated status, free returns, items sold |
| ⭐ **Ratings & Reviews** | Rating, reviews, watchers, eBay refurbished status |

### 💡 Use Cases

- **Product Research** — Browse and compare products within specific eBay categories worldwide
- **Price Monitoring** — Track prices for products in a category over time
- **Dropshipping** — Discover trending products and competitive pricing within niche categories
- **E-commerce Analysis** — Analyze competitor listings, pricing strategies, and seller performance
- **Deal Hunting** — Find the best deals with discount, free shipping, and free returns filters
- **Market Research** — Study product demand, pricing trends, and seller landscape in any category
- **Auction Monitoring** — Track auction listings with bid counts and time remaining
- **Inventory Research** — Monitor sold/completed items to understand demand patterns

### 🔧 Tips for Best Results

1. **Use search keywords** — Combine category ID with search keywords for more specific and reliable results
2. **Filter by condition** — Narrow results to "new", "refurbished", or "used" items
3. **Set price range** — Use min/max price to find products in your budget
4. **Try item aspects** — Use Brand, Model, Color, and other aspect filters to refine category results
5. **Try different marketplaces** — Search across multiple eBay domains to compare prices globally
6. **Increase maxPages** — Set to 10+ for comprehensive product research
7. **Use show\_only filters** — Combine "free\_shipping" with "free\_returns" for buyer-friendly listings
8. **Use cookie for sold items** — Provide your eBay session cookie to access sold and completed listings

### 🔗 You May Also Like

| Actor | Description |
|-------|-------------|
| [eBay Search Scraper](https://apify.com/burbn/ebay-search-scraper) | Search eBay products by keyword across 20+ marketplaces. Extract prices, seller info, ratings, and more from search results. |

### 🏷️ Tags

`ebay` `ebay scraper` `ebay category` `ebay products` `ebay category scraper` `ebay api` `ebay products by category` `price comparison` `ebay crawler` `ebay extractor` `product research` `price monitoring` `dropshipping` `e-commerce` `ebay listings` `ebay data` `marketplace scraper` `online shopping` `ebay browse`

### 🎁 Get $5 Free Apify Credits

New to Apify? [Sign up using this link](https://apify.com?fpr=free-credits) and get **$5 free credits** to start scraping eBay right away! No credit card required.

### 📞 Support

For questions, feedback, or issues, please contact us through Apify or open an issue.

***

**Happy browsing eBay categories! 📂✨**

# Actor input Schema

## `category_id` (type: `string`):

eBay category ID. You can find category IDs in eBay URLs (e.g., 9355 for Cell Phones & Smartphones, 175672 for Laptops & Netbooks, 11450 for Clothing). Example: https://www.ebay.com/sch/9355/i.html → category\_id = 9355

## `query` (type: `string`):

Optional search keywords within the category. Highly recommended for more reliable and specific results (e.g., samsung galaxy, gaming laptop).

## `domain` (type: `string`):

Select the eBay domain/marketplace to search. Sets the country, language, and currency.

## `sort_by` (type: `string`):

Sort order for category results.

## `condition` (type: `array`):

Filter by item condition. Select one or more conditions.

## `buying_format` (type: `string`):

Filter by buying format.

## `show_only` (type: `array`):

Filter results by listing attributes. Select one or more. Note: 'Sold Items' and 'Completed Items' require a signed-in eBay session — provide your cookie below if needed.

## `aspects` (type: `string`):

Filter by category-specific item aspects (Brand, Model, Color, Storage Capacity, etc.). Pass a JSON array of {name, value} objects. Aspect names must match eBay's filter labels exactly. Examples: \[{"name":"Brand","value":"Samsung"}] or \[{"name":"Storage Capacity","value":\["128 GB","256 GB"]}] or \[{"name":"Brand","value":"Apple"},{"name":"Color","value":"Black"}]. Limit: up to 20 aspect entries per request.

## `min_price` (type: `number`):

Only return products with price greater than this value (in the currency of the selected marketplace).

## `max_price` (type: `number`):

Only return products with price less than this value (in the currency of the selected marketplace).

## `page` (type: `integer`):

Starting page number (each page has up to 60 results). Range: 1-100.

## `maxPages` (type: `integer`):

Maximum number of pages to scrape (each page has up to 60 results). Set to 1 for a quick test, or higher for comprehensive data.

## `cookie` (type: `string`):

Optional eBay session cookie for fetching sold/completed listings. Required for show\_only=sold\_items or completed\_items with full results (60/page + seller info). Paste the cookie header from a browser signed in to eBay. Must match the selected marketplace domain.

## Actor input object example

```json
{
  "category_id": "21819543",
  "query": "iphone",
  "domain": "com",
  "sort_by": "BEST_MATCH",
  "condition": [],
  "buying_format": "",
  "show_only": [],
  "aspects": "",
  "page": 1,
  "maxPages": 1,
  "cookie": ""
}
```

# Actor output Schema

## `overview` (type: `string`):

View all products with title, price, condition, seller, shipping, location, and link.

## `pricing` (type: `string`):

View pricing details with original price, discount, buying format, bid count, and time left.

## `sellers` (type: `string`):

View seller info with name, feedback percentage, feedback count, top rated status, and items sold.

## `ratings` (type: `string`):

View ratings, review counts, watchers, items sold, eBay refurbished status, and new listing flags.

# 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 = {
    "category_id": "21819543",
    "query": "iphone",
    "domain": "com",
    "sort_by": "BEST_MATCH",
    "buying_format": "",
    "aspects": "",
    "page": 1,
    "maxPages": 1,
    "cookie": ""
};

// Run the Actor and wait for it to finish
const run = await client.actor("burbn/ebay-products-by-category").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 = {
    "category_id": "21819543",
    "query": "iphone",
    "domain": "com",
    "sort_by": "BEST_MATCH",
    "buying_format": "",
    "aspects": "",
    "page": 1,
    "maxPages": 1,
    "cookie": "",
}

# Run the Actor and wait for it to finish
run = client.actor("burbn/ebay-products-by-category").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "category_id": "21819543",
  "query": "iphone",
  "domain": "com",
  "sort_by": "BEST_MATCH",
  "buying_format": "",
  "aspects": "",
  "page": 1,
  "maxPages": 1,
  "cookie": ""
}' |
apify call burbn/ebay-products-by-category --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,burbn/ebay-products-by-category"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/klDKg4jid3gVfkndx/builds/RqadhMxVgxmGPiadV/openapi.json
