Skip to content
On This Page

Card (Atomic)

The Card (Atomic) Data Model describes the properties of a single "atomic" card, an oracle-like entity of a card that only has evergreen properties that would never change from printing to printing.

Accessing the data

When using any Atomic-like file, the Card (Atomic) Data Model is accessed through a single index array where its parent property is the card's name property. Here is a reduced payload of the model as an example:

TypeScript
{
  data: Record<string, CardAtomic[]>;
}

and accessing the data would look like this:

TypeScript
const card: CardAtomic = data["Phelddagrif"][0];

TypeScript Model

Show/Hide Model
TypeScript
export type CardAtomic = {
  asciiName?: string;
  attractionLights?: string[];
  colorIdentity: string[];
  colorIndicator?: string[];
  colors: string[];
  convertedManaCost: number;
  defense?: string;
  edhrecRank?: number;
  edhrecSaltiness?: number;
  faceConvertedManaCost?: number;
  faceManaValue?: number;
  faceName?: string;
  firstPrinting?: string;
  foreignData?: ForeignData[];
  hand?: string;
  hasAlternativeDeckLimit?: boolean;
  identifiers: Identifiers;
  isFunny?: boolean;
  isReserved?: boolean;
  keywords?: string[];
  layout: string;
  leadershipSkills?: LeadershipSkills;
  legalities: Legalities;
  life?: string;
  loyalty?: string;
  manaCost?: string;
  manaValue: number;
  name: string;
  power?: string;
  printings?: string[];
  purchaseUrls: PurchaseUrls;
  relatedCards: RelatedCards;
  rulings: Rulings[];
  side?: string;
  subsets?: string[];
  subtypes: string[];
  supertypes: string[];
  text?: string;
  toughness?: string;
  type: string;
  types: string[];
};

Model Properties

asciiName optional

The ASCII (Basic/128) code formatted card name with no special unicode characters.

  • Type: string
  • Introduced: v5.1.0

attractionLights optional

A list of attraction lights found on a card, available only to cards printed in certain Un-sets.

  • Type: string[]
  • Introduced: v5.2.1

colorIdentity

A list of all the colors found in manaCost, colorIndicator, and text properties.

  • Type: string[]
  • Introduced: v4.0.0

colorIndicator optional

A list of all the colors in the color indicator. This is the symbol prefixed to a card's types.

  • Type: string[]
  • Introduced: v4.0.2

colors

A list of all the colors in manaCost and colorIndicator properties. Some cards may not have values, such as cards with "Devoid" in its text.

  • Type: string[]
  • Introduced: v4.0.0

convertedManaCost deprecated

The converted mana cost of the card.

This property is deprecated. Use the manaValue property instead.

  • Type: float
  • Introduced: v4.0.0

defense optional

The defense of the card. Used on battle cards.

  • Type: string
  • Introduced: v5.2.1

edhrecRank optional

The card rank on EDHRec.

  • Type: number
  • Introduced: v4.5.0

edhrecSaltiness optional

The card saltiness score on EDHRec.

  • Type: float
  • Introduced: v5.2.1

faceConvertedManaCost deprecatedoptional

The converted mana cost or mana value for the face for either half or part of the card.

This property is deprecated. Use the faceManaValue property instead.

  • Type: float
  • Introduced: v4.1.1

faceManaValue optional

The mana value of the face for either half or part of the card.

  • Type: float
  • Introduced: v5.2.0

faceName optional

The name on the face of the card.

  • Type: string
  • Introduced: v5.0.0

firstPrinting optional

The set code the card was first printed in.

  • Type: string
  • Introduced: v5.2.1

foreignData optional

A list of data properties in other languages. See the Foreign Data Data Model.

  • Type: ForeignData[]
  • Introduced: v5.2.1

hand optional

The starting maximum hand size total modifier. A + or - character precedes a number. Used only on cards with "Vanguard" in its types.

  • Type: string
  • Introduced: v4.2.1

hasAlternativeDeckLimit optional

If the card allows a value other than 4 copies in a deck.

  • Type: boolean
  • Introduced: v5.0.0

identifiers

The identifiers associated to a card. See the Identifiers Data Model.

  • Type: Identifiers
  • Introduced: v5.1.0

isFunny optional

If the card is part of a funny set, such as an Un-set.

  • Type: boolean
  • Introduced: v5.2.1

isReserved optional

If the card is on the Magic: The Gathering Reserved List.

  • Type: boolean
  • Introduced: v4.0.1

keywords optional

A list of keywords found on the card.

  • Type: string[]
  • Introduced: v5.1.0

layout

The type of card layout.

  • Type: string
  • Introduced: v4.0.0

leadershipSkills optional

The formats the card is legal to be a commander in. See the Leadership Skills Data Model.

  • Type: LeadershipSkills
  • Introduced: v4.5.1

legalities

The legalities of play formats for this printing of the card. See the Legalities Data Model.

  • Type: Legalities
  • Introduced: v4.0.0

life optional

The starting life total modifier. A + or - character precedes a number. Used only on cards with "Vanguard" in its types.

  • Type: string
  • Introduced: v4.2.1

loyalty optional

The starting loyalty value of the card. Used only on cards with "Planeswalker" in its types.

  • Type: string
  • Introduced: v4.0.0

manaCost optional

The mana cost of the card wrapped in curly brackets for each mana symbol value.

  • Type: string
  • Example: "{1}{B}"
  • Introduced: v4.0.0

manaValue

The mana value of the card.

  • Type: float
  • Introduced: v5.2.0

name

The name of the card. Cards with multiple faces are given a // delimiter.

  • Type: string
  • Example: "Wear // Tear"
  • Introduced: v4.0.0

power optional

The power of the card.

  • Type: string
  • Introduced: v4.0.0

printings optional

A list of printing set codes the card was printed in, formatted in uppercase.

  • Type: string[]
  • Introduced: v4.0.0

purchaseUrls

Links that navigate to websites where the card can be purchased. See the Purchase Urls Data Model.

  • Type: PurchaseUrls
  • Introduced: v4.4.0

relatedCards

The related cards for this card. See the Related Cards Data Model.

  • Type: RelatedCards
  • Introduced: v5.2.1

rulings

A list of the official rulings of the card. See the Rulings Data Model.

  • Type: Rulings[]
  • Introduced: v4.0.0

side optional

The identifier of the card side. Used on cards with multiple faces on the same card.

  • Type: string
  • Introduced: v4.1.0

subsets optional

The names of the subset printings a card is in. Used primarily on "Secret Lair Drop" cards.

  • Type: string[]
  • Introduced: v5.2.1

subtypes

A list of card subtypes found after em-dash.

  • Type: string[]
  • Introduced: v4.0.0

supertypes

A list of card supertypes found before em-dash.

  • Type: string[]
  • Introduced: v4.0.0

text optional

The rules text of the card.

  • Type: string
  • Introduced: v4.0.0

toughness optional

The toughness of the card.

  • Type: string
  • Introduced: v4.0.0

type

The type of the card as visible, including any supertypes and subtypes are given a - delimiter if appropriate.

  • Type: string
  • Introduced: v4.0.0

types

A list of all card types of the card, including Un‑sets and gameplay variants.

  • Type: string[]
  • Introduced: v4.0.0