Pokémon card
data & prices API
Access daily-updated pricing from TCGplayer, Cardmarket, and eBay for English, Japanese & German cards, sealed products, and graded cards. Built for developers.


Everything you need to build
One API for card data, sealed product info, and real-time market prices across every Pokémon TCG set.
Daily price updates
Market prices updated daily from TCGplayer, Cardmarket, and eBay. Track price movements and trends over time.
Complete card data
Every card across every set — name, rarity, artist, HP, images, and more.
Sealed products
Booster boxes, ETBs, and collections with pricing data and set associations.
Japanese & German cards
Japanese and German set data and pricing available on Pro and Business tiers. German is priced in EUR from Cardmarket.
Fast & reliable
Built with Rust for sub-100ms responses. Paginated endpoints with clean JSON.
Simple auth
API key authentication. Create keys instantly, manage them from your dashboard.
Typed SDKs for JavaScript & Python
Skip the fetch boilerplate. Typed methods for every endpoint, API-key auth, and auto-paginating iterators — in TypeScript or Python.
npm install @pkmnprices/sdk
import { PkmnPrices } from "@pkmnprices/sdk";const client = new PkmnPrices({apiKey: process.env.PKMNPRICES_API_KEY});// Search cards — fully typed params and responseconst { data } = await client.cards.list({name: "charizard",per_page: 5});// Fetch one card with TCGplayer (USD) or Cardmarket (EUR) pricesconst charizard = await client.cards.get(data[0].id, {currency: "usd"});// Every row has one market_price for its exact condition and printing variantconsole.log(charizard.prices[0].market_price); // 285// Cursor-paginated Cardmarket offers are language-matched to the cardconst offers = await client.cards.listings.cardmarket(charizard.id, {condition: "Near Mint",variant: "Reverse Holo"});console.log(offers.data[0]?.seller, offers.data[0]?.price);// Sealed products support the same currency filterconst box = await client.sealed.get(5678, { currency: "eur" });console.log(box.cardmarket_url, box.prices[0]?.market_price);
Start free, scale when ready
Simple credit-based pricing. Credits reset daily.
Features
- 100 credits / day
- 60 requests / minute
- 1 API key
- English cards
- Sealed product prices
- EU prices (Cardmarket)
- TCGplayer listings
- Cardmarket listings
- eBay sold listings
- Commercial use
Features
Everything in Free, plus
- 20,000 credits / day
- 5 API keys
- English, Japanese & German cards
- Sealed product prices
- EU prices (Cardmarket)
- TCGplayer listings
- Cardmarket listings
- eBay sold listings
- Commercial use