SportsCardsPro API

What a sports card sells for, in every grade, with the sales behind the price

The SportsCardsPro API turns sportscardspro.com, the sports-card site of PriceCharting, into JSON in six actions.

no credit card1,000 free credits · instant API key · pay by card or crypto
Missing a SportsCardsPro endpoint, or need a source we don't have yet?Contact us real people · same-day reply.
S
/sportscardspro/v1

6 active endpoints, on 2 and 3 credit tiers.

  • POST/sportscardspro/v1/search
  • POST/sportscardspro/v1/card
  • POST/sportscardspro/v1/price_history
  • POST/sportscardspro/v1/sales
  • POST/sportscardspro/v1/set
  • POST/sportscardspro/v1/sets

What SportsCardsPro endpoints does ReefAPI ship?

6 live read endpoints. Read-only data API: no writes, no account actions, no dashboard access on the target site.

6 endpoints

search

2 cr

Search SportsCardsPro by player, set, year or card number.

required
query
optional
sport, rookies_only, exclude_variants, set_id, sort

card

3 cr

One card in full by its id.

required
id
optional
—

price_history

3 cr

The monthly price history behind the card's chart, one series per headline grade (Ungraded, G…

required
id
optional
—

sales

3 cr

The completed sales the site shows for a card, per grade (up to 30 per grade, newest first).

required
id
optional
condition

set

2 cr

Every card of one set with its Ungraded, PSA 10 and Grade 9 prices and the latest price chang…

required
set
optional
sort, cursor

sets

2 cr

The popular sets the site lists for one sport (with the slug the set action takes), plus the…

required
sport
optional
—

Every parameter, every allowed value →

SportsCardsPro API

4 of 6 endpoints, ready to run

View docs ↗

Find a card by player, set, year or number, with three headline prices on every row.

2 credits1 required · 2 optional
POST/sportscardspro/v1/search
idle
// Press "Try it" and this pane shows exactly what the
// live site returned this second — including an empty
// result, if that is the truth. No key, no account.

How the SportsCardsPro API works

SportsCardsPro is a normal ReefAPI surface — the same four rules that hold for every other engine on the key.

01
Authenticate
x-api-key header

No OAuth app, no request signing, no per-site account. One key covers all 493 engines.

02
Call
POST /sportscardspro/v1/…

Every route is a POST with a JSON body. Parameters are validated against the published schema before anything is charged.

03
Pay
2 or 3 credits per call

Credits, not seats. Failed and blocked calls are never charged, and cache hits cost nothing.

04
Read
{ ok, data, meta, error }

One envelope everywhere. meta carries latency_ms, record_count and the endpoint that answered.

Price a rookie card in every grade

Three calls, from the player's name to the price of each grade, the population and the sales behind it.

01search?query=michael jordan&sport=basketball-cards&rookies_only=true
POSTsearch?query=michael jordan&sport=basketball-cards&rookies_only=true

Jordan's rookie cards with id, set and the Ungraded, Grade 9 and PSA 10 prices.

02card?id=3225905
POSTcard?id=3225905

1984 Star #101: 19 grades with their prices and the PSA and CGC population for grades 1-10.

03sales?id=3225905&condition=Grade 7
POSTsales?id=3225905&condition=Grade 7

The Grade 7 copies that sold, with date, title, price and marketplace.

The gap between the Ungraded price and each grade, how many graded copies exist, and the sales the price rests on.

request
curl -X POST https://api.reefapi.com/sportscardspro/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"michael jordan","sport":"basketball-cards"}'
response envelope
{
  "ok": true,
  "data": { … },
  "meta": {
    "api": "sportscardspro",
    "endpoint": "search",
    "mode": "live",
    "latency_ms": …,
    "record_count": …
  },
  "error": null
}

The six headline grades of a sports card

SportsCardsPro shows six headline prices per card and a Full Price Guide with every other grade. Read off card pages on 2026-10-15; the API returns each price with the label the page prints.

