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:
A Card has gameplay properties; a Printing has physical-object properties. Effects, costs, and stats live on Cards because they’re identical across every printing. Art, rarity, foil treatment, and set membership live on Printings because they’re what differentiate one printed copy from another.
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.

