Beckett APIbeckett.com ↗
Access Beckett sports card checklists, graded card details, price guide search, and news articles via 7 structured API endpoints.
What is the Beckett API?
The Beckett.com API exposes 7 endpoints covering sports card checklists, graded card lookups, price guide search, and news article browsing. The get_graded_card_details endpoint returns a full BGS grading record — including final grade, all four sub-grades, label color, and population data — for any certification number. Other endpoints surface checklist content organized by tab (Base, Autographs, Inserts), article metadata, and sport-filtered news from Beckett's editorial archive.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/25ac7096-3092-4807-a4fa-f2a9ac2bf840/get_categories' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace beckett-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: Beckett Collectibles SDK — sports card checklists, grading lookup, and metadata."""
from parse_apis.Beckett_Collectibles_API import Beckett, Sport, ArticleNotFound
client = Beckett()
# List all sport categories available for filtering
for category in client.categories.list(limit=3):
print(category.id, category.name)
# List baseball checklist articles (paginated, capped)
for article in client.articles.list(sport=Sport.BASEBALL, limit=3):
print(article.title, article.url)
# Search articles by keyword
result = client.articles.search(query="Topps 2025", limit=1).first()
if result:
print(result.title, result.date)
# Drill into an article's full checklist detail
article = client.articles.list(sport=Sport.FOOTBALL, limit=1).first()
if article:
try:
detail = article.detail.get()
print(detail.title, detail.metadata.sport, detail.metadata.manufacturer)
except ArticleNotFound as exc:
print(f"Article gone: {exc}")
# Look up a graded card by certification number
card = client.graded_cards.get(cert_number="0016097088")
print(card.player_name, card.set_name, card.final_grade, card.sport)
# Extract checklist links from a page
for link in client.checklist_links.extract(url="https://www.beckett.com/news/", limit=3):
print(link.text, link.url)
print("exercised: categories.list / articles.list / articles.search / article.detail.get / graded_cards.get / checklist_links.extract")
Returns a static list of sports categories and their IDs used for filtering on the Beckett site. Categories include Baseball, Basketball, Football, Hockey, Non-Sports, Gaming, Soccer, Racing, and Golf.
No input parameters required.
{
"type": "object",
"fields": {
"categories": "array of objects with 'id' (string) and 'name' (string) for each sport category"
},
"sample": {
"data": {
"categories": [
{
"id": "185223",
"name": "Baseball"
},
{
"id": "185226",
"name": "Basketball"
},
{
"id": "185224",
"name": "Football"
},
{
"id": "185225",
"name": "Hockey"
},
{
"id": "468286",
"name": "Non-Sports"
},
{
"id": "499545",
"name": "Gaming"
},
{
"id": "185227",
"name": "Soccer"
},
{
"id": "210408",
"name": "Racing"
},
{
"id": "210409",
"name": "Golf"
}
]
},
"status": "success"
}
}About the Beckett API
Checklists and Article Data
The get_checklist_articles endpoint returns a paginated list of Beckett News checklist articles — title, URL, publication date, and summary — and accepts a sport filter with slugs like baseball, basketball, football, hockey, soccer, and beckett-non. Each page delivers approximately 30 articles. Once you have a URL, get_checklist_article_detail parses the full article page and returns a tabs object mapping section names (e.g. Base, Autographs, Inserts) to structured content arrays, plus a metadata object with sport, collection_name, manufacturer, and year.
Graded Card Lookups
get_graded_card_details accepts a BGS certification number and returns a structured record: final_grade, sub-grades for centering, corners, edges, and surface, label color (gold, silver, etc.), set_name, card_number, date_graded, sport, and population report fields pop_higher. This makes it straightforward to verify a graded card's authenticity details and compare its grade against the broader population.
Search and Discovery
search_checklists accepts a free-text query and returns matching Beckett News articles with titles, URLs, and dates — results are not scoped to checklists exclusively, so broader editorial content may appear. search_price_guide queries the Beckett Online Price Guide with an optional sport_id from get_categories, returning a results array and a results_count integer, though result depth may vary by card availability. extract_checklist_links scans any given URL and returns all links whose accessible text or attributes reference the word 'checklist', which is useful for crawling index or hub pages.
The Beckett API is a managed, monitored endpoint for beckett.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when beckett.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official beckett.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a card collection tracker that maps cert numbers to BGS grades and sub-grades using get_graded_card_details.
- Aggregate new set release checklists by sport using get_checklist_articles with the sport filter, then parse full card lists via get_checklist_article_detail.
- Monitor Beckett News for newly published checklists by polling get_checklist_articles and comparing publication dates.
- Verify graded card legitimacy at point of sale by checking certification number, label color, and pop_higher count.
- Build a set metadata index (manufacturer, year, collection name) from checklist article metadata across multiple sports.
- Search the Beckett price guide for specific products using search_price_guide with a sport_id to scope results.
- Crawl Beckett hub or index pages with extract_checklist_links to discover checklist article URLs for downstream parsing.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.