Recognize New & Rare Cards With AI Sports Card Identification

With millions of cards and variations, even the best databases miss some. We refined our sports cards recognition to identify cards even when no match exists.

Michal Lukáč, Ximilar
Michal Lukáč November 26, 2025
7 minutes of reading
With millions of cards and variations, even the best databases miss some. Ximilar refined the AI sports cards identification to identify cards even when no match exists.

Anyone in the trading-card world knows how quickly the hobby keeps expanding. With tens of millions of cards out there (and thousands more released every month), it’s nearly impossible for any single system to guarantee complete coverage while also maintaining high accuracy.

So we built something to solve that problem: a parameter called magic_ai, which helps identify cards using advanced AI. Let’s take a look at when it can come in handy.

There’s Just Too Many Cards

The Trading Card Database (TCDB), the largest online database for sports and trading cards, lists almost 30 million cards, while Beckett’s online price guide has over 12 million. Calling that “a lot to choose from” is an understatement.

New editions, reprints, and special runs of trading cards appear constantly, with endless variations in languages, designs, and styles – far too quickly for any recognition tool or database to keep up.

The Trading Card Database (TCDB), the largest online database for both sports and other trading cards, lists almost 30 million cards, while Beckett’s online price guide has over 12 million.

Even with continuous updates, no system can reliably recognize every card ever printed. We’ve faced the same problem. Usually, when your users upload photos of their card collections, our AI first detects individual cards in the image. It then analyzes colors, text, and layout, and matches the result against our large database quickly and with high accuracy.

But sometimes the visual search engine simply can’t find a perfect match. Not because the card doesn’t exist, but because it’s too new, too rare, too niche, or comes from a set that hasn’t been fully added yet. To improve the automation of your sports-card workflows, we added another layer to the sports cards identification process.

Solution: Advanced AI Analysis

To identify a card even if it’s not in the database, we developed CARD-VLM, a compact vision-language model (VLM) built specifically for sports and trading card identification.

Architecturally, this model resembles modern LLMs (such as GPT), but it is optimized exclusively for card identification. It is used in situations where the card cannot be matched in the existing database – for example, rare sets, obscure parallels, or brand-new releases.

CARD-VLM can read the card, extract text, interpret layout and design patterns, and understand what’s on the card even if it hasn’t encountered it before.

By default, this feature is turned off. When enabled, the system still first attempts a normal database match. If no match is found, CARD-VLM steps in. It can read the card, extract text, interpret layout and design patterns, and understand what’s on the card even if it hasn’t encountered it before.

Simply put, if the database doesn’t know the card, the AI figures it out. Let’s try it out.

collectibles_recognition_pattern

ONE API TO RULE THEM ALL

AI That Understands Collectibles

Recognize, analyze & grade collectibles, find them in databases and marketplaces. Our API was built by collectors for collectors.

How to Use the magic_ai Parameter

When you add “magic_ai”: true to your sports card identification request:

  1. The API first tries a standard match in the visual database.
  2. If nothing is found, it calls CARD-VLM to read and understand the card, extracting player name, team, year, set, and other key details.

Points to keep in mind when using magic_ai:

  • Best results come from providing both front and back images of the card, or a single photo that shows both sides.
  • Optionally provide a card in graded slab from companies like PSA or Beckett.
  • A single request is limited to 2 records (images).
  • CARD-VLM requires a modern GPU and is slightly slower than the standard identifier.
  • By default, it’s turned off and does not consume API credits. Also, if the database already contains a correct match, no extra credits are charged – even if magic_ai was enabled.
  • The system improves over time, so similar cards will be recognized faster in future requests.

Call the Sports Cards Identification With Magic AI

If you’re not sure where to start, the API documentation provides a quick start with a detailed description of the first steps, as well as many examples of API requests. I recommend checking it whenever you need guidance.

Using the REST API requires a short setup in the App and then using your personal authentication token. These steps are covered in our First Steps guide:

cURL Example request

Here’s an example curl request for a sports card identification using the magic_ai parameter. Don’t forget to replace “API_TOKEN” with the one assigned in the Ximilar App:

curl https://api.ximilar.com/collectibles/v2/sport_id \
  -H "Content-Type: application/json" \
  -H "Authorization: Token __API_TOKEN__" \
  -d '{
    "records": [
      { "_url": "https://example.com/card_front.jpg" },
      { "_url": "https://example.com/card_back.jpg" }
    ],
    "magic_ai": true
  }'

Python Example

And here’s how the request could look in Python:

import requests

API_TOKEN = "__API_TOKEN__"
URL = "https://api.ximilar.com/collectibles/v2/sport_id"

payload = {
    "records": [
        {"_url": "https://example.com/card_front.jpg"},
        {"_url": "https://example.com/card_back.jpg"}
    ],
    "magic_ai": True
}

headers = {
    "Content-Type": "application/json",
    "Authorization": f"Token {API_TOKEN}"
}

