# eBay Product details API (ebay.product_detail)

- Canonical page: https://everyinfra.com/en/ebay-api/product_detail
- Endpoint: POST /api/v1/social with {"platform": "ebay", "action": "product_detail", "params": {...}}
- Price: $0.000958 per call ($0.96 per 1,000 requests); failed and empty results are not charged
- Returns: single object
- Mode: sync; add "mode": "async" for slow tasks

## Health

- Live health (24h percent, hourly and daily trends): https://api.everyinfra.com/api/v1/social/availability?platform=ebay&action=product_detail

## Parameters

| name | type | required | default | description |
|---|---|---|---|---|
| url | not declared | yes | not declared | One eBay listing: its link, such as https://www.ebay.com/itm/133576802017 (tracking parameters and the title part are dropped), or the numeric item ID alone, which is read on ebay.com. Links from other eBay sites are read on that site. Store pages, search pages and lists are rejected before the call runs. |

## Response fields (items in `results`)

| field | meaning |
|---|---|
| item_id | platform-native meaning |
| title | Title. null when the platform has no titles (for example text-only posts). |
| subtitle | Subtitle the seller wrote (product_detail), often a promotional line; absent when there is none. |
| url | Link to the record on the platform. |
| price | Price as a number without a currency symbol; see currency. |
| currency | Currency code of the price (for example CNY, USD). If price is present but currency is null, do not assume a currency. |
| condition | platform-native meaning |
| availability | Stock status as eBay states it (product_detail), such as InStock or OutOfStock. |
| listing_type | platform-native meaning |
| bid_count | Bids placed so far (product_detail), on auctions only. |
| best_offer_enabled | Whether buyers can make the seller an offer (Best Offer) (product_detail). |
| ends_at | When the auction or timed listing ends (product_detail), ISO 8601 in UTC; absent for fixed-price listings without an end time. |
| quantity_available | Units still available (product_detail); absent when the seller does not show it. |
| quantity_sold | Units sold on this listing (product_detail); absent when not shown. |
| watchers | People watching the listing (product_detail); absent when eBay does not show it. |
| brand | platform-native meaning |
| model | platform-native meaning |
| mpn | Manufacturer part number (product_detail). |
| gtin | Barcode: GTIN, UPC or EAN (product_detail). |
| product_id | eBay catalog product ID (product_detail); absent when the listing shows none. |
| categories | Category path from broad to narrow (product_detail). |
| image_url | Image link. Capabilities with several images may return an image_urls array. |
| images | Array of image links in the platform's display order; absent when there are no images. |
| item_location | Where the item ships from, as eBay shows it (product_detail). |
| shipping_price | platform-native meaning |
| free_shipping | Whether shipping is free (product_detail). |
| returns_accepted | Whether the seller accepts returns (product_detail). |
| seller | platform-native meaning |
| seller_url | Link to the seller's store page (product_detail). |
| seller_feedback_score | platform-native meaning |
| seller_positive_percent | platform-native meaning |
| updated_at | When this listing record was last updated (product_detail), ISO 8601 in UTC. |
| platform | Source platform identifier, the same as platform in the request (for example xiaohongshu, tiktok). |

## Example

```bash
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
  -H "Authorization: Bearer $EVERYINFRA_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "platform": "ebay",
  "action": "product_detail",
  "params": {
    "url": "https://www.ebay.com/itm/133576802017"
  }
}'
```

```python
import os
import requests

response = requests.post(
    "https://api.everyinfra.com/api/v1/social",
    headers={"Authorization": f"Bearer {os.environ['EVERYINFRA_API_KEY']}"},
    json={
        "platform": "ebay",
        "action": "product_detail",
        "params": {
            "url": "https://www.ebay.com/itm/133576802017",
        },
    },
    timeout=120,
)
print(response.status_code)
print(response.json())
```

## Response example

No real sample for these example parameters yet: structure only, every value is a placeholder (…).

```text
{
  "id": "req_…",
  "platform": "ebay",
  "action": "product_detail",
  "results": {
    "item_id": …,
    "title": …,
    "subtitle": …,
    "url": …,
    "price": …,
    "currency": …,
    "condition": …,
    "availability": …,
    "listing_type": …,
    "bid_count": …,
    "best_offer_enabled": …,
    "ends_at": …,
    "quantity_available": …,
    "quantity_sold": …,
    "watchers": …,
    "brand": …,
    "model": …,
    "mpn": …,
    "gtin": …,
    "product_id": …,
    "categories": …,
    "image_url": …,
    "images": …,
    "item_location": …,
    "shipping_price": …,
    "free_shipping": …,
    "returns_accepted": …,
    "seller": …,
    "seller_url": …,
    "seller_feedback_score": …,
    "seller_positive_percent": …,
    "updated_at": …,
    "platform": …
  },
  "billing": {
    "charged": …,
    "charged_usd": …,
    "balance_after_usd": …,
    …
  },
  "quota": { … }
}
```

## Also

- Capability catalog (no key): https://api.everyinfra.com/api/v1/social/catalog?platform=ebay
- OpenAPI: https://everyinfra.com/openapi.json · Agents guide: https://everyinfra.com/agents.md
