Kitsu API

Entertainment API · Works globally · JSON:API compliant · 20,000+ anime titles

TL;DR

The Kitsu API provides a comprehensive, JSON:API-compliant interface to an extensive database of anime and manga titles, including episodes, characters, genres, reviews, and user ratings. It powers the popular Kitsu social platform for anime enthusiasts. The API supports complex filtering, pagination, includes (eager-loading relationships), and sparse fieldsets — making it one of the most feature-rich free entertainment APIs. No authentication is required for read access.

Quick start: https://kitsu.io/api/edge/anime

No API key needed — just make a request!

How to Use This API

1. List Anime (Paginated)

https://kitsu.io/api/edge/anime

2. Search Anime by Title

https://kitsu.io/api/edge/anime?filter[text]=Attack%20on%20Titan

3. Get a Specific Anime with Characters

Use the include parameter to eager-load relationships:

https://kitsu.io/api/edge/anime/1?include=categories,characters

4. JavaScript — Search and Display

fetch('https://kitsu.io/api/edge/anime?filter[text]=One%20Piece&page[limit]=5')
  .then(r => r.json())
  .then(d => {
    d.data.forEach(anime => {
      console.log(anime.attributes.canonicalTitle);
      console.log('Episodes:', anime.attributes.episodeCount);
      console.log('Rating:', anime.attributes.averageRating);
    });
  });

5. Python — Get Top-Rated Anime

import requests

resp = requests.get('https://kitsu.io/api/edge/anime', params={
    'sort': '-averageRating',
    'page[limit]': 10
})
data = resp.json()
for a in data['data']:
    attrs = a['attributes']
    print(f"{attrs['canonicalTitle']}: {attrs['averageRating']}%")
Try it: https://kitsu.io/api/edge/anime?page[limit]=3

API Details

API URL
https://kitsu.io/api/edge
Documentation
kitsu.docs.apiary.io
Category
Entertainment
Authentication
Not Required (for read access)
Geographic Coverage
Global — Japanese and international anime/manga

Frequently Asked Questions

Do I need an API key?
No. All read endpoints are publicly accessible without authentication. Write access (reviews, favorites) requires OAuth.
What format does the API use?
It follows the JSON:API specification (application/vnd.api+json). Data is structured with data, included, and relationships keys.
How do I search by genre or category?
Use filter[categories]=action or browse via the categories endpoint: /api/edge/categories.
Does it support pagination?
Yes, use page[limit] (max 20) and page[offset] for cursor-based pagination. The links object provides first, next, last URLs.
Can I get episode data for an anime?
Yes, through the /api/edge/episodes?filter[animeId]=ID endpoint, which returns episode numbers, titles, air dates, and synopses.
What's the difference between the Kitsu API and Jikan?
Kitsu is the official API for the Kitsu platform with JSON:API format. Jikan is an unofficial MyAnimeList API. Both cover similar data but with different structures.

What You Can Build