Core concepts
The graph
Species ──< Card >── Set ── Series
│
└──< Printing ── prices, marketplace IDs, links
- Species: a Pokémon, by National Pokédex number (
nationalDex: 6) or slug (charizard). It has forms (regional, Mega, Gigantamax) with types, stats and abilities, an evolution line, and its cards. - Set: an expansion or promo set.
codeis our ID, e.g.sv03.5(151) orme03(Perfect Order). - Card: a card as printed in one set: attacks, HP, rarity, illustrator, rules text.
codeis<set code>-<number>, e.g.sv03.5-006. Each card links to the species on it (species); tag-team cards link several, andcameo: truemarks Pokémon that only appear in the artwork. - Printing: one collectible variant of a card (normal, reverse holo, holo, 1st Edition, stamped, Poké Ball pattern…). Prices and marketplace IDs live here, because that's the unit people buy and sell.
Regions and languages
region: INTERNATIONALsets are printed in English and European languages, and share one card list across those languages.localizedNamesandname(locale: "fr")give the translations.region: ASIAsets are the Japanese, Korean, Chinese, Indonesian and Thai releases, which have their own set lists. Their codes start withasia:, e.g.asia:SV2aandasia:SV2a-006.Set.digitalistruefor Pokémon TCG Pocket (app-only cards with no physical printing or price).
Lists and pagination
List fields (cards, sets, speciesList, sealedProducts, Set.cards, Species.cards) are cursor-paginated connections: ask for first (default 25, at most 100), and pass pageInfo.endCursor back as after:
{
cards(filter: { nationalDex: 25, region: INTERNATIONAL }, first: 50) {
nodes { code name set { name } }
pageInfo { hasNextPage endCursor }
}
}
cards(filter:) accepts name, setCode, region, supertype (POKEMON, TRAINER, ENERGY), nationalDex, type, rarity, illustrator, regulationMark, standardLegal and digital; all given filters must match. orderBy is RELEASE_DATE_DESC (default), RELEASE_DATE_ASC or NAME.
Global IDs
Every Card, Set, Species, Printing and SealedProduct also has an opaque id you can fetch with node(id:). Prefer code / nationalDex in your own data: they're readable and stable.
This page as Markdown: /docs/concepts.md