$ curl https://api.tcgpricelookup.com/v1/search

The fastest
TCG Price API
for developers

Real-time card pricing API for Pokemon, Magic: The Gathering, Yu-Gi-Oh!, Lorcana, One Piece, and 3 more games. 300,000+ cards, 5 official SDKs, free tier included.

300,000+ Cards
8 Games
5 SDKs
2 Markets
Free Tier
24/7 Updates
Quick start JavaScript
// Search for any card across all 8 games
import { TCGLookup } from 'tcglookup';

const tcg = new TCGLookup({ apiKey: 'your-key' });
const cards = await tcg.search('charizard');
// 47 results, real-time prices from TCGPlayer + eBay

const card = await tcg.getCard('pokemon-sv4-charizard-ex-006');
// Market price, per-condition, PSA/BGS/CGC graded values

How the TCG API Works

Get from zero to live card price data in under 5 minutes. Three steps, no configuration headaches.

01

Get your free API key

Sign up at tcgpricelookup.com — no credit card required. Your API key is generated instantly and works across all 8 supported games. The free tier gives you 200 requests per day to start building immediately.

API key: tpl_live_xxxxxxxxxxxx
02

Install an SDK

Pick your language. Official SDKs cover JavaScript, Python, Go, Rust, and PHP. Each SDK is maintained by the TCG Price Lookup team, fully typed, and ships with zero dependencies where possible.

$ npm install tcglookup
03

Query card prices

Search by card name, set, or ID. Get real-time prices from TCGPlayer and eBay, per-condition values, graded prices, and historical price trends — all from one unified API.

search GET /v1/search?q=charizard
card GET /v1/cards/:id
history GET /v1/cards/:id/prices
batch POST /v1/cards/batch

What You Can Build

The TCG card price API powers everything from hobbyist scripts to production trading apps. Here's what developers are building.

💰

Price Comparison Tools

Show TCGPlayer market prices alongside eBay sold listings side by side. Help buyers find the best deal and sellers set competitive prices. The API returns both markets in a single response.

📊

Portfolio Trackers

Let collectors input their cards and track collection value over time. Use the price history endpoint to chart gains and losses. A popular use case for the Pokemon TCG API and MTG API alike.

🤖

Discord Bots

Add slash commands to your TCG Discord server so members can look up card prices without leaving the chat. Our open-source Discord Bot starter is ready to deploy in minutes and covers all 8 games.

🔄

Trading Apps

Power buy/sell/trade interfaces with real-time price data. Show fair trade values, flag underpriced listings, and help traders make data-driven decisions. Supports bulk lookups for entire deck lists.

🔔

Price Alerts

Monitor specific cards and notify users when prices cross a threshold. Poll the API on a schedule or use webhook notifications on paid plans. Great for investment-focused collectors and resellers.

📈

Analytics Dashboards

Build price history charts, set-wide trend analysis, and market cap estimates for entire sets. The price history endpoint returns daily snapshots going back months, ideal for data visualization.

TCG API for Every Game

One API key. Eight games. Whether you need a Pokemon TCG API, an MTG API, a Yu-Gi-Oh! API, or coverage for newer games like Lorcana and One Piece — it's all here with a single unified interface.

Pokemon

30,000+ cards

Access real-time pricing for over 30,000 Pokemon TCG cards. Search by name, set, or card number. Get per-condition pricing from Near Mint to Damaged, plus PSA, BGS, and CGC graded values.

View Pokemon API docs →
Pokemon API example JavaScript
const results = await tcg.search('charizard', { game: 'pokemon' });
// Returns: prices for all Charizard cards across all sets

Magic: The Gathering

100,000+ cards

Access real-time pricing for over 100,000 Magic: The Gathering cards. Complete coverage of all sets from Alpha to the latest release. Per-condition and graded pricing.

View Magic: The Gathering API docs →
Magic: The Gathering API example JavaScript
const results = await tcg.search('black lotus', { game: 'mtg' });
// Returns: prices for Black Lotus across all editions

Yu-Gi-Oh!

40,000+ cards

Access real-time pricing for over 40,000 Yu-Gi-Oh! cards. Coverage spans all sets and rarities with per-condition and graded card values.

View Yu-Gi-Oh! API docs →
Yu-Gi-Oh! API example JavaScript
const results = await tcg.search('blue-eyes white dragon', { game: 'yugioh' });
// Returns: prices for Blue-Eyes White Dragon across all sets

Disney Lorcana

3,000+ cards

