Discover/Getcollectr API
live

Getcollectr APIGetcollectr.com

Search the Collectr TCG catalog and retrieve graded card prices (PSA, BGS, CGC, ACE, TAG) with PSA 10 history via 2 endpoints.

Endpoint health
verified 2h ago
search_cards
get_graded_prices
2/2 passing latest checkself-healing
Endpoints
2
Updated
2h ago

What is the Getcollectr API?

The Getcollectr.com API exposes 2 endpoints for querying Collectr's trading-card catalog and retrieving graded slab prices. The search_cards endpoint returns up to 30 products per page—covering Pokemon, Magic: The Gathering, Yu-Gi-Oh, One Piece, and other TCGs—including product IDs, set names, card numbers, and rarity. The get_graded_prices endpoint then maps a product ID to its current and historical PSA 10 prices plus latest prices across PSA, BGS, CGC, ACE, and TAG grades.

This call costs1 credit / call— charged only on success
Try it
1-based results page (30 items per page).
Free-text search term, e.g. a card or character name.
api.parse.bot/scraper/deec24d2-ffc5-41bd-b3fd-99cd817443e2/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/deec24d2-ffc5-41bd-b3fd-99cd817443e2/search_cards?query=Charizard' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

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 getcollectr-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: Collectr Card Prices SDK — search cards, drill into graded prices."""
from parse_apis.getcollectr_com_api import Collectr, ProductNotFound

client = Collectr()

# Search the catalog for a popular card and browse the first few hits.
for card_summary in client.card_summaries.search(query="Charizard", limit=5):
    print(card_summary.name, card_summary.set_name, f"${card_summary.market_price:.2f}")

# Drill into the first result's full graded-price detail.
hit = client.card_summaries.search(query="Pikachu", limit=1).first()
if hit is not None:
    detail = hit.details()

    # PSA 10 prices and recent history per sub-type
    for psa in detail.psa10:
        print(f"PSA 10 ({psa.sub_type}): ${psa.price:.2f} as of {psa.price_date}")
        for point in psa.history[:3]:
            print(f"  {point.date}  ${point.price:.2f}")

    # All graded slab prices
    for slab in detail.graded[:5]:
        print(f"{slab.company} {slab.grade} ({slab.grade_name}): ${slab.price:.2f}")

# Point lookup by a known product_id, with typed-error handling.
try:
    card = client.cards.get(product_id=hit.product_id) if hit is not None else None
except ProductNotFound:
    print("Product no longer in the catalog")
    card = None

if card is not None:
    print(card.name, card.category, card.rarity, f"${card.market_price:.2f}")

print("exercised: card_summaries.search / CardSummary.details / cards.get / ProductNotFound")
All endpoints · 2 totalmissing one? ·

Searches the Collectr catalog (Pokemon, Magic, Yu-Gi-Oh, One Piece and other TCGs; cards and sealed products) by free text and returns one page of 30 products in the site's Best Match order. Each item carries product_id (the key for get_graded_prices), set, card number, rarity, sub-type (e.g. Holofoil), the current ungraded market price in USD with its recent change, and has_psa10_price telling whether a PSA 10 price exists for it. Pagination is by page (1-based, fixed page size 30): page omitted means page 1; next_page is null when the page returned fewer than 30 items. A query with no matches returns count 0 and an empty items array. One upstream round trip per call. The upstream API throttles bursts per network address for several minutes, so space calls out rather than firing many at once.

Input
ParamTypeDescription
pageinteger1-based results page (30 items per page).
queryrequiredstringFree-text search term, e.g. a card or character name.
Response
{
  "type": "object",
  "fields": {
    "page": "page number served",
    "count": "number of items on this page",
    "items": "array of products: product_id (string key for get_graded_prices), name, category (game), set_name, set_id, card_number, rarity, sub_type (print variant), is_card (false for sealed products), image_url, market_price (ungraded USD), market_price_change / market_price_change_pct (recent change), has_psa10_price",
    "query": "echo of the search term",
    "next_page": "next page number, or null when this page was not full",
    "page_size": "fixed page size (30)"
  },
  "sample": {
    "data": {
      "page": 1,
      "count": 30,
      "items": [
        {
          "name": "Mega Charizard X ex",
          "rarity": "Promo",
          "set_id": "24451",
          "is_card": true,
          "category": "Pokemon",
          "set_name": "Mega Evolution Promos",
          "sub_type": "Holofoil",
          "image_url": "https://public.getcollectr.com/public-assets/products/product_659612.png?optimizer=image&format=webp&width=1200&quality=80&strip=metadata",
          "product_id": "659612",
          "card_number": "023",
          "market_price": 34.94,
          "has_psa10_price": true,
          "market_price_change": 0.29,
          "market_price_change_pct": 0.84
        },
        {
          "name": "Charizard ex",
          "rarity": "Special Illustration Rare",
          "set_id": "23237",
          "is_card": true,
          "category": "Pokemon",
          "set_name": "SV: 151",
          "sub_type": "Holofoil",
          "image_url": "https://public.getcollectr.com/public-assets/products/product_517045.jpg?optimizer=image&format=webp&width=1200&quality=80&strip=metadata",
          "product_id": "517045",
          "card_number": "199/165",
          "market_price": 363.66,
          "has_psa10_price": true,
          "market_price_change": -10.25,
          "market_price_change_pct": -2.74
        },
        {
          "name": "Mega Charizard X ex Ultra Premium Collection",
          "rarity": null,
          "set_id": "2374",
          "is_card": false,
          "category": "Pokemon",
          "set_name": "Miscellaneous Cards & Products",
          "sub_type": "Normal",
          "image_url": "https://public.getcollectr.com/public-assets/products/product_654213.png?optimizer=image&format=webp&width=1200&quality=80&strip=metadata",
          "product_id": "654213",
          "card_number": null,
          "market_price": 232.48,
          "has_psa10_price": false,
          "market_price_change": 2.88,
          "market_price_change_pct": 1.25
        }
      ],
      "query": "Charizard",
      "next_page": 2,
      "page_size": 30
    },
    "status": "success"
  }
}

About the Getcollectr API

Search the Collectr Catalog

The search_cards endpoint accepts a required query string (a card name, character name, or product name) and an optional page integer for paginating through results 30 items at a time. Each item in the returned items array includes a product_id, name, category (the game), set_name, set_id, card_number, and rarity. The next_page field is null when the current page was not full, giving a simple signal that you have reached the last page of results. Results are returned in Collectr's Best Match order and cover both individual cards and sealed products.

Graded Prices and PSA 10 History

The get_graded_prices endpoint takes a product_id from search results and returns two main data structures. The psa10 array breaks prices down by print sub-type (e.g., "Shadowless Holofoil"), each entry carrying the latest price, its price_date in YYYY-MM-DD format, and a history array of daily {date, price} points spanning approximately one year, ordered oldest first. The optional sub_type parameter restricts results to a single print variant exactly as listed in the sub_types field.

The graded array covers all other slab grades tracked by the site: each entry includes sub_type, company (PSA, BGS, CGC, ACE, or TAG), a numeric grade string, grade_label, grade_name, and the latest price in USD. Supporting fields like image_url, is_card, set_name, set_id, and rarity (null for sealed products) round out the response for display or storage purposes.

Reliability & maintenanceVerified

The Getcollectr API is a managed, monitored endpoint for Getcollectr.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when Getcollectr.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 Getcollectr.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.

Last verified
2h ago
Latest check
2/2 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Track daily PSA 10 price trends for specific Pokemon card print variants using the history array from get_graded_prices.
  • Compare the latest grades across PSA, BGS, CGC, ACE, and TAG for a single card to identify valuation differences between grading companies.
  • Build a portfolio tracker that stores product_id references from search_cards and refreshes prices on a schedule.
  • Monitor sealed product values alongside individual cards using the is_card flag to separate the two in your pipeline.
  • Alert when a PSA 10 price crosses a threshold by polling get_graded_prices and comparing the latest price_date entry.
  • Populate a card database with set metadata—set_name, set_id, card_number, rarity—returned by search_cards across multiple TCG categories.
  • Retrieve sub-type-specific pricing for cards with multiple print variants (e.g., first edition vs. shadowless) using the sub_type filter.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 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.

Frequently asked questions
Does Getcollectr.com have an official developer API?+
Getcollectr.com does not publish a documented public developer API. This Parse API provides structured access to catalog and pricing data from the site.
What grading companies are covered by `get_graded_prices`, and is price history available for all of them?+
The graded array returns latest prices for PSA, BGS, CGC, ACE, and TAG grades. Daily price history (the history array) is currently provided only for PSA 10 within the psa10 field, spanning roughly one year of data. You can fork this API on Parse and revise it to add history arrays for other grades if the source data becomes available.
Does the API cover sales volume or transaction counts for graded cards?+
Not currently. The endpoints expose price and price-history data but do not return sales volume, number of transactions, or population report counts. You can fork this API on Parse and revise it to add an endpoint surfacing that data.
How does pagination work in `search_cards`, and how do I know when I've reached the last page?+
Results are returned 30 items per page, controlled by the page parameter (1-based). When the next_page field in the response is null, the current page contained fewer than 30 items, indicating no further pages exist. If next_page returns a number, pass it as the page value in your next request.
Can I retrieve prices for non-English or regional card variants?+
The API returns data as published by Getcollectr.com, which reflects the print sub-types the site tracks. Regional or language-specific sub-types are only available if Collectr includes them in its catalog. Coverage of regional variants is not guaranteed. You can fork this API on Parse and revise it if you need to supplement with a source that has broader regional coverage.
Page content last updated . Spec covers 2 endpoints from Getcollectr.com.
Related APIs in MarketplaceSee all →
app.getcollectr.com API
Search and retrieve detailed information about collectible trading cards and sealed products, including current market prices, historical price trends, and grading data to track and compare your collection's value. Find specific cards or products quickly and access comprehensive market insights to make informed collecting and trading decisions.
sportscardspro.com API
Access data from sportscardspro.com.
tcgplayer.com API
Search for trading cards across all games and sets on TCGPlayer, and instantly access detailed pricing information by condition plus current seller listings with prices, shipping costs, and seller ratings. Compare card values and find the best deals from multiple sellers all in one place.
pricecharting.com API
Access collectible pricing data from PriceCharting.com. Search for Pokémon cards, US coins, and other collectibles to retrieve current prices across multiple grades (ungraded, PSA 9, PSA 10, MS62, MS66, and more), browse full set listings, view historical price trends, and explore recent sold listings.
ai.cardhedger.com API
Access data from ai.cardhedger.com.
tcgfish.net API
Track Pokemon TCG market trends and indices to monitor card value movements, then search for specific card prices to find the best deals on TCGFish.net. Get real-time market data including detailed index information to make informed decisions about buying and selling collectible cards.
snkrdunk.com API
Access data from snkrdunk.com.
sportscardinvestor.com API
Access data from sportscardinvestor.com.