MySlabs Scraper - Graded Sports Card & Pokemon Slab Marketplace
Independent tool. Trademarks referenced on this page are the property of their respective owners and are used only to identify the public website this tool reads. No affiliation or endorsement.
MySlabs Scraper — Graded Sports Card & Pokemon Slab Marketplace
Extract sold comps and active listings from MySlabs.com, the largest multi-grader peer-to-peer graded-slab marketplace. Covers PSA, BGS, SGC, CGC, TAG, and HGA slabs across sports cards, Pokemon, and other collectibles.
What you get
Each record includes:
| Field | Description |
|---|---|
slab_id |
MySlabs internal numeric ID |
listing_url |
Canonical listing URL |
title |
Full listing title (YEAR SET #CARD_NO PLAYER GRADE_LABEL) |
grader |
Grading company (PSA, BGS, SGC, CGC, TAG, HGA) |
grade |
Grade label as displayed (e.g. "PSA 10 GEM MINT") |
grade_numeric |
Parsed numeric grade (e.g. 10, 9.5) |
year |
Card year (extracted from title) |
card_number |
Card number within the set, when the title states it |
listing_status |
sold, active, ended, or pulled |
sale_price |
Final sale price in USD (sold listings) |
asking_price |
Current asking price in USD (active listings) |
sold_at |
Sale date / timestamp string |
description |
Seller description text |
watchers_count |
Number of watchers / trackers |
image_urls |
Array of full-resolution slab image URLs |
scrapedAt |
When this record was delivered to you (ISO 8601) |
Three scraping modes
archive — Sold comps (default)
Walks the sold archive at /browse/archive/. Over 150,000 sold listings, growing ~50/day. Use this mode to pull historical sale prices for comparables research.
Optional filters:
- query — keyword search (player name, set, card number)
- sport — filter by sport or category keyword (baseball, basketball, pokemon)
- grader — filter by grading company
active — Current listings
Walks active listings at /browse/. Same data shape as archive mode but for slabs currently on sale.
slab — Single slab lookup
Fetch one or more specific slabs by ID or URL. Pass bare numeric IDs or full /slab/view/<id>/ URLs in slabIds.
{
"mode": "slab",
"slabIds": ["1545016", "1500000"]
}
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
mode |
string | archive |
Scrape mode: archive, active, or slab |
query |
string | — | Keyword search (player, set, card number) |
sport |
string | — | Sport / category filter keyword |
grader |
string | — | Grader filter: PSA, BGS, SGC, CGC, TAG, HGA |
slabIds |
array | — | Slab IDs or URLs (mode=slab only) |
maxItems |
integer | 10 |
Maximum records to return. 0 for unlimited. |
Example inputs
Sold comps for Michael Jordan PSA cards:
{
"mode": "archive",
"query": "Michael Jordan",
"grader": "PSA",
"maxItems": 100
}
Active Pokemon listings:
{
"mode": "active",
"sport": "pokemon",
"maxItems": 50
}
Full archive crawl (unlimited):
{
"mode": "archive",
"maxItems": 0
}
Dataset views
Two pre-configured views are available on the output dataset:
- Sold Comps — title, year, card_number, grader, grade, sale_price, sold_at, listing_url
- Full Slab Detail — all fields including sub-grades, watchers, images
Notes
- Seller usernames and cert numbers are behind a login wall on MySlabs and are not available without authentication.
- BGS sub-grades (centering/corners/edges/surface) are included when a seller states them in the listing text; most listings don't, so this field is populated on a minority of BGS cards.
- Images are sourced from the LD+JSON Product schema for full resolution; the listing thumbnail is used as a fallback.
- MySlabs is bot-protected and challenges most automated tools; this actor gets through reliably.
- The archive contains 150k+ sold listings. Full crawls at
maxItems: 0will take several hours and consume significant compute units. Usequeryfilters to narrow the scope for comp research.