Access real-time pricing for over 3,000 Disney Lorcana cards. Full coverage since launch with per-condition pricing and graded values.

View Disney Lorcana API docs →
Disney Lorcana API example JavaScript
const results = await tcg.search('elsa', { game: 'lorcana' });
// Returns: prices for all Elsa cards

One Piece

6,000+ cards

Access real-time pricing for over 6,000 One Piece TCG cards. Complete set coverage with per-condition pricing and graded values.

View One Piece API docs →
One Piece API example JavaScript
const results = await tcg.search('luffy', { game: 'onepiece' });
// Returns: prices for all Luffy cards

Pokemon Japan

20,000+ cards

Access real-time pricing for over 20,000 Japanese Pokemon TCG cards. Covers Japanese-exclusive sets, promos, and special releases.

View Pokemon Japan API docs →
Pokemon Japan API example JavaScript
const results = await tcg.search('pikachu', { game: 'pokemonjp' });
// Returns: prices for Japanese Pikachu cards

Star Wars: Unlimited

2,500+ cards

Access real-time pricing for over 2,500 Star Wars: Unlimited cards. Full coverage with per-condition pricing and graded values.

View Star Wars: Unlimited API docs →
Star Wars: Unlimited API example JavaScript
const results = await tcg.search('darth vader', { game: 'swu' });
// Returns: prices for all Darth Vader cards

Flesh and Blood

8,000+ cards

Access real-time pricing for over 8,000 Flesh and Blood cards. Complete coverage with per-condition pricing and graded values.

View Flesh and Blood API docs →
Flesh and Blood API example JavaScript
const results = await tcg.search('bravo', { game: 'fab' });
// Returns: prices for all Bravo cards

TCG API vs Alternatives

Choosing the best TCG API for your project? Here's how TCG Price Lookup compares to Scryfall, pokemontcg.io, the TCGPlayer API, and building your own scraper.

Feature TCG Price Lookup Scryfall API pokemontcg.io TCGPlayer API DIY Scraper
Games covered 8 games MTG only Pokemon only Many (varies) You decide
Real-time prices Partial (TCGP) ✓ (TCGP only) Maybe
Per-condition pricing Manual
Graded card prices (PSA/BGS/CGC) Manual
Official SDKs 5 languages Community only 1 (JS)
Free tier ✓ 200 req/day No pricing data No pricing data Apply required ✓ (your cost)
Price history Limited Build yourself
Rate limits 1 req/3s free 10/sec ~20k/day Varies IP-based
eBay sold prices Manual

Developer Ecosystem

Beyond the REST API, the TCG Price Lookup ecosystem includes official SDKs in 5 languages, ready-to-use tools, and a comprehensive developer documentation suite.

Official SDKs — 6 languages

CLI Tool

GitHub →

Live trading card prices in your terminal. Search, lookup, price history, JSON output for scripting. Also installable via npm.

$ brew tap TCG-Price-Lookup/tcg && brew install tcglookup
  • Search cards from terminal
  • Price history lookups
  • JSON output for scripting

Go SDK

GitHub →

Official Go SDK for the TCG Price Lookup API. Idiomatic Go, stdlib net/http, zero third-party deps, functional options, typed errors.

$ go get github.com/TCG-Price-Lookup/tcglookup-go
  • Zero third-party dependencies
  • Idiomatic Go design
  • Functional options pattern

JavaScript / TypeScript SDK

GitHub →

Official JavaScript/TypeScript SDK for the TCG Price Lookup API. Zero deps, ESM + CJS, works in Node 18+, browsers, Bun, Deno, Cloudflare Workers.

$ npm install tcglookup
  • Zero dependencies
  • ESM and CommonJS support
  • Full TypeScript types

PHP SDK

GitHub →

Official PHP SDK for the TCG Price Lookup API. PHP 8.1+, Guzzle, PSR-4, typed exception hierarchy.

$ composer require tcg-price-lookup/tcglookup
  • PHP 8.1+ support
  • Guzzle HTTP client
  • PSR-4 autoloading

Python SDK

GitHub →

Official Python SDK for the TCG Price Lookup API. Python 3.9+, built on httpx, typed exception hierarchy, context manager support.

$ pip install tcglookup
  • Python 3.9+ support
  • Built on httpx (async ready)
  • Typed exception hierarchy

Rust SDK

GitHub →

Official Rust SDK for the TCG Price Lookup API. Async with reqwest + tokio, typed Error enum, builder pattern.

$ cargo add tcglookup
  • Async with reqwest + tokio
  • Typed Error enum
  • Builder pattern

