Check prices for many listings
The lightweight way to monitor prices. Send up to 100 item numbers and get each listing's current price and state back — nothing else. In fast mode (the default) listings are answered up to 50 at a time, at roughly 5KB a listing, so checking a batch costs little more than checking one; each carries its price in US dollars, a price range for listings with variations, bids for an auction, shipping cost to the United States and whether it is still active. Exact mode reads each listing on its own and adds the seller's own currency, availability and the exact quantity. In both modes every listing you ask for comes back: one that has ended is reported as ended with its final price, one that no longer exists as not_found. These are current asking prices; what a listing eventually sold for is shown by eBay to signed-in members only and is not available. Billing: each product that gets a definitive result — a price, or a status such as out of stock, ended, unavailable or not found — counts as one request, so pricing 20 products bills 20. Products that fail on our side (blocked, timed out, not reached) are not billed, and duplicates count once.
/price-check Listings https://api.fetchlayer.dev/ebay/price-check Headers
Authorization string required Bearer token — your FetchLayer API key.
Parameters
listings string[] required 1-100 listings, each an eBay item number (for example 334140575100), or any eBay listing URL. Duplicates are answered once.
mode string optional fast answers up to 50 listings together, prices in US dollars. exact reads each listing individually and adds listingPrice (seller's currency), availability and quantityAvailable. (default: fast)
format string optional json or markdown. Markdown returns the same result rendered for a model to read. (default: json)
timeoutMs number optional Time limit for each eBay page read, in milliseconds (max 120000).
Response Fields
price-check
Check prices for many listings
pagesScraped number Products that received a definitive result. Each counts as one request against your plan; failed products and duplicates do not.
resultType string Which shape this response is: search-listings, listing-details, price-check, seller-feedback or product-reviews.
requestedUrl string The eBay page this result corresponds to.
scrapedAt string ISO 8601 timestamp of when the data was read.
transport string The upstream source. Always "ebay".
notes string[] Caveats about this particular result — converted prices, a walk that stopped early, a continuation that may repeat listings. Read it on every call: it is where an incomplete answer announces itself.
mode string fast or exact.
items object[] One entry per distinct listing asked for, never fewer.
items[].itemId string Item number, with url alongside it.
items[].status string active, ended or not_found.
items[].price object Price as { amount, currency } in US dollars, in both modes — so a series of checks stays comparable.
items[].priceMax object Upper bound of a price range (fast mode), or null.
items[].listingPrice object Price in the seller's own currency. Exact mode; in fast mode only for a listing that was read on its own.
items[].buyingFormat string fixed_price or auction, with bidCount alongside it.
items[].availability string in_stock or out_of_stock. Exact mode, or a listing read on its own.
items[].quantityAvailable number Exact quantity where eBay states one. Exact mode, or a listing read on its own.
items[].shippingCost object Shipping cost to the United States, or null.
items[].freeShipping boolean Whether shipping is free. Null when the listing states neither, for example "May not ship to United States".
itemCount number Length of items, with activeCount, endedCount and notFoundCount alongside it.
Request
curl -X POST "https://api.fetchlayer.dev/ebay/price-check" \
-H "Authorization: Bearer ss-your-key" \
-H "Content-Type: application/json" \
-d '{"listings":["334140575100","326634081605","335571739480"]}'Response
{
"resultType": "price-check",
"transport": "ebay",
"notes": [
"Prices are in US dollars as eBay shows them to a US buyer; a listing priced in another currency is converted at eBay's current rate. Use mode exact for each listing's own currency, availability and the quantity available."
],
"mode": "fast",
"items": [
{
"itemId": "334140575100",
"url": "https://www.ebay.com/itm/334140575100",
"status": "active",
"price": {
"amount": 11.99,
"currency": "USD"
},
"priceMax": null,
"listingPrice": null,
"buyingFormat": "fixed_price",
"bidCount": null,
"availability": null,
"quantityAvailable": null,
"shippingCost": null,
"freeShipping": true
},
{
"itemId": "326634081605",
"url": "https://www.ebay.com/itm/326634081605",
"status": "active",
"price": {
"amount": 16.99,
"currency": "USD"
},
"priceMax": null,
"listingPrice": null,
"buyingFormat": "fixed_price",
"bidCount": null,
"availability": null,
"quantityAvailable": null,
"shippingCost": null,
"freeShipping": true
},
{
"itemId": "335571739480",
"url": "https://www.ebay.com/itm/335571739480",
"status": "active",
"price": {
"amount": 35.99,
"currency": "USD"
},
"priceMax": null,
"listingPrice": null,
"buyingFormat": "fixed_price",
"bidCount": null,
"availability": null,
"quantityAvailable": null,
"shippingCost": null,
"freeShipping": true
}
],
"itemCount": 3,
"activeCount": 3,
"endedCount": 0,
"notFoundCount": 0
}