TL;DR
The Pokémon TCG API provides searchable access to every official Pokémon Trading Card Game card, set, and collection from the Base Set (1999) through the latest Scarlet & Violet expansion. Search by card name, Pokémon type, set, illustrator, rarity, and HP. Returns high-resolution card images, attack details, weakness/resistance info, and rule text. No API key required. Covers over 14,000 unique cards across all generations.
Quick start: https://api.pokemontcg.io/v1/cards?name=pikachu
No API key needed — community Pokémon database!
How to Use This API
1. Search by Card Name
https://api.pokemontcg.io/v1/cards?name=pikachu
2. Filter by Type and Set
https://api.pokemontcg.io/v1/cards?type=Fire&set.name=base
3. Get All Cards in a Set
https://api.pokemontcg.io/v1/sets
4. JavaScript — Card Search and Display
async function findPokemon(name) {
const r = await fetch(`https://api.pokemontcg.io/v1/cards?name=${name}`);
const data = await r.json();
return data.cards;
}
findPokemon('charizard').then(cards => {
cards.slice(0, 3).forEach(c => {
console.log(`${c.name} (${c.set.name} #${c.number})`);
console.log(' HP:', c.hp, '| Type:', c.types?.join(', '));
console.log(' Attacks:', c.attacks?.map(a => a.name).join(', '));
console.log(' Rarity:', c.rarity);
});
});
5. Python — Find Rare Cards in a Set
import requests
r = requests.get('https://api.pokemontcg.io/v1/cards',
params={'set.name': 'Evolving Skies', 'rarity': 'Ultra Rare'})
cards = r.json().get('cards', [])
for c in cards:
print(f"{c['name']} — {c['number']}/{c['set']['printedTotal']}")
prices = c.get('tcgplayer', {}).get('prices', {})
if prices:
print(f" Market: ${prices.get('normal', {}).get('market', 'N/A')}")
Search "pikachu":
https://api.pokemontcg.io/v1/cards?name=pikachu&pageSize=3
Frequently Asked Questions
- How many cards does the API cover?
- Over 14,000 unique cards across all official sets from Base Set (1999) to the latest Scarlet & Violet expansion.
- Can I filter by card number within a set?
- Yes — use
set.id=base1&number=25to find a specific numbered card in a specific set (e.g., base set #25 Pikachu). - Does it include card prices?
- When available, the API returns TCGplayer pricing data including market price, low price, and high price for each card.
- Are high-resolution images provided?
- Yes — each card has both
imageUrl(normal) andimageUrlHiResfor zoomable card scans. - Can I search by illustrator or artist?
- Yes — use
artist=Ken+Sugimorito find all cards illustrated by a specific artist. - Is the API suitable for card grading apps?
- Absolutely — the combination of set, number, and card identifiers makes it perfect for grading inventory and collection management tools.
API Details
- API URL
https://api.pokemontcg.io/v1/cards- Documentation
- pokemontcg.io
- Category
- Games
- Authentication
- Not Required
- Geographic Coverage
- Global — all languages and regional sets
What You Can Build
- Pokemon card collection inventory with value tracking
- Deck builder with type-gym leader challenge validation
- Booster pack opening simulator for any set
- Card price alert system using TCGplayer market data
- Set completion checklist with visual gallery view