API Getting Started
Live Pokémon TCG market data — try the playground free, then unlock the full API
Last updated:
Try it nowLink copied!
No signup required. Paste either command in your terminal:
Trending leaderboard
curl "https://silphcoanalytics.xyz/api/v3/trending?limit=5"Card sales (playground)
Example: Pikachu ex SIR from Ascended Heroes — same URL as on each card page. 1 req/s, up to 50 rows, no API key.
curl "https://silphcoanalytics.xyz/api/v3/cards/me2pt5-276/sales?limit=50"Playground responses include X-LOR-Tier: playground. Want more? Sign in for a free API key (100 requests/day).
RecipesLink copied!
Three common starting points. Replace YOUR_API_KEY with a key from the dashboard.
1. Deal finder
Search listings and compare against Live Mark Pricing.
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://silphcoanalytics.xyz/api/v3/search?q=charizard&limit=5"2. Price history chart
One card with graded price history — great for bots and dashboards.
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://silphcoanalytics.xyz/api/v3/cards/me2pt5-276/chart-series"3. Market pulse
30-day volume across sets and marketplaces.
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://silphcoanalytics.xyz/api/v3/market/volume?days=30&language=en"4. Multi-card batch (Pro / Elite only)
Load up to 50 cards (Pro) or 100 (Elite) in one request for portfolios and bots. Free keys get HTTP 403. Each unique id costs one daily quota unit.
curl -X POST -H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"ids":["base1-4","sv3-197","swsh12pt5-159"],"game":"pokemon","profile":"core"}' \
"https://silphcoanalytics.xyz/api/v3/cards/batch"Quick startLink copied!
- Create an account and generate an API key at the dashboard.
- Send the key as a Bearer token on every request.
- Browse the interactive reference for parameters and response shapes.
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://silphcoanalytics.xyz/api/v3/cards?limit=1"AuthenticationLink copied!
Most /api/v3 data routes require Authorization: Bearer YOUR_API_KEY. Requests without a valid key return HTTP 401.
Playground plus Free / Pro / Elite apply at https://silphcoanalytics.xyz:
| Tier | Auth | Limits |
|---|---|---|
| Playground | No API key | 1 req/s, 50-row cap · 3 days of history |
| Free | Bearer API key | 100 requests/day · 3 days of history |
| Pro | Bearer API key | 2,000 requests/day · 7 days of history |
| Elite | Bearer API key | 10,000 requests/day · Card Signals API · Full unrestricted history |
History windows are enforced: the public edge clamps since / date_from to your tier (see X-Silph-History-Days response headers).
Playground routes work without a key on the same URLs:
/api/v3/cards/{id}/api/v3/cards/{id}/sales/api/v3/cards/{id}/tcgplayer-history/api/v3/trending
Add a Bearer token on any route to use your account tier. Per-card sales return up to 200 rows per request and include next_cursor for paging within your history window. Responses include X-LOR-Tier (playground vs authenticated).
Check daily usage with GET /keys/usage using the same Bearer token (includes history_days).
Beta: GET /api/v3/shop/listings is available but not suitable for production integrations. Deal scores and platform freshness are experimental — verify listings before acting on them.
EndpointsLink copied!
Base URL: https://silphcoanalytics.xyz/api/v3
Cards
| Method | Path | Description |
|---|---|---|
| GET | /api/v3/cards | List and filter cards |
| GET | /api/v3/cards/{id} | Card detail |
| GET | /api/v3/cards/{id}/analytics | Card analytics |
| GET | /api/v3/cards/{id}/chart-series | Product chart series (realized sales ribbon) |
| GET | /api/v3/cards/{id}/price-history | Oracle price history (method=fmv|tvwap|median) |
| GET | /api/v3/cards/{id}/sales | Verified sales across marketplaces for one card |
| GET | /api/v3/cards/{id}/tcgplayer-history | TCGplayer daily price and sales history |
| POST | /api/v3/cards/batch | Batch card-gold core lookup (Pro+/Elite paid only; cost = unique ids; pro max 50, elite max 100) |
Market
| Method | Path | Description |
|---|---|---|
| GET | /api/v3/market/volume | Market-wide volume by set |
| GET | /api/v3/shop/listings | Shop listings across marketplaces (beta) |
Meta
| Method | Path | Description |
|---|---|---|
| POST | /api/v3/me/imports/confirm | /api/v3/me/imports/confirm |
| POST | /api/v3/me/imports/preview | /api/v3/me/imports/preview |
Search
| Method | Path | Description |
|---|---|---|
| GET | /api/v3/lookup | Resolve a card or set identifier |
| GET | /api/v3/search | Full-text card search |
| GET | /api/v3/trending | Trending cards leaderboard |
Sets
| Method | Path | Description |
|---|---|---|
| GET | /api/v3/sets | List sets |
| GET | /api/v3/sets/{id} | Set detail |
| GET | /api/v3/sets/{id}/breakdown | Set sales breakdown |
| GET | /api/v3/sets/{id}/trending-cards | Trending cards in a set |
| GET | /api/v3/sets/{id}/volume-history | Set volume over time |
SQL
| Method | Path | Description |
|---|---|---|
| POST | /api/v3/sql | Read-only SQL against gold datasets |
Response envelopeLink copied!
Every v3 response uses silphco-envelope.v1. The payload lives in data; the contract field names its schema version.
PaginationLink copied!
Lists accept offset and limit (max 200). Per-card sales use an opaque next_cursor to page through history (API key required; playground returns at most 50 rows and next_cursor: null).
ErrorsLink copied!
Errors return contract: "error.v1" with error.code and error.message. HTTP 401 indicates a missing or invalid key. For removed routes, 404 with error.code: "removed" includes error.details.replacement pointing at the supported path.
Finding cardsLink copied!
You do not need a Pokémon TCG card ID to start. Use the same filters as Explore on GET /api/v3/search (with q) or GET /api/v3/cards (browse without q). Resolve fuzzy names with GET /api/v3/lookup, then call GET /api/v3/cards/{id} or /sales once you have an ID.
Shared filters include language, grader, rarity, variant, min_price / max_price, sort, window, slab_only, and raw_only.
Card IdentityLink copied!
Cards are uniquely identified by a combination of set code and print number:
| Type | Format | Examples |
|---|---|---|
| English Cards | {set_id}-{number} | base1-4, sv3-197 |
| Japanese (TCGdex) | {jp_set_code}-{number} | s12a-239, sv4pt5-232 |
| Japanese (TCGCSV) | jp-{slug}-{number} | jp-pokemon-card-151-001 |
Print Variants & FinishesLink copied!
Cards with the same ID can exist in different variant runs or finishes. These are treated as separate asset nodes for pricing and uniqueness:
| Variant Slug | Display Label | Description |
|---|---|---|
| normal | Normal | Standard non-holographic printing finish. |
| holofoil | Holofoil | Standard holographic artwork finish. |
| reverse_holofoil | Reverse Holofoil | Holographic finish applied to the body/frame of the card. |
| 1st_edition | 1st Edition | Early first-edition print run. |
| 1st_edition_holofoil | 1st Edition Holofoil | Early first-edition holographic print run. |
| unlimited | Unlimited | Standard post-first-edition print run. |
| unlimited_holofoil | Unlimited Holofoil | Standard post-first-edition holographic print run. |
| cardmarket | Cardmarket | Cardmarket finish/printing variations. |
ExamplesLink copied!
# Search
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://silphcoanalytics.xyz/api/v3/search?q=charizard&limit=5"
# Card chart series
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://silphcoanalytics.xyz/api/v3/cards/me2pt5-276/chart-series"
# Market volume (30 days)
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://silphcoanalytics.xyz/api/v3/market/volume?days=30&language=en"
# Trending (no API key)
curl "https://silphcoanalytics.xyz/api/v3/trending?limit=5"
# Shop listings (beta — experimental deal scores)
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://silphcoanalytics.xyz/api/v3/shop/listings?limit=5"
# SQL (body field is sql, not query)
curl -H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"sql":"SELECT tcg_card_id FROM pkmn_card_rollup LIMIT 1"}' \
"https://silphcoanalytics.xyz/api/v3/sql"ReferenceLink copied!
- Interactive API reference — parameters, schemas, and try-it-out
- OpenAPI JSON (public) — curated data routes for Postman or typed client generation