# Bulk eBay Sold Listings API (2026): Thousands of Keywords a Day | CompSniper

> Bulk eBay sold listings API: submit up to 100 keywords per job, stream 20 at a time with CSV export, or price 100 trading cards per batch. Up to 240 sold listings and a median per keyword, plans up to 500,000 requests a month, failed keywords never charged.

Source: https://compsniper.com/bulk-ebay-sold-listings-api

---

100 keywords per job, failed keywords free

# Bulk eBay sold listings API: thousands of keywords a day.

Short answer: there are two ways to pull eBay sold data for thousands of keywords. eBay's own Marketplace Insights API, if eBay approves you. Otherwise CompSniper: submit up to 100 keywords per job to POST /v1/scrape/jobs and poll for the results, stream up to 20 keywords with CSV export through POST /v1/bulk-search, or price 100 trading cards per Card Batch job. Each keyword returns up to 240 sold listings with its own median and range, plans go up to 500,000 requests a month, and failed keywords are never charged.

[Get a free API key](https://compsniper.com/signup)[Read the documentation](https://compsniper.com/docs/rate-limits)

Reviewed by [Marc Andrew](https://compsniper.com/about), owner of CompSniper. Updated November 1, 2026.

```
curl --fail-with-body -X POST "https://api.compsniper.com/v1/scrape/jobs" \
  -H "Authorization: Bearer $COMPSNIPER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"queries": ["iphone 15 pro 256gb", "rtx 4090 founders edition", "shure sm7b"],
       "options": {"count": 240}}'
# -> { "jobId": "abc123", "status": "queued", "resultsUrl": "/v1/scrape/jobs/abc123" }

curl --fail-with-body "https://api.compsniper.com/v1/scrape/jobs/abc123" \
  -H "Authorization: Bearer $COMPSNIPER_API_KEY"
```

Endpoint

POST /v1/scrape/jobs + POST /v1/bulk-search

Results per page

Up to 240 sold listings per keyword, 100 keywords per job

Coverage

eBay US, UK, DE, FR, IT, ES, CA, AU

What the API provides

## Marketplace evidence without building another scraper

### Paced for you

Jobs run at a rate eBay accepts, so a run of hundreds of keywords finishes without the 429 and 503 errors a parallel fan-out produces.

### One summary per keyword

Every keyword is searched on its own and returns its own median, p25, p75 and range, so different products and variants never mix.

### Failed keywords are free

Only successful keywords count against your quota or credits. A keyword that fails is reported in the results and not charged.

Request filters

## Start with a keyword, then narrow the page

Authentication uses the same CompSniper API key as every other endpoint. No eBay developer account or approval is required.

| Parameter | Accepted values | Default |
| --- | --- | --- |
| queries (jobs) | 1 to 100 keywords per job | Required |
| keywords (bulk search) | 1 to 20 unique keywords per stream | Required |
| options.count | 1 to 240 sold listings per keyword | 240 |
| options.ebaySite | ebay.com, ebay.co.uk, ebay.de and 5 more | ebay.com |
| options.relevance | false for eBay's results exactly as listed | true (AI cleanup) |
| Idempotency-Key header | Replay a finished stream without new searches | None |

Response

## Stable JSON with native fields

Every successful sold page includes a deterministic median, average, p25 to p75 range, and sample size calculated from the returned prices.

Response

```
{
  "jobId": "abc123",
  "status": "done",
  "totalQueries": 3,
  "processedQueries": 3,
  "succeededQueries": 3,
  "failedQueries": 0,
  "results": [
    { "keyword": "shure sm7b", "ok": true, "totalItems": 240,
      "summary": { "median": 289.0, "p25": 265.0, "p75": 310.0, "currency": "USD" } }
  ]
}
```

Returned fields

## The data needed for pricing workflows

- Up to 240 sold listings per keyword
- Sold price, shipping, sale date, condition and seller
- Median, p25, p75, mean, min and max per keyword
- Real accepted Best Offer prices with bestOfferPrice=true
- Per-keyword success or failure with the error code
- Combined and per-keyword CSV for streaming runs
- Card Batch summaries for up to 100 cards per job
- Remaining quota and credits after each keyword

[Read the bulk search docs](https://compsniper.com/docs/bulk-search)[Use the dashboard](https://compsniper.com/dashboard/marketplaces)

Important limitations

- Submit the next job after the current one finishes; one job holds up to 100 keywords.
- Each keyword searches one sold page of up to 240 listings; use Max Mode for deeper pulls of a single keyword.
- Streaming results can finish out of order; use the index field to restore your order.
- Plan rate limits still apply: 60 requests a minute on paid plans, 120 on plans from 100,000 a month.

Common workflows

## Built for resale tools and repeatable research

### Repricing inventory

Price a whole store catalog every night and flag listings that sit above or below the current market median.

### Reseller SaaS backends

Refresh comps for every product your users track on a schedule, inside a predictable monthly quota.

### Market research

Pull sold prices for a whole category or brand list and compare medians across products and eBay sites.

Compare

## eBay's own API or CompSniper for bulk sold data

eBay's Marketplace Insights API is the official route to sold data, but access needs eBay's approval. CompSniper is built for large keyword lists with no approval step.

|  | eBay Marketplace Insights API | CompSniper |
| --- | --- | --- |
| Access | Restricted, needs eBay approval | Instant API key, free plan |
| Keywords per call | One search per call | Up to 100 per job, 20 per stream |
| Sold history | About 90 days | 240 recent sales per keyword, and up to 3 years with /v1/research/sold |
| Accepted Best Offer price | No | Yes, bestOfferPrice=true |
| CSV export | No | Yes, on streaming bulk search |
| Volume | Set by eBay per application | Plans up to 500,000 requests a month |

FAQ

## eBay API questions

**What's the best eBay sold listings API for bulk searching thousands of keywords a day?+**

There are two ways. eBay's own Marketplace Insights API, if eBay approves your application. Otherwise CompSniper: submit up to 100 keywords per job to POST /v1/scrape/jobs, poll for results, and submit the next job when it is done. Each keyword returns up to 240 sold listings with its own median and range. Plans go up to 500,000 requests a month, and failed keywords are never charged.

**How many keywords can I send at once?+**

Up to 100 keywords per scrape job, 20 per streaming bulk search, and 100 cards per Card Batch job. Submit the next batch when the current one finishes; the queue paces the work so large runs complete without burst errors.

**How is a bulk run billed?+**

Each successful keyword counts as one request against your monthly quota or credits. A keyword that fails is not charged. Plans run from 2,000 requests a month ($9) up to 500,000 ($549), and credits cost $5 per 1,000 with no plan.

**Can I export the results to CSV?+**

Yes. A streaming bulk search returns a combined CSV link and a per-keyword CSV link, kept for 30 days. Scrape job results come back as JSON for each keyword.

**Why not call /v1/scrape in parallel instead?+**

Every search reads live eBay data, and eBay pushes back on bursts, so a large parallel fan-out comes back with 429 or 503 errors. The job queue paces the same searches at a rate eBay accepts and returns every result.

**Can I get more than 90 days of history in bulk?+**

Yes. GET /v1/research/sold returns up to 3 years (1,095 days) of eBay sold history per keyword on every plan; run it per keyword from your own loop.

Related

eBay sold listings API

The single-keyword API: up to 240 sold listings per request with full fields.

eBay price history API

Up to 3 years (1,095 days) of eBay sold history by keyword.

eBay sold listings API for a SaaS app

How to size a plan for 20,000+ searches a month.

## Run your first eBay search

Create a free account, get an API key, and use the same quota from REST, the dashboard, or CompSniper MCP tools.

[Start with 100 free requests](https://compsniper.com/signup)[Read the docs](https://compsniper.com/docs/rate-limits)

---

CompSniper: real sold prices from eBay (8 sites), PSA, TCGplayer, Grailed, Depop, Poshmark and Mercari through one API. Free plan, 100 requests a month: https://compsniper.com/signup. Pricing: https://compsniper.com/pricing. All Markdown pages: https://compsniper.com/llms.txt