source_keygradeexample (1984 Star Michael Jordan #101)
usedUngraded9,999.00
cibGrade 7111,325.00
newGrade 8132,169.53
gradedGrade 9221,890.03
boxonlyGrade 9.5244,079.00
manualonlyPSA 10null (no price)

Search and set rows carry three of them: Ungraded, PSA 10 and Grade 9. The Full Price Guide in card adds Grade 1 to Grade 6, BGS 10, BGS 10 Black, CGC 10, CGC 10 Pristine, SGC 10, TAG 10 and ACE 10. A grade the site has no price for is null.

What SportsCardsPro publishes — measured 2026-10-15

SportsCardsPro prices sports cards from completed sales, on the same platform as PriceCharting. These are the numbers and limits measured on the live site.

Sports and sets

11 sports: baseball, basketball, football, hockey, soccer, racing, wrestling, UFC, boxing, golf and tennis; sets lists 292 popular basketball sets.

Prices per card

19 grades in the Full Price Guide: Ungraded, Grade 1-9.5, PSA 10, BGS 10, BGS 10 Black, CGC 10, CGC 10 Pristine, SGC 10, TAG 10 and ACE 10; null when the site has no price.

Price checks

Every headline price on the cards checked matched the Full Price Guide and the last point of the price chart; search row prices matched the card page. US dollars.

Population

PSA and CGC population for grades 1 to 10 on every graded card.

Sold listings

Up to 30 completed sales per grade with date, title, price and marketplace (eBay, Heritage, Goldin, Fanatics).

Search limits

At most 100 results per search and no further pages; set pages through every card of a set, 150 per page.

Not published

Photos of sold items and the site's collection and marketplace features.

What people build with SportsCardsPro

The jobs this data is most often used for.

6

endpoints

2/3

credits per call

01

Price a collection: card for each card gives the current price in the exact grade you own.

02

Decide whether to grade: compare Ungraded with Grade 9 and PSA 10, and check how many PSA copies exist.

03

Chart a card: price_history per grade, one point a month.

04

Check a deal: sales shows what the same card in the same grade really sold for, with date and marketplace.

What SportsCardsPro data costs

The cheapest call here is 2 credits, so $15/mo (Pro) buys 5,000 of them — $1.50 per 1,000 credits. Credits roll over and never expire, and failed or blocked calls are not charged.

Full pricing →
$0.67–$1.50 / 1,000 credits
  • 1,000 free credits on signup, no card
  • One key, all 493 APIs, one credit pool
  • Failed and blocked calls are never charged
  • Credits roll over and never expire

Call it in two lines

Sign up, get 1,000 credits and one key that works on every engine. Then this is the whole protocol.

curl
curl -X POST https://api.reefapi.com/sportscardspro/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"michael jordan","sport":"basketball-cards"}'
python
import requests

r = requests.post(
    "https://api.reefapi.com/sportscardspro/v1/search",
    headers={"x-api-key": REEF_KEY},
    json={
  "query": "michael jordan",
  "sport": "basketball-cards"
},
)
print(r.json()["data"])
FAQ

Have a question? We got answers.

The questions people actually ask before wiring up SportsCardsPro.

Get a free key →
Is the price a real sale?▾

No. It is SportsCardsPro's current market price for each grade, calculated from completed sales. The sales themselves come from the sales action with date, listing title, sold price and marketplace. On the cards checked every headline price matched the card's Full Price Guide and the last point of its price chart.

Which grades do I get?▾

Ungraded, Grade 1 to Grade 9.5, PSA 10, BGS 10, BGS 10 Black, CGC 10, CGC 10 Pristine, SGC 10, TAG 10 and ACE 10 — 19 grades for the 1984 Star Michael Jordan #101, 11 of them priced. Each card also carries the PSA and CGC population for grades 1 to 10 (149 PSA 7 copies of that Jordan).

How do I find only rookie cards?▾

Set rookies_only=true on search: 'michael jordan' returns 100 cards, with rookies_only 58. sport limits the search to one sport, set_id to one set, and exclude_variants leaves out parallels.

How many search results can I get?▾

SportsCardsPro returns at most 100 cards for a search and has no further pages; meta.possibly_truncated says when a search hit that limit. Narrow it with sport, set_id or rookies_only, or list a whole set with set, which pages through every card 150 at a time.

What is in the sold listings?▾

Up to 30 completed sales per grade, newest first: date, listing title, sold price, the marketplace (eBay, Heritage, Goldin, Fanatics) and the link. For an eBay best-offer sale both the accepted price and the list price are returned. Use condition to get one grade, for example condition=Grade 9.

How is this different from the Card Ladder API?▾

SportsCardsPro gives a price for every grade from its own guide, the PSA and CGC population and the individual sold listings. Card Ladder gives its CL Value, a per-day sales history, market and player indexes. Many teams use both: the same card, two independent price sources.

How do I go from a search row to the card?▾

Every search and set row carries id (3225905 is the 1984 Star Michael Jordan #101). Pass it to card, price_history or sales as it is; a sportscardspro.com/game/… link works too. Cards also return the eBay ePID to join with listings elsewhere.

What is the SportsCardsPro API?▾

SportsCardsPro API is a ReefAPI endpoint group for sportscardspro's sports card price guide as json: the current price of every grade from ungraded to psa 10 for baseball, basketball, football, hockey and soccer cards, with the psa and cgc population, the monthly price history and the sold listings behind it. It returns live JSON through POST requests under /sportscardspro/v1.

Is the SportsCardsPro API free to try?▾

Yes. ReefAPI starts with 1,000 free credits, no card required. SportsCardsPro calls use the same shared credit balance as every other ReefAPI engine.

Do I need a SportsCardsPro login or account?▾

No login to SportsCardsPro is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.

How fresh is the SportsCardsPro data?▾

The page example is captured from a live search call, and production requests fetch live data through ReefAPI rather than a static sample.

How many credits does the SportsCardsPro API use?▾

SportsCardsPro actions currently cost 2-3 credits per successful call. Failed or blocked calls are free. All APIs draw from one credit pool.

Can I call SportsCardsPro from an AI assistant or MCP client?▾

Yes. Connect ReefAPI once through MCP and your assistant can call sportscardspro actions with the same key, credit pool and JSON envelope used by normal REST requests.

Is the SportsCardsPro API a SportsCardsPro scraper?▾

It is the managed alternative to a DIY SportsCardsPro scraper. Instead of building and maintaining your own scraper — proxies, headless browsers, captcha and constant breakage — you call one ReefAPI endpoint and get the same sportscardspro's sports card price guide as json: the current price of every grade from ungraded to psa 10 for baseball, basketball, football, hockey and soccer cards, with the psa and cgc population, the monthly price history and the sold listings behind it back as clean JSON.

Need something this API does not do?

Name the endpoint, the field, or a source we do not carry yet. We ship new APIs every week and you would be first to get the key. Real people read every message and reply the same day.

0/4000

No account needed · we reply from [email protected]

Try it on your own data before you pay anything

The call above is the real endpoint, not a recording. A free key gives you 1,000 credits, the other 492 APIs, and the same envelope everywhere.

Endpoints, parameters and credit costs on this page are read from the live catalog and cannot drift from what the API accepts. Field notes were captured on 2026-10-15.