Yu-Gi-Oh! API

Beginner's Pick Games & Comics / No Auth Required Beginner HTTPS
Free to Use
87 A
Measured Score 0 50 100 Speed 27/30 Consistency 17/20 Security 20/20 Browser access 15/15 Transparency 8/15 TESTED 2026-08-10

Overview

The Yu-Gi-Oh! API gives you access to a massive database of Yu-Gi-Oh! TCG cards, including card stats, images, prices, and ban list information. It requires no authentication, so you can start making requests immediately without signing up. This is a great choice if you want to build a card lookup tool, deck builder, or fan site.

Beginner Tip

No API key is needed — just call the endpoint directly. Try searching by card name using the ?name= parameter to get detailed card info instantly.

Measurement Record

What actually happened when we called this API from our own infrastructure. Every value below was recorded by the request, not copied from the provider's documentation.

Request
GET https://db.ygoprodeck.com/api/v7/cardinfo.php?name=Dark+Magician
Result
HTTP 200 · application/json · 11,215 bytes · compressed
Response time
38 ms (median of 3) · fastest 35 ms
Transport
TLSv1.3 · TLS_AES_256_GCM_SHA384 · certificate issued by Google Trust Services
Browser CORS
Allowed — Access-Control-Allow-Origin: *
Served by
cloudflare
Recorded
2026-08-10

Fields Returned

Top-level fields present in the response we captured, with the type and value we actually received.

Field Type Value received
id integer 46986414
name string Dark Magician
typeline array [1 item]
type string Normal Monster
humanReadableCardType string Normal Monster
frameType string normal
desc string ''The ultimate wizard in terms of attack and …
race string Spellcaster
atk integer 2500
def integer 2100
level integer 7
attribute string DARK
archetype string Dark Magician
ygoprodeck_url string (url) https://ygoprodeck.com/card/dark-magician-4003

Captured Response

Captured from a real request to https://db.ygoprodeck.com/api/v7/cardinfo.php?name=Dark+Magician on 2026-08-10. Long arrays and nested objects are truncated to keep the shape readable.

JSON Response · Captured
{
  "data": [
    {
      "id": 46986414,
      "name": "Dark Magician",
      "typeline": [
        "Spellcaster"
      ],
      "type": "Normal Monster",
      "humanReadableCardType": "Normal Monster",
      "frameType": "normal",
      "desc": "''The ultimate wizard in terms of attack and defense.''",
      "race": "Spellcaster",
      "atk": 2500,
      "def": 2100,
      "level": 7,
      "attribute": "DARK",
      "archetype": "Dark Magician",
      "ygoprodeck_url": "https://ygoprodeck.com/card/dark-magician-4003",
      "…": "(3 more fields)"
    }
  ]
}

Field Reference

id Unique numeric identifier for the card in the YGOPRODeck database.
name Full official name of the Yu-Gi-Oh! card.
type Card type such as Normal Monster, Effect Monster, Spell Card, or Trap Card.
atk Attack points of the monster card (null for Spell/Trap cards).
def Defense points of the monster card (null for Spell/Trap cards).

Implementation Example

Calls a real endpoint of this API. Replace any placeholder credentials with your own key.

Request
const url = "https://db.ygoprodeck.com/api-guide/";
const response = await fetch(url);
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
const data = await response.json();
console.log(data);

What Can You Build?

Note: These code examples are AI-generated and unverified. Always refer to the official API documentation for accurate usage.

How This API Fails

We deliberately sent this API a broken request and recorded exactly what came back on 2026-08-10. Knowing the shape of an error before you hit it makes error handling much easier to write.

HTTP 400 Sending an invalid value for "name" application/json
{
  "error": "No card matching your query was found in the database. Please see https://db.ygoprodeck.com/api-guide/ for syntax usage."
}

Common Errors & Troubleshooting

Generated guidance based on this API's documentation, not observed by us. Treat it as a starting point and check against the provider's own error reference.

404 Not Found The card name does not exactly match the database entry, including punctuation.
Use the ?fname= (fuzzy name) parameter to do a partial match search instead of an exact ?name= lookup.
Empty results array Your filter parameters (type, race, attribute) returned no matching cards.
Broaden your search by removing optional filter parameters one at a time until results appear.
CORS error in browser The API CORS policy may not be configured for all origins in certain environments.
Test from a server-side script (Node.js) first. If you need browser access, proxy the request through your own backend.

Measured Score Breakdown

Live HTTP request to the API endpoint

Speed 27/30
Consistency 17/20
Security 20/20
Browser access 15/15
Transparency 8/15
Endpoint Response Time 38ms

Fully tested on Aug 10, 2026

Technical Specifications

Auth No Auth
HTTPS REQUIRED
CORS UNKNOWN
Category Games & Comics
Difficulty Beginner
Endpoint last called: 2026-08-10

Related Tags

Similar APIs

View All →