Tools & Resources — 5 tools

Awesome TCG

list

Curated list of the TCG Price Lookup ecosystem — REST API, 5 SDKs, CLI, code examples in 8 languages, blog tutorials.

github.com/TCG-Price-Lookup/awesome-tcg#readme →

Discord Bot

bot

Self-hosted Discord bot for live trading card prices. Slash commands powered by the TCG Price Lookup API. Supports all 8 games.

github.com/TCG-Price-Lookup/tcg-discord-bot#readme →

Next.js Starter

starter

One-click deployable Next.js 16 starter for the TCG Price Lookup API. Search live trading card prices across 8 games out of the box.

$ npx create-next-app -e https://github.com/TCG-Price-Lookup/nextjs-tcg-starter

OpenAPI Specification

spec

OpenAPI 3.1 specification for the TCG Price Lookup API. Use with Swagger UI, Redoc, Postman, or any OpenAPI-compatible tool.

github.com/TCG-Price-Lookup/tcg-api-openapi#readme →

Postman Collection

collection

Ready-to-use Postman collection and environment for the TCG Price Lookup API. Import, set your API key, and start testing.

github.com/TCG-Price-Lookup/tcg-api-postman#readme →

Frequently Asked Questions

Everything you need to know about the TCG Price Lookup API — from getting started to rate limits and graded card pricing.

What is a TCG API?

+

A TCG API (Trading Card Game API) is a web service that provides programmatic access to trading card data — including card details, set information, and real-time market prices. Developers use TCG APIs to build price trackers, portfolio tools, Discord bots, and more without having to scrape websites manually.

Is the TCG Price Lookup API free?

+

Yes, TCG Price Lookup offers a free tier with 200 requests per day for hobby projects and prototyping (non-commercial use). Paid plans unlock higher rate limits, price history endpoints, eBay pricing, graded card values, and commercial use rights. No credit card is required to get started.

Which trading card games does the API support?

+

The API currently covers 8 games: Pokemon TCG (English), Pokemon Japan, Magic: The Gathering, Yu-Gi-Oh!, Disney Lorcana, One Piece TCG, Star Wars: Unlimited, and Flesh and Blood. All games share the same unified search and card endpoints.

How do I get a Pokemon TCG API key?

+

Sign up at tcgpricelookup.com, verify your email, and your API key is generated instantly. You can start making requests to the Pokemon TCG API (and all other supported games) immediately — no approval process required.

What's the difference between TCG Price Lookup API and pokemontcg.io?

+

pokemontcg.io is a card data API focused on Pokemon only — it provides card text, images, and set data but does not include real-time market prices from TCGPlayer or eBay. TCG Price Lookup API focuses on live pricing across 8 games with per-condition and graded card values, making it better suited for price-related applications.

Does the API include graded card prices (PSA, BGS, CGC)?

+

Yes. In addition to raw (ungraded) per-condition prices from Near Mint to Heavily Played, the API returns graded card values from PSA (grades 1–10), Beckett (BGS 7–10 including 9.5 and 10 Black Label), and CGC (grades 1–10). Graded prices are sourced from eBay sales data. Graded prices require the Trader plan or above.

Can I use the API to build a Discord bot?

+

Absolutely. The official Discord Bot starter (open source) uses the TCG Price Lookup API and supports slash commands for card price lookups across all 8 games. You can self-host it or fork it for your own community. The JavaScript and Python SDKs also make building custom bots straightforward.

What SDKs are available?

+

There are 5 official SDKs: JavaScript/TypeScript (npm install tcglookup), Python (pip install tcglookup), Go (go get github.com/TCG-Price-Lookup/tcglookup-go), Rust (cargo add tcglookup), and PHP (composer require tcg-price-lookup/tcglookup). A CLI tool is also available for terminal-based access.

How often are card prices updated?

+

Card prices are updated continuously — TCGPlayer market prices typically refresh every few hours as new sales data becomes available. eBay sold listings are updated daily. For the most time-sensitive applications, the API also provides price history endpoints so you can track trends over time.

What are the API rate limits?

+

The free tier allows up to 200 requests per day (burst: 1 req/3s). The Trader plan ($14.99/month) provides 10,000 requests per day (burst: 1 req/s). The Business plan ($89.99/month) provides 100,000 requests per day (burst: 3 req/s). Daily limits reset at midnight UTC.

Start building with the TCG API today

Free tier included. No credit card required. 300,000+ cards across 8 games available instantly.