Raw and graded, separately
Search raw copies with graded and lot listings excluded, and graded copies by grader and grade, so a PSA 10 never inflates a raw price.
Use GET /v1/scrape for eBay sold comps of raw or graded Pokemon cards (up to 240 sales per request, with the median and range calculated), add bestOfferPrice=true for the real accepted price on Best Offer sales, and GET /v1/tcgplayer/sold for TCGplayer sale history and market price history. Price whole binders with the Card Batch API. One CompSniper key, 100 free requests a month.
Reviewed by Marc Andrew, owner of CompSniper. Updated October 14, 2026.
curl --fail-with-body \
-H "Authorization: Bearer $COMPSNIPER_API_KEY" \
"https://api.compsniper.com/v1/scrape?keyword=charizard+ex+223%2F197+psa+10&count=240&bestOfferPrice=true"Search raw copies with graded and lot listings excluded, and graded copies by grader and grade, so a PSA 10 never inflates a raw price.
bestOfferPrice=true returns the accepted price on Best Offer sales, common on high-value cards, at no extra cost.
Compare eBay sold comps with TCGplayer's full sale history and market price for the same card, on the same key and quota.
Authentication uses the same CompSniper API key as every other endpoint. No eBay or TCGplayer developer account is required.
| Parameter | Accepted values | Default |
|---|---|---|
| keyword | Card name, number, set, and grade (for example psa 10) | Required |
| count | 1 to 240 | 240 |
| bestOfferPrice | true for real accepted Best Offer prices | false |
| relevance | false for eBay's results exactly as listed | true (AI cleanup) |
| ebaySite | ebay.com, ebay.co.uk, ebay.de and 5 more | ebay.com |
| soldAfter / soldBefore | YYYY-MM-DD | None |
Every successful sold page includes a deterministic median, average, p25 to p75 range, and sample size calculated from the returned prices.
{
"keyword": "charizard ex 223/197 psa 10",
"totalItems": 132,
"summary": { "count": 132, "currency": "USD", "median": 767.61,
"p25": 700.75, "p75": 799.99 },
"items": [
{ "itemId": "...", "title": "Pokemon Charizard ex 223/197 Obsidian Flames PSA 10",
"soldPrice": "799.99", "soldCurrency": "USD", "shippingPrice": "0.00",
"endedAt": "2026-10-09T...", "bestOfferAccepted": true,
"acceptedOfferPrice": "735.00", "acceptedOfferPriceStatus": "found" }
]
}Show users what each card actually sells for, raw and graded, instead of a single estimated value.
Price buys and inventory against recent eBay and TCGplayer sales before you make an offer.
Compare raw and PSA 10 medians to see whether grading a card is worth the fee.
TCGplayer's own developer API is closed to new developers, and eBay's sold data APIs are restricted. CompSniper gives you both with one key: eBay sold comps for raw and graded copies through GET /v1/scrape, and TCGplayer completed sales and market price history through GET /v1/tcgplayer/sold. The free plan includes 100 requests a month.
It depends on the card. For Charizard ex 223/197 in October 2026, PSA 10 copies sold for a median of $767.61 on eBay (132 sales), about 8 times the $91.50 median of raw copies (214 sales). TCGplayer Near Mint sales had a median of $97.84.
Yes. On eBay, an accepted Best Offer shows the asking price. Add bestOfferPrice=true and those sales gain acceptedOfferPrice, the price the buyer actually paid, on US-dollar sales at no extra cost. In a 177-sale Pokemon test it was found for 77% of them, all at or below the listing price.
Yes. The Card Batch API prices up to 100 cards per job from structured fields (set, character, card number, grader, grade) or free-text keywords, and returns a cleaned price summary per card.
eBay sold comps cover the recent sold window of about 90 days, TCGplayer returns the card's full recorded sale history with optional market price history, and GET /v1/research/sold returns up to 3 years of eBay sold history on every plan.
Yes, through eBay sold search. Japanese cards print zero-padded numbers, so search the number as printed (for example 031 rather than 31), and add the set code for best matches.
Create a free account, get an API key, and use the same quota from REST, the dashboard, or CompSniper MCP tools.