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.

70K+
Cards
730+
Sets
5.9K+
Sealed
24/7
Updates
PSACGCBGSSGCTAGACEPCASFGCGSPGSEGSAOGGSGGCGMTG
Grades
Pricing data sourced from
TCGplayerCardmarketeBay

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
typescript
import { PkmnPrices } from "@pkmnprices/sdk";
const client = new PkmnPrices({
apiKey: process.env.PKMNPRICES_API_KEY
});
// Search cards — fully typed params and response
const { data } = await client.cards.list({
name: "charizard",
per_page: 5
});
// Fetch one card with TCGplayer (USD) or Cardmarket (EUR) prices
const charizard = await client.cards.get(data[0].id, {
currency: "usd"
});
// Every row has one market_price for its exact condition and printing variant
console.log(charizard.prices[0].market_price); // 285
// Cursor-paginated Cardmarket offers are language-matched to the card
const 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 filter
const 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.

Free

$0/mo

For side projects and prototyping

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

Pro

$14.99/mo

For apps and tools in production

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

Business

$89.99/mo

For high-volume commercial use

Features

Everything in Pro, plus

  • 200,000 credits / day
  • 200 requests / minute
  • Unlimited API keys

Frequently asked questions