eBay Sold Prices — Fast & Lightweight avatar

eBay Sold Prices — Fast & Lightweight

Pricing

from $0.05 / actor start

Go to Apify Store
eBay Sold Prices — Fast & Lightweight

eBay Sold Prices — Fast & Lightweight

Get real eBay sold prices in under 10 seconds. Returns up to 30 recent sales with avg, median, and recommended price. Single HTTP request, no browser, 128MB memory — the fastest and cheapest way to get sold comps.

Pricing

from $0.05 / actor start

Rating

0.0

(0)

Developer

James Garrison

James Garrison

Maintained by Community

Actor stats

1

Bookmarked

4

Total users

3

Monthly active users

4 days ago

Last modified

Share

eBay Sold Listings — Lite & Fast

30 real sold prices. Under 10 seconds. The cheapest eBay sold data on the market.

No browser. No bloat. No 200-item runs you don't need.
Built for resellers, collectors, and apps that need fast, reliable sold comps.


💰 Built for New Users & Developers

This is a Lite actor — designed to be the most affordable way to get eBay sold data on the platform.

At ~$0.05 per run, the free $5 credit every new Apify user receives gives you 100 runs before spending a cent. That's enough to build, test, and ship a full integration without touching your wallet.

This actor is purpose-built to do more with less — 128 MB memory, no browser, single-page fetch — so you get fast, accurate sold comps at a fraction of the cost.


📦 What You Get Per Run

Summary Record

{
"type": "summary",
"searchQuery": "Meowth Phantasmal Flame PSA 10",
"totalSalesFound": 28,
"recommendedPrice": 87.35,
"avgSoldPrice": 91.20,
"medianSoldPrice": 90.05,
"priceRange": {
"low": 62.00,
"high": 134.00,
"p10": 71.50,
"p90": 118.00
},
"confidence": "high",
"confidenceNote": "Based on 28 sold listings",
"currency": "USD"
}

Item Records

{
"type": "item",
"itemId": "296384729301",
"title": "Meowth Phantasmal Flame PSA 10 GEM MINT",
"soldPrice": 94.99,
"currency": "USD",
"saleEndDate": "2026-03-21",
"condition": "Graded",
"shippingCost": 0,
"imageUrl": "https://i.ebayimg.com/...",
"itemUrl": "https://www.ebay.com/itm/296384729301"
}

⚙️ Input Parameters

ParameterTypeDefaultDescription
querystring(required)Search query, e.g. "Nike Air Jordan 1 Bred size 10"
maxItemsinteger30Number of results (5–30)
soldWithinDaysinteger30Only return sales within this many days (1–90)
minPricenumberFilter by minimum sale price
maxPricenumberFilter by maximum sale price
ebaySitestringebay.comeBay site to scrape (e.g. ebay.co.uk, ebay.de)

Example Inputs

Sneakers

{ "query": "Nike Air Jordan 1 Retro High Bred size 10", "maxItems": 30, "soldWithinDays": 30 }

Electronics

{ "query": "iPhone 15 Pro 256GB unlocked", "maxItems": 30, "soldWithinDays": 14 }

Collectibles

{ "query": "Hot Wheels RLC Deora III", "maxItems": 30, "soldWithinDays": 60 }

Clothing

{ "query": "Lululemon Align Leggings size 6 black", "maxItems": 30, "soldWithinDays": 30 }

Home & Kitchen

{ "query": "Ninja Air Fryer AF101 4 quart", "maxItems": 30, "soldWithinDays": 30 }

Trading Cards

{
"query": "Charizard VMAX PSA 10",
"maxItems": 30,
"soldWithinDays": 30,
"minPrice": 50,
"maxPrice": 500,
"ebaySite": "ebay.com"
}

💡 Tip: The more specific your query, the better your comps. Include size, model number, condition, or grade where relevant.


🔌 API Integration

Run and get results in one call

curl -X POST "https://api.apify.com/v2/acts/YOUR_USERNAME~ebay-sold-lite/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"query": "Stanley Quencher 40oz Tumbler", "maxItems": 30}'

Python

import httpx
response = httpx.post(
"https://api.apify.com/v2/acts/YOUR_USERNAME~ebay-sold-lite/run-sync-get-dataset-items",
params={"token": "YOUR_APIFY_TOKEN"},
json={"query": "Stanley Quencher 40oz Tumbler", "maxItems": 30}
)
data = response.json()
summary = next(item for item in data if item["type"] == "summary")
print(f"Recommended price: ${summary['recommendedPrice']}")

Node.js

const response = await fetch(
'https://api.apify.com/v2/acts/YOUR_USERNAME~ebay-sold-lite/run-sync-get-dataset-items?token=YOUR_TOKEN',
{
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ query: 'Stanley Quencher 40oz Tumbler', maxItems: 30 })
}
);
const data = await response.json();
const summary = data.find(item => item.type === 'summary');
console.log(`Recommended: $${summary.recommendedPrice}`);

❓ Why 30 Results?

The sweet spot for resale pricing research is 20–30 comps. Beyond that, older sales dilute current market value rather than improve accuracy. This actor is intentionally scoped to be fast, cheap, and accurate — not large.

If you need broader coverage, use soldWithinDays: 90 to widen the date window instead of fetching more items.


⚠️ Limitations

  • Returns a maximum of 30 results per run (single page)
  • Does not support auction-only or Buy It Now filters
  • Results depend on eBay search relevance — use specific queries for best accuracy
  • eBay may occasionally return a CAPTCHA page; the actor will retry automatically

🛠 Local Development

git clone https://github.com/YOUR_USERNAME/ebay-sold-lite
cd ebay-sold-lite
npm install
apify run

Default test query is "Meowth Phantasmal Flame". Edit .actor/input_schema.json or pass a custom INPUT via the Apify CLI to test different queries.