D&D 5e API

Dungeons & Dragons 5e spells, monsters and classes

🎮 GamesUNMONITORED
AUTH NONECORS AGENT ?HTTPS COMMERCIAL ?

The D&D 5e API serves the System Reference Document as linked JSON: spells, monsters, classes, equipment and rules. No key, permissive CORS, and stable resource URLs — the go-to backend for character builders and homebrew tools.

HOW IT'S SCORED ⓘ
Status badge · for your READMEshipapis health badge: — · unmonitored
ON PROBE SCHEDULE

We probe a documented GET and expect 2xx JSON — full uptime and health score. Open provider docs ↗

Uptime historystarts after first probe

On our probe schedule. Uptime charts appear after the first check lands.

Example responsefrom provider docs — not verified by us
GET https://www.dnd5eapi.co/api/spells/fireball

{
  "index": "fireball",
  "name": "Fireball",
  "desc": [
    "A bright streak flashes from your pointing finger to a point you choose within range and then blossoms with a low roar into an explosion of flame. Each creature in a 20-foot-radius sphere centered on that point must make a dexterity saving throw. A target takes 8d6 fire damage on a failed save, or half as much damage on a successful one.",
    "The fire spreads around corners. It ignites flammable objects in the area that aren't being worn or carried."
  ],
  "higher_level": [
    "When you cast this spell using a spell slot of 4th level or higher, the damage increases by 1d6 for each slot level above 3rd."
  ],
  "range": "150 feet",
  "components": [
    "V",
    "S"
  ],
  "material": "A tiny ball of bat guano and sulfur.",
  "ritual": false
}
Call itcurl · fetch · python
curl "https://www.dnd5eapi.co/api/spells/fireball"
const res = await fetch("https://www.dnd5eapi.co/api/spells/fireball");
const data = await res.json();
console.log(data);
import requests

res = requests.get("https://www.dnd5eapi.co/api/spells/fireball")
print(res.json())
Endpoints · 5On scheduleFULL DOCS ↗
On schedule — GET /spells/fireball awaits first probe
GET/spells/fireballPROBED

Dungeons & Dragons 5e spells, monsters and classes

GET/spells

Spells — documented GET route.

GET/spells/1

Spells details by ID (example: 1).

GET/spells?limit=10

Spells — documented GET route.

GET/spells/search?q=test

Search by query parameters.

Machine-readable spec

We probe a documented GET and expect 2xx JSON — full uptime and health score. Export includes every documented route below.

Response-shape history

Not tracked yet. Shape-change history starts once this API joins our probe schedule.

D&D 5e API: common questions

Is D&D 5e API free to use?

Yes — D&D 5e API is a free games API. Free tier: Free — limits not published. Whether the free tier allows commercial use is unclear — check the provider docs.

Does D&D 5e API need an API key?

No — D&D 5e API needs no API key or signup. You can call it straight away; rate limits still apply (Unpublished).

Can I call D&D 5e API from the browser?

Yes — D&D 5e API returns CORS headers over HTTPS, so front-end code can fetch it directly with no backend proxy. Use the fetch snippet on this page, or hit "Run live" to try it now.

Is D&D 5e API up right now?

D&D 5e API is catalogued but not yet on our probe schedule, so we don't publish a live status for it. Check the provider's own status page or docs for its current state.