Skip to content

The Card object

The Card object is the core data structure used throughout the TCGdx API. It represents a single Pokémon Trading Card Game card with all its properties, variants, and associated metadata.

All cards share common properties, with additional fields specific to their category:

Properties shared by all cards regardless of category:

PropertyTypeRequiredDescription
idString✅Unique identifier for the card (e.g., “swsh3-136”)
localIdString or Number✅Card number within its set
nameString✅Official card name
imageString❌Card image URL (see Assets)
categoryString✅Card type: “Pokemon”, “Energy”, or “Trainer”
illustratorString❌Artist who illustrated the card
rarityString❌Card rarity (Common, Uncommon, Rare, etc.)
setSetBrief✅Set information (see Sets API)
variantsObject✅Available card variants
boostersArray❌Booster packs containing this card (null if available in all boosters)
pricingObject❌Market pricing information
updatedString (ISO9601)✅Indicate when is the last time the card data was updated (excluding pricing infos)
PropertyTypeRequiredDescription
variants.normalBoolean✅Standard non-foil version available
variants.reverseBoolean✅Reverse holofoil version available
variants.holoBoolean✅Holofoil version available
variants.firstEditionBoolean✅First edition printing available
PropertyTypeRequiredDescription
boosters[].idString✅Unique booster identifier
boosters[].nameString✅Localized booster name
boosters[].logoString❌Booster pack logo image
boosters[].artwork_frontString❌Front artwork image
boosters[].artwork_backString❌Back artwork image

Market pricing information from multiple sources:

PropertyTypeRequiredDescription
pricing.tcgplayerObject❌TCGPlayer marketplace data
pricing.cardmarketObject❌Cardmarket pricing data
PropertyTypeRequiredDescription
pricing.tcgplayer.updatedNumber✅Indicate when is the last time it was fetched
pricing.tcgplayer.unitNumber✅Indicate the unit in which the card is sold
pricing.tcgplayer.normalObject❌Standard non-foil cards
pricing.tcgplayer.holofoilObject❌Holofoil finish cards
pricing.tcgplayer.reverse-holofoilObject❌Reverse holofoil cards
pricing.tcgplayer.1st-editionObject❌First edition cards
pricing.tcgplayer.1st-edition-holofoilObject❌First edition holofoil cards
pricing.tcgplayer.unlimitedObject❌Unlimited edition cards
pricing.tcgplayer.unlimited-holofoilObject❌Unlimited holofoil cards

TCGPlayer data is organized by card variant. Each variant may contain:

PropertyTypeRequiredDescription
lowPriceNumber❌Lowest available price
midPriceNumber❌Median market price
highPriceNumber❌Highest available price
marketPriceNumber❌Current market price
directLowPriceNumber❌Lowest direct seller price

European market data with separate pricing for foil and non-foil variants:

PropertyTypeRequiredDescription
pricing.cardmarket.updatedNumber❌Indicate when is the last time it was fetched
pricing.cardmarket.unitNumber❌Indicate the unit in which the card is sold
pricing.cardmarket.avgNumber❌Average selling price (non-foil)
pricing.cardmarket.lowNumber❌Lowest market price (non-foil)
pricing.cardmarket.trendNumber❌Trend price from charts (non-foil)
pricing.cardmarket.avg1Number❌Average price (last 24 hours)
pricing.cardmarket.avg7Number❌Average price (last 7 days)
pricing.cardmarket.avg30Number❌Average price (last 30 days)
pricing.cardmarket.avg-holoNumber❌Average selling price (foil)
pricing.cardmarket.low-holoNumber❌Lowest market price (foil)
pricing.cardmarket.trend-holoNumber❌Trend price from charts (foil)
pricing.cardmarket.avg1-holoNumber❌Average price (last 24 hours, foil)
pricing.cardmarket.avg7-holoNumber❌Average price (last 7 days, foil)
pricing.cardmarket.avg30-holoNumber❌Average price (last 30 days, foil)

Additional properties for Pokémon cards (includes all common properties):

PropertyTypeRequiredDescription
category”Pokemon”✅Always “Pokemon” for these cards
dexIdArray of Number❌National Pokédex ID(s) of the Pokémon
hpNumber❌Hit Points of the Pokémon
typesArray of String❌Pokémon types (Fire, Water, Grass, etc.)
evolveFromString❌Name of the Pokémon it evolves from
descriptionString❌Flavor text description
levelString❌Pokémon level (for LV.X cards, level is X)
stageString❌Evolution stage (Basic, Stage1, Stage2)
suffixString❌Additional card identifiers
itemObject❌Held item information
item.nameString✅Item name
item.effectString✅Item effect description

Additional properties for Trainer cards (includes all common properties):

PropertyTypeRequiredDescription
category”Trainer”✅Always “Trainer” for these cards
effectString✅Card effect text
trainerTypeString✅Type of trainer card

Additional properties for Energy cards (includes all common properties):

PropertyTypeRequiredDescription
category”Energy”✅Always “Energy” for these cards
effectString✅Card effect text
energyTypeString✅Type of energy card
TypeDescription
BasicStandard single-type energy
SpecialMulti-type or special effect energy

Complete Pokémon card response:

{
"category": "Pokemon",
"id": "swsh3-136",
"illustrator": "tetsuya koizumi",
"image": "https://assets.tcgdex.net/en/swsh/swsh3/136",
"localId": "136",
"name": "Furret",
"rarity": "Uncommon",
"set": {
"cardCount": {
"official": 189,
"total": 201
},
"id": "swsh3",
"logo": "https://assets.tcgdex.net/en/swsh/swsh3/logo",
"name": "Darkness Ablaze",
"symbol": "https://assets.tcgdex.net/univ/swsh/swsh3/symbol"
},
"variants": {
"firstEdition": false,
"holo": false,
"normal": true,
"reverse": true,
"wPromo": false
},
"dexId": [
162
],
"hp": 110,
"types": [
"Colorless"
],
"evolveFrom": "Sentret",
"description": "It makes a nest to suit its long and skinny body. The nest is impossible for other Pokémon to enter.",
"stage": "Stage1",
"attacks": [
{
"cost": [
"Colorless"
],
"name": "Feelin' Fine",
"effect": "Draw 3 cards."
},
{
"cost": [
"Colorless"
],
"name": "Tail Smash",
"effect": "Flip a coin. If tails, this attack does nothing.",
"damage": 90
}
],
"weaknesses": [
{
"type": "Fighting",
"value": "×2"
}
],
"retreat": 1,
"regulationMark": "D",
"legal": {
"standard": false,
"expanded": true
},
"updated": "2024-02-04T22:55:32+02:00",
"pricing": {
"cardmarket": {
"updated": "2025-08-05T00:42:15.000Z",
"unit": "EUR",
"avg": 0.08,
"low": 0.02,
"trend": 0.08,
"avg1": 0.03,
"avg7": 0.08,
"avg30": 0.08,
"avg-holo": 0.27,
"low-holo": 0.03,
"trend-holo": 0.21,
"avg1-holo": 0.19,
"avg7-holo": 0.19,
"avg30-holo": 0.26
},
"tcgplayer": {
"updated": "2025-08-05T20:07:54.000Z",
"unit": "USD",
"normal": {
"lowPrice": 0.02,
"midPrice": 0.17,
"highPrice": 25.09,
"marketPrice": 0.09,
"directLowPrice": 0.04
},
"reverse": {
"lowPrice": 0.09,
"midPrice": 0.26,
"highPrice": 5.17,
"marketPrice": 0.23,
"directLowPrice": 0.23
}
}
}
}