The Best TCGPlayer API Alternative for Developers in 2026
TCGPlayer shut down API access for new developers. Here's how to get real-time trading card game pricing data for Pokemon, Magic, Yu-Gi-Oh!, and 89+ more games using TCG API.
If you’ve tried to get access to the TCGPlayer API recently, you already know the problem: TCGPlayer closed API access to new developers. No application form, no waitlist — just a dead end.
This has left thousands of developers, store owners, and hobbyists scrambling for alternatives. Whether you’re building a price tracker, a collection manager, a store inventory tool, or a Discord bot, you need reliable card pricing data — and TCGPlayer was the only game in town.
Until now.
Why TCGPlayer Closed Their API
In late 2024, TCGPlayer (now owned by eBay) quietly stopped accepting new API applications. Existing API keys still work for some developers, but:
- No new signups — the application page redirects to a generic help article
- Existing keys are being deprecated — many developers report their keys stopped working
- No official timeline — TCGPlayer hasn’t announced when (or if) they’ll reopen access
- eBay integration — the platform is increasingly merging with eBay’s infrastructure
For developers building TCG-related tools, this created an enormous gap in the market. Card pricing data powers everything from buy/sell bots to collection trackers to store pricing tools.
What Developers Actually Need
Based on conversations with hundreds of developers in the TCG community, here’s what matters:
- Multi-game coverage — Not just Pokemon or MTG. Developers want One Piece, Lorcana, Flesh and Blood, Yu-Gi-Oh!, and more
- Real-time prices — Stale data is useless for trading and arbitrage
- Per-printing prices — Normal vs Foil/Holofoil pricing (not just a single price point)
- Simple REST API — No complex OAuth flows, SDKs, or rate limit games
- Affordable pricing — Free tier for testing, reasonable paid plans for production
- Sealed product data — Booster boxes, ETBs, and other sealed products alongside singles
TCG API: Built for This Exact Problem
TCG API was built specifically because TCGPlayer closed their doors. Here’s what we offer:
89+ Games (More Than Any Alternative)
While most alternatives focus on 1-3 games, TCG API covers every game on TCGPlayer — all 89+ of them. That includes:
- Pokemon — 200+ sets, 30,000+ cards
- Magic: The Gathering — 430+ sets, 110,000+ cards
- Yu-Gi-Oh! — 600+ sets, 45,000+ cards
- Disney Lorcana — All sets, updated daily
- One Piece Card Game — All sets, updated daily
- Flesh and Blood — All sets, updated daily
- Star Wars: Unlimited, Digimon, Dragon Ball Super, Weiss Schwarz, and 58 more
Browse all supported games at tcgapi.dev/games.
Real-Time Pricing with Per-Printing Data
Every card has separate pricing for each printing type:
{ "name": "Charizard ex", "set": "Obsidian Flames", "prices": { "Normal": { "market_price": 12.45, "low_price": 10.99, "mid_price": 12.50, "change_24h": 0.35, "change_7d": -0.80, "change_30d": 2.15 }, "Holofoil": { "market_price": 45.99, "low_price": 42.00, "mid_price": 46.50, "change_24h": 1.20 } }}Price changes are tracked across 24-hour, 7-day, and 30-day windows — no need to store historical data yourself (though we offer that on Pro plans too).
Dead-Simple Integration
No OAuth, no API application process, no approval wait. Sign up, get a key, start making requests:
# Search for any card across all gamescurl "https://api.tcgapi.dev/v1/search/cards?q=charizard"
# Get all Pokemon setscurl "https://api.tcgapi.dev/v1/games/pokemon/sets"
# Get prices for a specific cardcurl "https://api.tcgapi.dev/v1/cards/12345" \ -H "Authorization: Bearer YOUR_API_KEY"JavaScript:
const response = await fetch( 'https://api.tcgapi.dev/v1/search/cards?q=charizard&game=pokemon', { headers: { 'Authorization': 'Bearer YOUR_API_KEY' } });const data = await response.json();console.log(data.data[0].prices);Python:
import requests
response = requests.get( 'https://api.tcgapi.dev/v1/search/cards', params={'q': 'charizard', 'game': 'pokemon'}, headers={'Authorization': 'Bearer YOUR_API_KEY'})cards = response.json()['data']print(cards[0]['prices'])How TCG API Compares
| Feature | TCGPlayer API | JustTCG | TCG API |
|---|---|---|---|
| New signups | Closed | Open | Open |
| Games covered | 89+ (existing keys) | ~3 | 89+ |
| Free tier | No | Limited | 100 req/day |
| Per-printing prices | Yes | Partial | Yes |
| Price history | Limited | No | Yes (Pro+) |
| Sealed products | Yes | No | Yes |
| Bulk endpoints | Limited | No | Yes (Pro+) |
| Rate limits | Strict | Unknown | Transparent |
| Search | Full-text | Basic | Full-text |
Pricing That Makes Sense
We know most developers start with a side project. That’s why the free tier exists:
- Free — 100 requests/day, no credit card, perfect for testing
- Hobby ($9.99/mo) — 1,000 req/day, 7-day price history
- Starter ($19.99/mo) — 2,500 req/day, 30-day history, set data dumps
- Pro ($49.99/mo) — 10,000 req/day, full history, bulk endpoints, commercial license
- Business ($99.99/mo) — 50,000 req/day, everything in Pro with higher limits
Annual plans save 17%. See full details at tcgapi.dev/pricing.
Migration Guide: TCGPlayer API → TCG API
If you have existing code that used the TCGPlayer API, here’s how the endpoints map:
Listing Games/Categories
# TCGPlayer (old)GET /catalog/categories
# TCG APIGET /v1/gamesSearching Cards
# TCGPlayer (old)GET /catalog/products?categoryId=1&productName=charizard
# TCG APIGET /v1/search/cards?q=charizard&game=pokemonGetting Prices
# TCGPlayer (old)GET /pricing/product/12345
# TCG APIGET /v1/cards/12345# (prices included in card response)The response formats are similar but simplified. Check our Quick Start guide for a complete walkthrough.
What Developers Are Building
Since launching, developers have used TCG API to build:
- Price tracking bots for Discord and Telegram
- Collection managers that track portfolio value across games
- Store pricing tools that auto-update inventory prices
- Arbitrage finders that compare prices across platforms
- Deck builders with real-time price estimates
- Investment trackers for sealed product prices
Get Started in 2 Minutes
- Sign up at tcgapi.dev/signup (no credit card required)
- Get your API key from the dashboard
- Make your first request — try searching for your favorite card
- Read the docs at tcgapi.dev/introduction
The free tier gives you 100 requests per day — enough to build and test your entire integration before committing to a paid plan.
Have questions? Join our Discord community or email us at [email protected].
Ready to get started?
Free tier includes 100 requests per day. No credit card required.