Skip to content
Prepaid, no subscription trap. Top up a balance and we draw the monthly fee from it.
tcggraph

Playground

Query real cards, right now

A public sample of the catalog — real cards, real prices, real artwork, drawn straight from production. It runs in your browser rather than calling the API, so it needs no key and no signup, and the response is built by the same serialiser production uses.

Game

Name contains

Price market

Every quote for Lorcana comes from Cardmarket. Magic is the only game with more than one market.

Lorcana filters

Sort

Limit

Request
GET https://api.tcggraph.com/v1/cards
  ?game=disney-lorcana
  &limit=5
  &sort=-price
  &source=cardmarket
Response20012 ms15 matches
{
  "data": [
    {
      "id": "lor_c2_10",
      "game": "disney-lorcana",
      "name": "Let It Go",
      "set": {
        "code": "C2",
        "name": "Lorcana Challenge Year 3",
        "releasedAt": "2026-01-16"
      },
      "collectorNumber": "10",
      "rarity": "Promo",
      "artist": "Milica Celikovic",
      "text": "(A character with cost 5 or more can {E} to sing this song for free.)\nPut chosen character into their player's inkwell facedown and exerted.",
      "images": {
        "small": "https://cards.tcggraph.io/c2/lor_c2_10/small.webp",
        "normal": "https://cards.tcggraph.io/c2/lor_c2_10/normal.webp",
        "large": "https://cards.tcggraph.io/c2/lor_c2_10/large.webp"
      },
      "hashes": {
        "phash": "b0723a1f1eb87a29",
        "phashColor": "9072ba5d1eb87a29b0733a1f1eb8782992321a1b1ab978fd"
      },
      "prices": [
        {
          "source": "cardmarket",
          "region": "EU",
          "listType": "retail",
          "finish": "normal",
          "currency": "EUR",
          "market": 45,
          "low": 37.8,
          "trend": 45,
          "avg1": 39.82,
          "avg7": 43.67,
          "avg30": 47.99
        }
      ],
      "legalities": {
        "core": "legal"
      },
      "gameData": {
        "ink": "Sapphire",
        "lore": null,
        "inkCost": 5,
        "inkable": true,
        "cardType": "ACTION",
        "moveCost": null,
        "strength": null,
        "willpower": null,
        "classifications": []
      },
      "externalIds": {
        "cardmarketId": 852847,
        "tcgplayerId": 672385
      }
    },
    {
      "id": "lor_7_222",
      "game": "disney-lorcana",
      "name": "Restoring Atlantis",
      "set": {
        "code": "7",
        "name": "Archazia's Island",
        "releasedAt": "2025-03-07"
      },
      "collectorNumber": "222",
      "rarity": "Enchanted",
      "artist": "Lisanne Koeteeuw",
      "text": "Your characters can't be challenged until the start of your next turn.",
      "images": {
        "small": "https://cards.tcggraph.io/72/lor_7_222/small.webp",
        "normal": "https://cards.tcggraph.io/72/lor_7_222/normal.webp",
        "large": "https://cards.tcggraph.io/72/lor_7_222/large.webp"
      },
      "hashes": {
        "phash": "9472eb903cd1f8ca",
        "phashColor": "9470eb943ec1f8ca9472eb903cd1f8ca9456eb103cd57cca"
      },
      "prices": [
        {
          "source": "cardmarket",
          "region": "EU",
          "listType": "retail",
          "finish": "foil",
          "currency": "EUR",
          "market": 32.15,
          "low": 28.99,
          "trend": 32.15,
          "avg1": 30.5,
          "avg7": 30.5,
          "avg30": 29.88
        }
      ],
      "legalities": {
        "core": "legal"
      },
      "gameData": {
        "ink": "Steel",
        "lore": null,
        "inkCost": 5,
        "inkable": false,
        "cardType": "ACTION",
        "moveCost": null,
        "strength": null,
        "willpower": null,
        "classifications": []
      },
      "externalIds": {
        "cardmarketId": 814256,
        "tcgplayerId": 619750
      }
    },
    {
      "id": "lor_7_218",
      "game": "disney-lorcana",
      "name": "Devil's Eye Diamond",
      "set": {
        "code": "7",
        "name": "Archazia's Island",
        "releasedAt": "2025-03-07"
      },
      "collectorNumber": "218",
      "rarity": "Enchanted",
      "artist": "Isabella Ceravolo",
      "text": "THE PRICE OF POWER {E} — If one of your characters was damaged this turn, gain 1 lore.",
      "images": {
        "small": "https://cards.tcggraph.io/72/lor_7_218/small.webp",
        "normal": "https://cards.tcggraph.io/72/lor_7_218/normal.webp",
        "large": "https://cards.tcggraph.io/72/lor_7_218/large.webp"
      },
      "hashes": {
        "phash": "c05e7eb87e3070a3",
        "phashColor": "c05a7ff87ab070a1c0de5e307c62f0e3c096ce307e22f9ea"
      },
      "prices": [
        {
          "source": "cardmarket",
          "region": "EU",
          "listType": "retail",
          "finish": "foil",
          "currency": "EUR",
          "market": 30.73,
          "low": 20,
          "trend": 30.73,
          "avg1": 31.5,
          "avg7": 29.49,
          "avg30": 25.85
        }
      ],
      "legalities": {
        "core": "legal"
      },
      "gameData": {
        "ink": "Ruby",
        "lore": null,
        "inkCost": 2,
        "inkable": true,
        "cardType": "ITEM",
        "moveCost": null,
        "strength": null,
        "willpower": null,
        "classifications": []
      },
      "externalIds": {
        "cardmarketId": 814252,
        "tcgplayerId": 619746
      }
    },
    {
      "id": "lor_c2_9",
      "game": "disney-lorcana",
      "name": "Dragon Fire",
      "set": {
        "code": "C2",
        "name": "Lorcana Challenge Year 3",
        "releasedAt": "2026-01-16"
      },
      "collectorNumber": "9",
      "rarity": "Promo",
      "artist": "Luis Huerta",
      "text": "Banish chosen character.",
      "images": {
        "small": "https://cards.tcggraph.io/c2/lor_c2_9/small.webp",
        "normal": "https://cards.tcggraph.io/c2/lor_c2_9/normal.webp",
        "large": "https://cards.tcggraph.io/c2/lor_c2_9/large.webp"
      },
      "hashes": {
        "phash": "943d6959b2954bcc",
        "phashColor": "90187959b29dcf0f942d6d59b2955acc907bd10c7e955e85"
      },
      "prices": [
        {
          "source": "cardmarket",
          "region": "EU",
          "listType": "retail",
          "finish": "foil",
          "currency": "EUR",
          "market": 15,
          "low": 49.99,
          "trend": 15,
          "avg1": 15,
          "avg7": 22.5,
          "avg30": 22.5
        },
        {
          "source": "cardmarket",
          "region": "EU",
          "listType": "retail",
          "finish": "normal",
          "currency": "EUR",
          "market": 19.83,
          "low": 18,
          "trend": 19.83,
          "avg1": 24.99,
          "avg7": 19.61,
          "avg30": 18.12
        }
      ],
      "legalities": {
        "core": "legal"
      },
      "gameData": {
        "ink": "Ruby",
        "lore": null,
        "inkCost": 5,
        "inkable": false,
        "cardType": "ACTION",
        "moveCost": null,
        "strength": null,
        "willpower": null,
        "classifications": []
      },
      "externalIds": {
        "cardmarketId": 852839,
        "tcgplayerId": null
      }
    },
    {
      "id": "lor_c2_9",
      "game": "disney-lorcana",
      "name": "Dragon Fire",
      "set": {
        "code": "C2",
        "name": "Lorcana Challenge Year 3",
        "releasedAt": "2026-01-16"
      },
      "collectorNumber": "9",
      "rarity": "Promo",
      "artist": "Luis Huerta",
      "text": "Banish chosen character.",
      "images": {
        "small": "https://cards.tcggraph.io/c2/lor_c2_9/small.webp",
        "normal": "https://cards.tcggraph.io/c2/lor_c2_9/normal.webp",
        "large": "https://cards.tcggraph.io/c2/lor_c2_9/large.webp"
      },
      "hashes": {
        "phash": "943d6959b2954bcc",
        "phashColor": "90187959b29dcf0f942d6d59b2955acc907bd10c7e955e85"
      },
      "prices": [
        {
          "source": "cardmarket",
          "region": "EU",
          "listType": "retail",
          "finish": "foil",
          "currency": "EUR",
          "market": 15,
          "low": 49.99,
          "trend": 15,
          "avg1": 15,
          "avg7": 22.5,
          "avg30": 22.5
        },
        {
          "source": "cardmarket",
          "region": "EU",
          "listType": "retail",
          "finish": "normal",
          "currency": "EUR",
          "market": 19.83,
          "low": 18,
          "trend": 19.83,
          "avg1": 24.99,
          "avg7": 19.61,
          "avg30": 18.12
        }
      ],
      "legalities": {
        "core": "legal"
      },
      "gameData": {
        "ink": "Ruby",
        "lore": null,
        "inkCost": 5,
        "inkable": false,
        "cardType": "ACTION",
        "moveCost": null,
        "strength": null,
        "willpower": null,
        "classifications": []
      },
      "externalIds": {
        "cardmarketId": 852839,
        "tcgplayerId": null
      }
    }
  ],
  "meta": {
    "page": 1,
    "limit": 5,
    "totalCount": 15,
    "totalPages": 3,
    "hasMore": true,
    "priceSource": "cardmarket"
  }
}

Every card comes back with both a TCGplayer quote in USD and a Cardmarket quote in EUR; the market toggle picks which one the sort and price filters read from. See European pricing for what the EU side covers.

The public sample covers a slice of each game. An API key unlocks the full catalog, and the REST reference documents every filter shown here.