eBay sold comps,
in one API call.

eBay sold comps as JSON. One GET returns what an item actually sold for: the sale price, date, condition and shipping of every match. Real sales, not asking prices.

Try

Coming from SoldComps? The same search, and your code changes in minutes.

Exampleiphone 15 pro 256gbrecorded Nov 10
TitleSold forDate
Apple iPhone 15 Pro Max 256GB Black Wi‑Fi Front Camera MU663LL/A$575.00Nov 10
Apple iPhone 15 Pro T-Mobile 256GB$426.00Nov 10
Apple iPhone 15 Pro Max 256GB Unlocked - Cracked Rear$439.99Nov 10
Apple iPhone 15 pro 256GB Black (Unlocked)$383.00Nov 10
Apple iPhone 15 Pro Max 256GB Black Unlocked DOES NOT POWER O$350.00Nov 10
Apple iPhone 15 Pro 256GB Bad Face ID/Non OEM Screen$320.00Nov 10
Median sold $400.00Range $320 – $575

Run a sold comps search.

Live against the API, on our key. What comes back is exactly the JSON your code will get.

Endpoint
Marketplace
Sold between
Category
More filters

1 credit for up to 100 results.

The response will appear here

Type a search, or pick a category alone for every sale in it, and press ↵. You'll get back the exact JSON the API returns: up to 100 sold listings per credit.

Try
Half a billion
sold listings to draw comps from, with more arriving minutes after each sale
100
sold comps for one credit, up to 2,000 in one response, newest first
90+ days
of sold prices, kept past the window where eBay's own sold search ends
US · UK
ebay.com in dollars and ebay.co.uk in pounds, picked per request

The response

What a sold comp carries.

A comp is a sale of the same item in the same condition. Every result of a sold comps search is one sale, and the same call in curl, Python or Node returns them to your code.

  • sale_priceWhat the item sold for, with its currency. The number a comp is for.
  • date_soldWhen it sold. Results are newest first, so the first comps are the latest sales.
  • conditionnew, used, parts or other, and eBay's own wording beside it. Filter on it to compare like with like.
  • shipping_priceWhat the buyer paid for shipping, apart from the price.
  • buying_formatAuction, Buy It Now or Best Offer, so a bidding war and a fixed price are told apart.
  • item_idThe eBay item. GET /item opens it in full: item specifics, images, seller, description.
Price an item from its sold comps →
sold comps for one item
curl "https://api.trawl.dev/ebay/v1/sold?query=iphone+15+pro+256gb&condition=used&exclude=max,case,cracked&max_pages=1" \
  -H "x-api-key: $TRAWL_API_KEY"

Switching

Coming from SoldComps?

The search is the same shape: a keyword, one eBay site, the sold listings back as JSON. The key goes in the x-api-key header, and these are the names that change. A free account has 250 credits a month and needs no card.

SoldCompsTrawl
keywordqueryEvery word must be in the title.
ebaySitesiteEBAY_US or EBAY_GB.
categoryIdcategoryA category alone, with no query, is every sale in it.
minPrice, maxPricemin_price, max_priceIn the marketplace's currency.
itemConditionconditionnew, used, parts or other.
soldAfter, soldBeforedate_from, date_toOver recorded sales, past 90 days.
aspectFilterattrAn item specific, such as a grade or a size.
minus wordsexcludeA list of words a title must not have.
count, pagemax_pages100 comps a page, up to 20 pages in one response.

FAQ.

Anything else is in the docs, or write to us and a human replies within a business day.

Sold comps are comparable sold prices: what the same item, in the same condition, actually sold for. Resellers, card and sneaker traders and pricing tools use eBay sold comps to price an item from real sales, not from what sellers are asking.

Yes. GET /ebay/v1/sold is a keyword search over completed eBay sales. Each result is one comp: the title, the sale price, the sale date, the condition, the shipping and the item id, as JSON. eBay's own APIs search live listings only.

The eBay sold comps API: comps for one item in one call

Yes. The playground on this page runs against the live API: ten free credits a month per visitor, no account and no key. A credit is a page of up to 100 comps.

A free account has 250 credits a month and needs no card. A credit is a page of up to 100 comps, a search that finds nothing costs nothing, and paid plans are monthly.

Pricing

eBay's sold search shows about 90 days. Trawl keeps the sales past that window, and date_from and date_to pick the period, so last year's comps for the same item are one more call.

eBay sold listings history beyond 90 days

Sort the sale prices and take the median, the price in the middle. The middle half of the prices is the range most sales fall in. Exclude the words that mark a different item, and keep one condition, so every comp is the same thing.

Price any item from its sold comps, one script

The search is the same shape: a keyword, one eBay site, the sold listings back as JSON. Trawl answers from recorded sales with history past 90 days and up to 2,000 results in one response, on ebay.com and ebay.co.uk. The comparison page sets the two side by side.

Trawl vs the SoldComps API

The first 250 credits each month are on us.

$ curl "https://api.trawl.dev/ebay/v1/sold?query=iphone+13+pro" \
    -H "x-api-key: $TRAWL_KEY"
Get your API keyNo card. Your key in under a minute.