# eBay Commerce & Promotions API

Search eBay products and observe sponsored, banner, and merchandising placements.

- Platform ID: `ebay`
- Capabilities: 7
- Execute endpoint: `POST https://data.upscrape.com/execute`
- OpenAPI: https://upscrape.com/scrapers/ebay/openapi.json

## Capabilities

| Endpoint | Capability ID | Cost | Description |
| --- | --- | --- | --- |
| [List categories](https://docs.upscrape.com/docs/platforms/ebay/ebay.categories.list) | `ebay.categories.list` | 1 credit per request | Return eBay's public category hierarchy. |
| [Deferred item promotions](https://docs.upscrape.com/docs/platforms/ebay/ebay.item.deferred_promotions) | `ebay.item.deferred_promotions` | 1 credit per request | Discover and return deferred item-page promotion fragments from eBay's SSE surface. |
| [Item promotions](https://docs.upscrape.com/docs/platforms/ebay/ebay.item.promotions) | `ebay.item.promotions` | 1 credit per request | Return typed merchandising modules shown around an eBay item. |
| [Get item](https://docs.upscrape.com/docs/platforms/ebay/ebay.product.detail.get) | `ebay.product.detail.get` | 1 credit per request | Return current eBay item detail from JSON-LD with page supplements. |
| [Search listings](https://docs.upscrape.com/docs/platforms/ebay/ebay.products.search) | `ebay.products.search` | 1 credit per request | Return filtered eBay listings with display fields and sponsored disclosure. |
| [Search placements](https://docs.upscrape.com/docs/platforms/ebay/ebay.search.placements) | `ebay.search.placements` | 1 credit per request | Return eBay's ordered search feed with sponsored disclosure from embedded state. |
| [Search promotions](https://docs.upscrape.com/docs/platforms/ebay/ebay.search.promotions) | `ebay.search.promotions` | 1 credit per request | Return sponsored search placements and RTM banner inventory. |

## Common uses

- Price and assortment monitoring
- Sponsored-placement monitoring
- Product research
- Promotion inventory analysis

## Integration contract

All capabilities use the shared `POST /execute` envelope. A `200` response completed inline; a `202` response must be polled through `GET /jobs/{id}`.

See [authentication](https://docs.upscrape.com/docs/api/authentication), [jobs and results](https://docs.upscrape.com/docs/api/jobs), and [errors and retries](https://docs.upscrape.com/docs/api/errors).
