TCGplayer listings
Live TCGplayer offers in USD for Pokémon cards and sealed products, cursor-paginated.
TCGplayer Live Listings
/v1/cards/:id/listings/tcgplayer1 credit per item returnedRetrieve live TCGplayer marketplace offers for a specific card — current asking prices in USD, not completed sales. Includes seller reputation (rating, sales count, Gold/Direct/Verified badges) and shipping cost. Supports cursor-based pagination. updated_at is not a freshness signal. It moves only when a listing's own price, quantity or seller details change, so a listing that has been live and unchanged for a month keeps a month-old value however recently we confirmed it. Read snapshot_at for freshness: it is when the product's listings were last confirmed against TCGplayer, identical for every row in a response because a snapshot replaces a product's listings wholesale. Listings refresh daily, so a snapshot_at well over a day old means that product's last fetch did not succeed and you are seeing the previous snapshot. It is null if no successful snapshot has been recorded since the field was introduced. We collect from a US vantage point with no shipping-destination filter, so a snapshot can contain offers TCGplayer's own site hides from you when you browse it from outside the US.
Parameters
idstringrequiredThe unique card ID.
conditionstringCondition filter (e.g. "Near Mint", "Lightly Played", "Moderately Played").
languagestringListing language filter (e.g. "English", "German", "Japanese"). This is the language of the marketplace offer, not of the card.
printingstringPrinting/variant filter (e.g. "Holofoil", "Normal", "Reverse Holofoil").
min_pricenumberMinimum offer price (USD).
max_pricenumberMaximum offer price (USD).
sortstringSort order. One of "price_asc", "price_desc". Defaults to price_asc.
limitnumberNumber of listings to return per page (max 20). Defaults to 20.
cursorstringPagination cursor returned from a previous response.
Try it
curl -H "X-API-Key: YOUR_API_KEY" \https://api.pkmnprices.com/v1/cards/{id}/listings/tcgplayer
TCGplayer Sealed Listings
/v1/sealed/:id/listings/tcgplayer1 credit per item returnedRetrieve live TCGplayer marketplace offers for a specific sealed product — current asking prices in USD, not completed sales. Same response shape, filters, and cursor pagination as the card endpoint. Sealed offers normally carry condition "Unopened" with an empty printing, so those two filters rarely narrow anything here. snapshot_at applies here exactly as it does on the card endpoint: read it for freshness rather than updated_at.
Parameters
idstringrequiredThe unique sealed product ID.
conditionstringCondition filter. Sealed offers are normally "Unopened".
languagestringListing language filter (e.g. "English", "German", "Japanese"). This is the language of the marketplace offer, not of the card.
printingstringPrinting/variant filter. Normally empty for sealed products.
min_pricenumberMinimum offer price (USD).
max_pricenumberMaximum offer price (USD).
sortstringSort order. One of "price_asc", "price_desc". Defaults to price_asc.
limitnumberNumber of listings to return per page (max 20). Defaults to 20.
cursorstringPagination cursor returned from a previous response.
Try it
curl -H "X-API-Key: YOUR_API_KEY" \https://api.pkmnprices.com/v1/sealed/{id}/listings/tcgplayer