eBay Product API
Fetch one eBay listing by URL and get the full offer record: price, condition, shipping, item location, seller feedback, quantity, watchers, and live auction state (bid count and end time).
- Category shopRequests / mo 1Routing 1 lane · no failover
Pricing
One price, in dollars
pay per request · no subscription · fallbacks added as the catalog growsTry it
Make your first request
run it free, no key · same shape for every API{
"data": {
"items": [
{
"availability": "example",
"bidCount": 12500,
"brand": "Acme Inc",
"condition": "example",
"currency": "USD",
"endsUtc": 12.5,
"freeShipping": true,
"image": "https://example.com/image.jpg",
"itemId": "a1b2c3d4",
"itemLocation": "example",
"listingType": "general",
"model": "example",
"mpn": "example",
"price": 19.99,
"quantityAvailable": 42,
"quantitySold": 42,
"returnsAccepted": true,
"sellerFeedbackCount": 12500,
"sellerFeedbackPercent": 12.5,
"sellerName": "Example title",
"sellerUrl": "https://example.com/page",
"shippingCost": 19.99,
"title": "Example title",
"url": "https://example.com/page",
"watchers": 42
}
]
},
"found": true
}interface EbayProductResponse {
data: {
items: {
availability?: string;
bidCount?: number;
brand?: string;
condition?: string;
currency?: string;
endsUtc?: number;
freeShipping?: boolean;
image?: string;
itemId: string;
itemLocation?: string;
listingType?: string;
model?: string;
mpn?: string;
price?: number;
quantityAvailable?: number;
quantitySold?: number;
returnsAccepted?: boolean;
sellerFeedbackCount?: number;
sellerFeedbackPercent?: number;
sellerName?: string;
sellerUrl?: string;
shippingCost?: number;
title: string;
url: string;
watchers?: number;
}[];
} | null;
found: boolean;
}Full parameter and response reference - every field, type, and example for this endpoint.
Reference
Request, response, and price
Last verified 2026-08-23 · uptime and latency measured over 30dcurl -X POST https://api.getanyapi.com/v1/run/ebay.product \
-H "Authorization: Bearer $ANYAPI_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.ebay.com/itm/133576802017"}'| Field | Type | Example value |
|---|---|---|
| Request body | ||
| url | string | "https://www.ebay.com/itm/133576802017"Full eBay listing URL (e.g. https://www.ebay.com/itm/133576802017). The marketplace is taken from the host, so an ebay.co.uk or ebay.de URL returns that site's listing and currency. Item ids come back on every row of ebay.search and ebay.sold_listings. |
| Response | ||
| data | object | Listing wrapper, or null when the URL resolved to no listing. |
| data.items | object[] | Listing detail record (one element, for the requested listing URL). Populated whenever the provider has data for the entity. |
| data.items[].availability | string | Stock state as eBay reports it (e.g. InStock, OutOfStock). |
| data.items[].bidCount | integer | Bids placed so far, for auction listings. |
| data.items[].brand | string | Brand as listed, when the seller filled it in. |
| data.items[].condition | string | Item condition as listed (e.g. New, Used). Populated whenever the provider has data for the entity. |
| data.items[].currency | string | ISO currency code of the price (e.g. USD, GBP). |
| data.items[].endsUtc | number | UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds. |
| data.items[].freeShipping | boolean | True when the listing ships free. |
| data.items[].image | string | Primary listing image URL. Populated whenever the provider has data for the entity. |
| data.items[].itemId | string | eBay item identifier. Populated whenever the provider has data for the entity. |
| data.items[].itemLocation | string | Where the item ships from, as displayed (e.g. Brooklyn, New York, United States). |
| data.items[].listingType | string | Sale format (e.g. Buy It Now, Auction). |
| data.items[].model | string | Model as listed, when the seller filled it in. |
| data.items[].mpn | string | Manufacturer part number as listed. eBay sellers frequently set this to the literal "Does Not Apply"; ebay.product_full returns the full item-specifics table instead. |
| data.items[].price | number | Current asking price, or the current bid on a live auction, in the site currency. Populated whenever the provider has data for the entity. |
| data.items[].quantityAvailable | integer | Units the seller still has available, when the listing shows a quantity. |
| data.items[].quantitySold | integer | Units sold on this listing, when eBay shows a sold count. |
| data.items[].returnsAccepted | boolean | True when the seller accepts returns. |
| data.items[].sellerFeedbackCount | integer | Seller's lifetime feedback count. |
| data.items[].sellerFeedbackPercent | number | Seller's positive-feedback percentage. |
| data.items[].sellerName | string | Seller's eBay username, or the store's display name when the seller runs an eBay Store. Populated whenever the provider has data for the entity. |
| data.items[].sellerUrl | string | Seller's eBay store or listings page. |
| data.items[].shippingCost | number | Shipping cost to the default destination as a numeric amount; absent when eBay quotes no flat cost. |
| data.items[].title | string | Listing title as it appears on eBay. Populated whenever the provider has data for the entity. |
| data.items[].url | string | Canonical listing URL (tracking query params stripped). Populated whenever the provider has data for the entity. |
| data.items[].watchers | integer | Number of shoppers watching the listing, when eBay shows it. |
| found | boolean | True when the listing was found. |
| Price | ||
| Price per request | USD | $0.0009 |
| Price /1k req | USD | $0.90 |
FAQ
About the eBay Product API
The AnyAPI eBay Product API returns eBay product data as normalized JSON from one POST call to /v1/run/ebay.product. Fetch one eBay listing by URL and get the full offer record: price, condition, shipping, item location, seller feedback, quantity, watchers, and live auction state (bid count and end time). AnyAPI returns one normalized schema whichever source serves it. It costs from $0.90 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 100.0% of eBay product calls through AnyAPI succeeded, with a median response time of 3.2 seconds across 1 measured calls.
More to call
Other eBay endpoints
Get started
Two ways to start on AnyAPI
Humans fund a USD wallet and pay per request. Agents point a coding agent at one URL and onboard themselves.