The graph
- Series group sets by release era — First Edition, Kickstarter, Organized Play, etc.
- Sets are product releases. A booster pack, a starter deck, a specialty box.
- Printings are the physical cards you hold. Each printing belongs to exactly one set and is one of (potentially many) printings of a Card.
- Cards are the gameplay entities. The thing that has a
class,cost,attack,defense, andeffects. The same Card can be reprinted in different sets, with different art, in different rarities — every reprint is a new Printing of the same Card. - Creatures are the underlying lineage: the Pyrotter creature, depicted across multiple Cards (a basic, an evolved form, an alt-art).
Card vs Printing — the distinction
This is the question every TCG-API integration eventually hits. The short version:| If you’re asking… | You want… |
|---|---|
| ”What’s this card’s effect?” | Card |
| ”What’s this card’s attack stat?” | Card |
| ”Is this card banned in Standard format?” | Card |
| ”What sets has this card appeared in?” | Card → its printings |
| ”What art is on this physical card I’m holding?” | Printing |
| ”What’s the rarity / collector number of this physical card?” | Printing |
| ”Is this a holo, reverse holo, or non-foil?” | Printing → variants |
| ”What’s the price?” (future, partner-tier) | Printing |
Worked example
Searching forPyrotter:
et-100 (the basic) and et-128 (the evolution). Both share creature.id = "el-12" because they depict the same Pyrotter lineage.
For each Card, you can list its printings:
cd-1813 (First Edition basic, common rarity) and cd-2105 (a Kickstarter foil reprint, stellar rare). Same Card, two physical objects.
Reference convenience: base_printing_id
Every Card has a base_printing_id pointing at its canonical printing — typically the first non-promo printing. Use this when you need a single representative image or rarity for a Card and don’t want to fetch the full printings list.
What you don’t get
A few relationships that the underlying database has but the public API deliberately doesn’t expose:- Variants beyond the rarity tier. A printing’s foil pattern, frame material, and canvas are exposed; print-run size and serialization details typically aren’t (except
serialized.populationfor serialized cards). - Pre-release or unreleased sets. Sets are filtered by
release_date <= today. A leaked spoiler or an internal preview won’t show up on/v1/sets. - Pricing. No price, market value, or population data on any tier today. See Images for the future-feature flag on this.
Where to go next
Identifiers
Every ID prefix and what it points at.
Enums
Every closed-set value: classes, elements, rarities, holo patterns.
Banlists & formats
How card legality is encoded.
Rulings
Official clarifications attached to a Card.