eBay API

eBay Sold listings API

Retrieve recently sold eBay listings for any keyword with optional price-range, condition, and sort filters (sold price, sale date, condition, seller, item details); ideal for pricing research.

POST/v1/run/ebay.sold_listings
Uptime
91.67%
30d · 108 calls
Requests
108
30d · weekly, last 12 wks
Response
11.4s
median · 30d

Call it

Make your first request

import os, requests

res = requests.post(
    "https://api.getanyapi.com/v1/run/ebay.sold_listings",
    headers={"Authorization": f"Bearer {os.environ['ANYAPI_KEY']}"},
    json={
        "query": ""
    },
)
print(res.json())
Open in
Get a free key
Sample response
{
  "data": {
    "items": [
      {
        "bidCount": 12500,
        "condition": "example",
        "epid": "a1b2c3d4",
        "image": "https://example.com/image.jpg",
        "images": [
          "https://example.com/image.jpg"
        ],
        "itemId": "a1b2c3d4",
        "listingType": "general",
        "sellerFeedbackCount": 12500,
        "sellerFeedbackPercent": 12.5,
        "sellerUsername": "alex_rivera",
        "shippingCost": "19.99",
        "soldCurrency": "USD",
        "soldPrice": 19.99,
        "soldUtc": 12.5,
        "title": "Example title",
        "url": "https://example.com/page"
      }
    ]
  },
  "found": true
}
Response interface
interface EbaySoldListingsResponse {
  data: {
    items: {
      bidCount?: number;
      condition?: string;
      epid?: string;
      image?: string;
      images?: string[];
      itemId: string;
      listingType?: string;
      sellerFeedbackCount?: number;
      sellerFeedbackPercent?: number;
      sellerUsername?: string;
      shippingCost?: string;
      soldCurrency?: string;
      soldPrice?: number;
      soldUtc?: number;
      title: string;
      url: string;
    }[];
  } | null;
  found: boolean;
}

Full parameter and response reference - every field, type, and example for this endpoint.

Reference

Request, response, and price

Last verified 2026-09-16 · uptime and latency measured over 30d
POST /v1/run/ebay.sold_listings
curl -X POST https://api.getanyapi.com/v1/run/ebay.sold_listings \
  -H "Authorization: Bearer $ANYAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":10,"query":"iphone 13 pro","sort":"ended_recently"}'
FieldTypeExample value
Request body
querystring"iphone 13 pro"Search keyword for sold items (e.g. iphone 13 pro).
conditionenumItem condition filter (e.g. used).
freeShippingbooleanOnly include listings that sold with free shipping.
limitinteger10Maximum number of results to return (1-25, default 25). You are billed per result returned, so a lower limit costs less.
listingTypeenumRestrict to a listing format; omit or use all for both (e.g. auction for auction sales only).
maxPricenumberOptional maximum sold price in the site currency (e.g. 500).
minPricenumberOptional minimum sold price in the site currency (e.g. 200).
returnsAcceptedbooleanOnly include listings from sellers who accept returns.
sellerstringRestrict to sold listings from one seller username (e.g. rainierconsignment).
siteenumeBay country site to search. Sold-listing coverage is currently US only.
sortenum"ended_recently"Result sort order; omit for eBay's default best-match order (e.g. price_high sorts by highest sold price first).
Response
dataobject
data.itemsobject[]Sold listing records: title, sold price, sale date, condition, seller, and item URL. Populated whenever the provider has data for the entity.
data.items[].bidCountintegerNumber of bids the listing received, for auction sales.
data.items[].conditionstringItem condition as listed (e.g. Pre-Owned).
data.items[].epidstringeBay catalog product identifier (ePID), when the listing is matched to a catalog product.
data.items[].imagestringPrimary listing image URL. Populated whenever the provider has data for the entity.
data.items[].imagesstring[]All listing image URLs, primary first.
data.items[].itemIdstringeBay item identifier. Populated whenever the provider has data for the entity.
data.items[].listingTypestringSale format (e.g. Fixed price, Auction).
data.items[].sellerFeedbackCountintegerSeller's lifetime feedback count, when available.
data.items[].sellerFeedbackPercentnumberSeller's positive-feedback percentage, when available.
data.items[].sellerUsernamestringSeller's eBay username, when available.
data.items[].shippingCoststringShipping cost as displayed on the listing (e.g. "Free delivery", "$5.55 delivery").
data.items[].soldCurrencystringISO currency code of the sold price (e.g. USD).
data.items[].soldPricenumberFinal sold price in the site currency.
data.items[].soldUtcnumberUTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds.
data.items[].titlestringListing title as it appeared on eBay. Populated whenever the provider has data for the entity.
data.items[].urlstringCanonical listing URL. Populated whenever the provider has data for the entity.
foundboolean
Price
Price per request (ceiling)USD$0.088
Price /1k resultsUSD$3.52

FAQ

About the eBay Sold listings API

The AnyAPI eBay Sold listings API returns eBay sold listings data as normalized JSON from one POST call to /v1/run/ebay.sold_listings. Retrieve recently sold eBay listings for any keyword with optional price-range, condition, and sort filters (sold price, sale date, condition, seller, item details); ideal for pricing research. AnyAPI returns one normalized schema whichever source serves it. It costs $3.52 per 1,000 results, and never more than $0.088 for a single request, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 91.7% of eBay sold listings calls through AnyAPI succeeded, with a median response time of 11.4 seconds across 108 measured calls.

It costs $3.52 per 1,000 results, and never more than $0.088 for a single request, in US dollars with no subscription and no monthly minimum. You fund one USD wallet, each call draws it down, and a failed request costs $0.

Retrieve recently sold eBay listings for any keyword with optional price-range, condition, and sort filters (sold price, sale date, condition, seller, item details); ideal for pricing research. The response is normalized JSON with the same envelope every AnyAPI endpoint returns, so parsing a second endpoint is a change of URL and nothing else.

Over the last 30 days, 91.7% of eBay sold listings calls through AnyAPI succeeded, with a median response time of 11.4 seconds across 108 measured calls. These are AnyAPI's own measurements of traffic through the gateway, recomputed continuously, not a published service-level target.