response = requests.post(URL, json=payload, headers=headers)
print(response.json())

Another Python example (Ximilar SDK):

from ximilar.client import CollectiblesClient

client = CollectiblesClient(api_token="__API_TOKEN__")

result = client.sport_id(
    records=[
        {"_url": "https://example.com/card_front.jpg"},
        {"_url": "https://example.com/card_back.jpg"}
    ],
    magic_ai=True
)

print(result)

Test and Response Structure

For this test, I used a card of fighter Jiří Procházka from the 2023 Panini Chronicles UFC Obsidian Black Color Blast set – a card not yet included in Ximilar’s database. I used the test form available under Collectibles Recognition: Sports Card Identification in the Ximilar App, which displays all API requests and responses below the form.

First, I tried to identify the card without the magic_ai parameter:

Ximilar test output for 2023 Panini UFC Jiří Procházka card. The card and slab label were correctly detected, and basic attributes shown

As you can see, the system correctly detected the card and slab label, and provided basic descriptive attributes (front side, unsigned, holo effect, graded). However, because the card wasn’t in the database, no detailed identification was provided. Here’s how the API response looks like:

{
  "image_url": "https://i.ebayimg.com/images/g/dfoAAeSwIaBpG3pM/s-l1600.webp",
  "category": "Card/Sport Card",
  "detected_objects": {
    "card": {
      "side": "front",
      "autograph": "not signed",
      "foil_holo": true,
      "graded": true
    },
    "slab_label": true
  },
  "identification": null,
  "pricing_enabled": true,
  "magic_ai_used": false
}

And here, for comparison, is the result after enabling the Magic AI option. CARD-SVLM returned a full identification of a card that wasn’t yet in the database. A quick check of the eBay link confirms the result is correct.

AI sports cards identification result showing Magic AI (CARD-SVLM) fully identifying the 2023 Panini Chronicles UFC Jiří Procházka Obsidian Black Color Blast #BCBJP card, including set details and marketplace links.
{
  "season": "2023",
  "year": "2023",
  "name": "Jiri Prochazka",
  "card_number": "BCBJP",
  "set_name": "Chronicles UFC",
  "sub_set": "Obsidian Black Color Blast",
  "Subcategory": "MMA",
  "company": "Panini",
  "full_name": "Jiri Prochazka 2023 #BCBJP Panini Chronicles UFC Obsidian Black Color Blast",
  "links": {
    "ebay.com": "https://www.ebay.com/sch/i.html?_nkw=Jiri+Prochazka+2023+Panini+Chronicles+UFC+Obsidian+Black+Color+Blast+%23BCBJP+&_sacat=212",
    "comc.com": "https://www.comc.com/Cards,=Jiri+Prochazka+2023+Panini+Chronicles+UFC+Obsidian+Black+Color+Blast+%23BCBJP+",
    "beckett.com": "https://marketplace.beckett.com/search_new/?term=Jiri+Prochazka+2023+Panini+Chronicles+UFC+Obsidian+Black+Color+Blast+%23BCBJP+"
  }
}

When Should You Use the magic_ai Parameter?

Use it when:

  • The card is rare, new, miscut, damaged, or unusual
  • The database likely doesn’t contain the card (here’s our taxonomy)
  • The card has many similar parallels or regional versions
  • Identifying the card requires AI understanding, not just matching to our database

What’s Next?

For more information, see our documentation for the Sports Card Identification endpoint, and don’t hesitate to ask via chat or contact form for any advice or help.

We’re committed to building the most accurate and reliable Trading Card and Sports Card Identification API available. This update brings us another step closer to that goal.

Michal Lukáč, Ximilar

Michal Lukáč

CEO, ML Expert & Co-founder

Michal is a CEO of Ximilar and a machine learning expert focusing mainly on image recognition, visual search and computer vision. He is interested in science, loves reading books and Brazillian Jiu-Jitsu.

Tags & Themes

Related Articles

Ximilar’s trading card game recognition system now supports Final Fantasy TCG, Sorcery: Contested Realm, Gundam, and Riftbound. Sources: ignmgs.com, sorcerytcg.com, spellboundgames.co.uk, tcgplayer.com

Final Fantasy, Sorcery, Gundam & Riftbound Added to Our Recognition System

Ximilar’s trading card game recognition system now supports Final Fantasy, Sorcery: Contested Realm, Gundam, and Riftbound. Let’s see it in action!

Read more November 2025
E-commerce retailers using Ximilar visual search engine now have access to multilingual text search as well.

Ximilar Now Combines Visual and Text-to-Image Search

E-commerce retailers using our search engine now have access to multilingual text search as well.

Read more June 2025
A guide on how to easily connect to our trading card grading and condition evaluation AI via API.

Automate Card Grading With AI via API – Step by Step

A guide on how to easily connect to our trading card grading and condition evaluation AI via API.

Read more May 2025