AniDB API

Anime / API Key Intermediate HTTP
Varies by plan (check documentation)

Overview

AniDB is one of the oldest and most detailed anime databases, tracking episode titles, staff, characters, and file-level metadata used by media players and subtitle groups. The HTTP API returns XML and requires a registered client application name. It is better suited to intermediate developers comfortable with XML parsing and client registration steps.

💡

Beginner Tip

You must register a client application name at https://wiki.anidb.net/API:Clients before making requests. Include client=YOURCLIENT&clientver=1 in every query or the server returns a "banned" response.

Available Data

anime/manga title
episode count
airing status
synopsis
rating score
genre list

Example Response

JSON Response
{
  "id": 1,
  "title": "Attack on Titan",
  "episodes": 75,
  "status": "Finished Airing",
  "score": 8.5,
  "genres": [
    "Action",
    "Drama",
    "Fantasy"
  ],
  "synopsis": "In a world where humanity lives within enormous walled cities..."
}

Field Reference

anime/@id AniDB unique anime ID (aid)
anime/titles/title Title in various languages; check the xml:lang attribute for the language code
anime/episodecount Total number of episodes in the series
anime/startdate Broadcast start date in YYYY-MM-DD format
anime/ratings/permanent Permanent weighted rating score from the AniDB community

Implementation Example

const url = "https://wiki.anidb.net/HTTP_API_Definition";
// Replace headers or query params with the values required by this API.
const response = await fetch(url, {
  headers: {
  "X-API-Key": "YOUR_API_KEY"
  }
});
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.

Common Errors & Troubleshooting

"500 banned" in XML Sending requests without a registered client name or hitting the strict rate limit
Register a client at anidb.net and include client=YOURCLIENT&clientver=1&protover=1 in every request URL
XML parse error Expecting JSON but the API only returns XML
Use an XML parser such as xml.etree in Python or DOMParser in the browser — there is no JSON format option
Request timeout AniDB enforces a strict rate limit of roughly one request per two seconds
Add a 2-3 second delay between consecutive requests in your script

Matrix Score Breakdown

🌐 Reachability 0/30
⚡ Speed 15/20
🔒 Security 5/15
🛠 Developer XP 12/20
✓ Reliability 0/15

Partially tested on Apr 5, 2026

Technical Specifications

Auth API Key
HTTPS NO
CORS UNKNOWN
Category Anime
Difficulty Intermediate
Verified: 2026-04-04

Similar APIs

View All →