Changelog
exclude_ids— Leave out the manga whose MAL IDs you choose. These answers are never cached.type_exclude,status_exclude,genres_exclude— Leave out manga with any of the chosen types, statuses or genres.magazines,magazines_exclude— Filter by, or leave out, the magazines or serialization platforms a manga ran in.solo_author—truefor manga written and drawn by one person,falsefor manga made by two or more.year,min_year,max_year— Filter by the calendar year a manga started publishing.min_members,max_members,min_volumes,max_volumes,min_chapters,max_chapters,min_scored_by,max_scored_by,min_favorites,max_favorites,min_reviews,max_reviews— Ranges, both ends included.
order_by— Addstitle_englishandtitle_japanese.nulls— Control manga missing the value being sorted. Requiresorder_by.
filler— Filter episodes by whether or not MAL marks them as filler.recap— Filter episodes by whether or not MAL marks them as recap.
order_by— Sort episodes bymal_id(the episode number, the default),aired,score,replies,duration,title,title_japaneseortitle_romanji.sort—ascfor ascending,descfor descending. Defaults toasc.nulls— Control episodes missing the value being sorted. Requiresorder_by.
given_name,family_name— Filter by the person's whole given name or family name, ignoring case.has_birthday— Filter people by whether or not they have a birthday.has_image— Filter people by whether or not they have a picture.has_about— Filter people by whether or not they have an about text.has_website— Filter people by whether or not they have a website.has_alternate_names— Filter people by whether or not they have any alternate names.has_family_name— Filter people by whether or not they have a family name.anime,manga— Filter by anime or manga MAL IDs. Get people credited in selected entries.characters— Filter by character MAL IDs. Get people who voiced selected characters.credit— Only people with avoice,stafforauthorcredit.credit_exclude— Exclude people with selected kinds of credit.position— Filter by staff jobs, such asdirector. Withanime, the job in those anime.position_exclude— Exclude people credited with selected staff jobs.author_role— Only authors MAL credits forstoryorart. Withmanga, the role in those manga.genres— Filter by genre, theme or demographic IDs. Get people that have every selected genre across their anime or across their manga.genres_exclude— Exclude people credited in any anime or manga with selected genres, themes or demographics.producers— Filter by producer MAL IDs. Get people credited in anime of selected studios or producers.magazines— Filter by magazine MAL IDs. Get authors of manga serialized in selected magazines.anime_type,manga_type— Filter people by the types of anime or manga they are credited in.source— Filter people by the source material of the anime they are credited in.season,season_year— Filter people by the MAL debut season and year of the anime they are credited in. Together, both must match the same anime.airing— Filter people by whether or not they are credited in an anime airing now.upcoming— Filter people by whether or not they are credited in an anime that has not aired yet.publishing— Filter people by whether or not they are an author of a manga publishing now.voice_language— Filter by voice-credit languages. Can be used to filter people by whether or not they voice in English, etc...voice_language_exclude— Exclude people credited as a voice actor in selected languages.sfw— Filter out people who are only credited in non-sfw entries.
min_anime_credits,max_anime_credits— Filter by the number of anime the person is credited in, as staff or as a voice actor.min_manga_credits,max_manga_credits— Filter by the number of manga the person is credited as an author of.min_voice_roles,max_voice_roles— Filter by the number of characters the person voiced.min_main_voice_roles,max_main_voice_roles— Filter by the number of main characters the person voiced.min_supporting_voice_roles,max_supporting_voice_roles— Filter by the number of supporting characters the person voiced.min_voice_languages,max_voice_languages— Filter by the number of languages the person is credited as a voice actor in.active_after,active_before— Filter people by the start year of the anime or manga they are credited in. Together, both must match the same entry.debut_after— Only people whose earliest credited anime or manga started in this year or later.last_credit_before— Only people whose latest credited anime or manga started in this year or earlier.
order_by— Now also sorts byanime_credits,manga_creditsandvoice_roles. Most first, withsort=ascfor the fewest first.order_by=debut— Sort by the start year of the person's earliest credited anime or manga. People without one come last.order_by=last_credit— Sort by the start year of the person's latest credited anime or manga. People without one come last.
upcoming— Filter characters by whether or not they appear in an anime that has not aired yet.publishing— Filter characters by whether or not they appear in a manga publishing now.season,season_year— Filter characters by the MAL debut season and year of the anime they appear in. Together, both must match the same anime.
role— Only companies MAL credits as astudio,producerorlicensor.has_about— Filter companies by whether or not they have an about text.has_image— Filter companies by whether or not they have a logo.has_established— Filter companies by whether or not they have a founding date.dissolved— Filter companies by whether or not MAL lists them as dissolved.genres— Filter by genre, theme or demographic IDs. Get companies that have every selected genre across their anime.genres_exclude— Exclude companies credited in any anime with selected genres, themes or demographics.anime_type— Filter companies by the types of anime they are credited in.source— Filter companies by the source material of the anime they are credited in.worked_with— Filter by producer MAL IDs. Get companies credited in the same anime as selected companies.airing— Filter companies by whether or not they are credited in an anime airing now.upcoming— Filter companies by whether or not they are credited in an anime that has not aired yet.season,season_year— Filter companies by the MAL debut season and year of the anime they are credited in. Together, both must match the same anime.sfw— Filter out companies that are only credited in non-sfw anime.
min_anime,max_anime— Filter by the number of anime the company is credited in.established_after,established_before— Filter by the year the company was founded.active_after,active_before— Filter companies by the start year of the anime they are credited in. Together, both must match the same anime.debut_after— Only companies whose earliest credited anime started in this year or later.last_credit_before— Only companies whose latest credited anime started in this year or earlier.
order_by=name— Sort by the company's name.order_by=debut— Sort by the start year of the company's earliest credited anime. Companies without one come last.order_by=last_credit— Sort by the start year of the company's latest credited anime. Companies without one come last.
given_name,family_name— Filter by the character's whole given name or family name, ignoring case.has_about— Filter characters by whether or not they have an about text.has_image— Filter characters by whether or not they have a picture.has_nicknames— Filter characters by whether or not they have any nicknames.has_kanji— Filter characters by whether or not they have a Japanese name.has_family_name— Filter characters by whether or not they have a family name.anime,manga— Filter by anime or manga MAL IDs. Get characters that appear in selected entries.role— Only characters MAL lists asmainorsupporting. Withanimeormanga, the role in those entries.role_only— Only characters MAL lists asmainorsupportingand never in the other role.appears_in— Filter characters by whether they appear only in anime (anime), only in manga (manga) or in both (both).airing— Filter characters by whether or not they appear in an anime airing now.voice_actors— Filter by voice-actor MAL person IDs. Can be used to filter characters by whether or not a specific voice actor voices them.voice_language— Filter by recorded voice-credit languages. Can be used to filter characters by whether or not they have an English voice actor, etc...voice_language_exclude— Exclude characters with a voice actor credited in selected languages.has_voice_actor— Filter characters by whether or not they have a credited voice actor.sfw— Filter out characters that only appear in non-sfw entries.
min_appearances,max_appearances— Filter by the number of anime and manga the character appears in.min_anime_appearances,max_anime_appearances— Filter by the number of anime the character appears in.min_manga_appearances,max_manga_appearances— Filter by the number of manga the character appears in.min_main_roles,max_main_roles— Filter by the number of anime and manga MAL lists the character as a main character in.min_supporting_roles,max_supporting_roles— Filter by the number of anime and manga MAL lists the character as a supporting character in.min_voice_languages,max_voice_languages— Filter by the number of languages the character has a credited voice actor in.min_voice_actors,max_voice_actors— Filter by the number of credited voice actors the character has, across all languages.
order_by=name_kanji— Sort by the character's Japanese name. Characters without one come last.order_by— Now also sorts by every count above:appearances,anime_appearances,manga_appearances,main_roles,supporting_roles,voice_languagesandvoice_actors. Most first, withsort=ascfor the fewest first.
ids— Only search within these MAL IDs, such as the ones on a user's list. All other filters and sorting still apply. Accepts up to 1000 IDs.exclude_ids— Exclude entries with these MAL IDs, such as the ones already on a user's list. Accepts up to 1000 IDs.max_reviews— Set a maximum number of stored reviews.character_role— Only count the characters incharacterswhen MAL lists them asmainorsupporting. Requirescharacters.year— Now accepts multiple years, up to 25.
rating_exclude— Exclude selected ratings.producers_exclude— Exclude anime by selected producer, studio or licensor MAL IDs.broadcast_day— Filter by the day of the week the anime airs in Japan. Also acceptstodayandtomorrow, which follow the date in Japan and move on at midnight Japan time.added_after,added_before— Filter by the date MAL added the anime. Only works with approved anime.order_by=added— Sort by the date MAL added the anime, withsort=descfor the newest first. Only works with approved anime.season— Now accepts multiple seasons.season_year— Now accepts multiple years, up to 25.
authors_exclude— Exclude manga by selected author MAL person IDs.author_role— Only count the authors inauthorswhen MAL credits them for thestoryor theart. Requiresauthors.solo_author— Filter manga by whether they were written and drawn by one person (true) or made by a team (false).
exclude_ids added to top, seasonal and random listsAdded exclude_ids to /top/anime, /top/manga, /seasons/{year}/{season}, /seasons/now, /seasons/previous, /seasons/upcoming, /random/anime and /random/manga. Accepts up to 1000 IDs.
ids— Request up to 24 additional IDs to be included in the same response, 25 IDs in total.
Example:https://api.tenrai.org/v1/anime/1/full?ids=20,21,1535,5114,9253,11757,16498
Or with SFW flag:https://api.tenrai.org/v1/anime/1/full?ids=20,1535&sfw=true
The SFW flag when combined with batched requests applies the flag on all IDs, so you can't pick 3 IDs to be SFW and 2 IDs to not be SFW. Something to keep in mind.
Batching is also compatible with deleted and denied archive mode, so you can do batch lookups on multiple deleted/denied entries.https://api.tenrai.org/v1/anime/35500/full?mode=deleted&ids=54591,38938
All of these work the exact same across both anime and manga.
GET /v1/top/videos
Browse anime trailers and music videos ranked by YouTube statistics.
min_id,max_id— Filter by MAL ID range.max_scored_by— Set a maximum number of scoring users.status— Now accepts multiple statuses.type_exclude— Exclude selected formats.status_exclude— Exclude selected statuses.characters— Filter by MAL character IDs. Get anime where selected characters appear.min_reviews— Require a minimum number of stored reviews, including spoiler and preliminary reviews.nulls— Control entries missing the value being sorted. Requiresorder_by.
source_exclude— Exclude selected source materials.season_year— Filter by MAL’s debut-season year.staff— Filter by credited staff MAL person IDs. Can be used to filter anime by whether or not a specific staff has worked on them.voice_actors— Filter by voice-actor MAL person IDs. Can be used to filter anime by whether or not a specific voice actor appears in them.voice_language— Filter by recorded voice-credit languages. Can be used to filter anime by whether or not an English dub exists, etc...streaming_service— Filter anime by streaming providers such as Crunchyroll, Netflix or HIDIVE. Names ignore capitalization and extra spaces, with known aliases accepted. This does not verify current regional availability.has_relations— Filter anime by whether or not they have any relationship to another anime and/or manga entry.
magazines_exclude— Exclude selected magazines or serialization platforms using their MAL IDs.
mode— Switch /full to either denied or deleted lookup mode so you can lookup individual denied/deleted IDs. IDs that don't exist in either archive or are approved/unapproved returns a 404.
/top/episodes
Browse anime episodes ranked using their MAL discussion-poll ratings.
- Omit
order_byfor the default weighted ranking, which accounts for both the average rating and the number of votes. order_by=score: highest average rating first, limited to episodes with at least 100 votes.order_by=votes: most poll votes first.order_by=comments: most forum replies first.
/top/recommendations
Browse the most recommended anime or manga pairs.
Added to both /anime and /manga:
min_scored_by: minimum number of users who scored the title.min_members,max_members: member-count bounds.min_favorites,max_favorites: favorites-count bounds.year,min_year,max_year: exact start year or a start-year range.
Added to /anime:
min_episodes,max_episodes: episode-count bounds.source: filter by source material; accepts multiple sources.season: debut season (winter,spring,summer,fall).has_trailer=true|false: filter by whether a main-trailer YouTube ID or URL is stored. This does not check playback availability.
Added to /manga:
min_chapters,max_chapters: chapter-count bounds.min_volumes,max_volumes: volume-count bounds.authors: filter by credited authors or artists using MAL person IDs; accepts multiple IDs.
Added min_favorites and max_favorites to /characters, /people and /producers.
Added to both /top/anime and /top/manga:
min_members,max_membersgenres,genres_excludesort=asc|desc
Added to /top/anime: min_episodes, max_episodes.
Added to /top/manga:
min_chapters,max_chaptersmin_volumes,max_volumes
Added to /seasons/{year}/{season}, /seasons/now, /seasons/previous and /seasons/upcoming:
genres,genres_excludemin_members,max_membersmin_episodes,max_episodes- New
order_bychoices:mal_id,episodes,favorites,end_date,scored_by,title
Added status to dated, current and previous seasons. It is not available on /seasons/upcoming.
Added type, rating, genres and genres_exclude to /schedules.
Added to both /random/anime and /random/manga:
type,statusgenres,genres_excludemin_score,max_scoreyear,min_year,max_year
Added to /random/anime:
sourcerating:g,pg,pg13,r17,r,rxhas_trailer=true|falseproducers: MAL company IDs, matching producers, studios or licensors.
Added to /random/manga: authors, MAL person IDs for credited authors or artists.
Added min_favorites and max_favorites to /random/characters and /random/people.
Added username to:
/reviews/animeand/reviews/manga/top/reviews/anime/{id}/reviewsand/manga/{id}/reviews/recommendations/animeand/recommendations/manga/anime/{id}/recommendationsand/manga/{id}/recommendations
Added author_username to:
/newsand/articles/anime/{id}/newsand/manga/{id}/news/anime/{id}/articlesand/manga/{id}/articles/characters/{id}/articlesand/people/{id}/articles
Added order_by=published_at|comments and sort=asc|desc to:
/news/anime/{id}/news/manga/{id}/news
Added published_after and published_before to:
/newsand/articles/anime/{id}/newsand/manga/{id}/news/anime/{id}/articlesand/manga/{id}/articles/characters/{id}/articlesand/people/{id}/articles
New endpoints:
- https://api.tenrai.org/documentation#tag/anime/GET/anime/{id}/statistics/history
- https://api.tenrai.org/documentation#tag/manga/GET/manga/{id}/statistics/history
- https://api.tenrai.org/documentation#tag/manga/GET/manga/adapted
Day-by-day history of score, members, rank, popularity and favorites for every anime and manga, together with the statistics page (status counts and score votes) on the days it was read. Also new: the manga MyAnimeList lists as adapted to anime.
New endpoint:
Functions just like anime forum endpoint but for manga. As with the anime forum endpoint this one just returns manga chapter threads.
New endpoints:
- https://api.tenrai.org/documentation#tag/manga/GET/manga/unapproved
- https://api.tenrai.org/documentation#tag/manga/GET/manga/denied
These function the same as their anime equivalents. As with the anime endpoints, unapproved manga are reachable through the regular endpoints as well
Unapproved Anime are fully live now.
New endpoints:
Unapproved anime can also be accessed through normal anime search, along with /full etc...
Denied anime entries are unapproved anime that were deleted/rejected by MAL. These are on a separate table and only accessible through the denied endpoint just like with the deleted anime and their endpoint.
You'll notice that the denied endpoint has tons of entries already filled. https://purarue.xyz/dbsentinel/ kindly provided us a database dump so we've absorbed their anime data. We'll absorb their manga data as well when unapproved manga is implemented, which will be coming up next.
Added deleted entries lists for deleted IDs
GET /v1/anime/deleted(Browse deleted anime entries)GET /v1/manga/deleted(Browse deleted manga entries)
GET /v1/anime/denied(Browse denied anime entries)
Interest Stacks have been added to Tenrai v1, bringing public MyAnimeList Interest Stack browsing to the API.
New Main Interest Stacks Category:
GET /v1/stacks(Browse/search all public interest stacks)GET /v1/stacks/:id(Get full interest stack details, including entries in source order)
New Entity-Linked Interest Stack Endpoints:
GET /v1/anime/:id/stacks(Get all public interest stacks for an anime)GET /v1/manga/:id/stacks(Get all public interest stacks for a manga)
Public rate limits have increased to 120 requests per minute and 4 requests per second.
Featured Articles have been added. While originally planned for Jikan v5, we've brought them forward to Tenrai v1.
New Main Articles Category:
GET /v1/articles(Browse/search all featured articles)GET /v1/articles/tags(Get all article tags & counts)GET /v1/articles/:id(Get full article details)
New Entity-Linked Article Endpoints:
GET /v1/anime/:id/articlesGET /v1/manga/:id/articlesGET /v1/people/:id/articlesGET /v1/characters/:id/articles
GET /v1/anime/:id/forum)The Anime Forum endpoint is now live. Manga /forum will come soon.
- Episode Threads Only: Currently returns episode discussion threads.
- Jikan v4 Compatible: Uses the exact same schema as Jikan v4 (supports
filter=episode).
GET /v1/anime/:id/episodes)Anime episodes now expose individual cover images where available.
- Source: Cover images are sourced from Crunchyroll (since that's what MAL uses and links on their pages).
- Note: If an anime isn't available on Crunchyroll, cover images may be missing for now. We are working on expanding image coverage for titles beyond Crunchyroll catalogue in future, along with higher quality covers.
We've removed the 3 character minimum limit from all search endpoints.
Server keys now have their own separate cache. All responses are cached for 10 mins. Meaning server key users will be able to access updated information slightly quicker than public api users.
We've also optimized and accelerated the top and seasons endpoints. These endpoints are frequently used in home pages of many applications, so improvements are very meaningful here. Your apps should hopefully be a little snappier now.
SFW filtering is now available for:
- Search and browse endpoints:
GET /v1/animeGET /v1/anime/idsGET /v1/mangaGET /v1/manga/idsGET /v1/seasons/{year}/{season}GET /v1/seasons/nowGET /v1/seasons/previousGET /v1/seasons/upcomingGET /v1/schedules
- Top and random endpoints:
GET /v1/top/animeGET /v1/top/mangaGET /v1/top/reviewsGET /v1/top/recommendationsGET /v1/top/episodesGET /v1/top/videosGET /v1/random/animeGET /v1/random/manga
- Anime and manga related-content endpoints:
GET /v1/anime/{id}/fullGET /v1/anime/{id}/relationsGET /v1/anime/{id}/recommendationsGET /v1/anime/{id}/newsGET /v1/manga/{id}/fullGET /v1/manga/{id}/relationsGET /v1/manga/{id}/recommendationsGET /v1/manga/{id}/news
- Character endpoints:
GET /v1/characters/{id}/animeGET /v1/characters/{id}/mangaGET /v1/characters/{id}/full
- People endpoints:
GET /v1/people/{id}/animeGET /v1/people/{id}/mangaGET /v1/people/{id}/voicesGET /v1/people/{id}/full
- Recommendation and review feeds:
GET /v1/recommendations/animeGET /v1/recommendations/mangaGET /v1/reviews/animeGET /v1/reviews/manga
- Normal SFW filtering excludes:
- Anime rated R+ or Rx
- Hentai-tagged content
- Erotica-tagged content
- Added a new
sfw-strictflag wherever SFW filtering is available. Strict mode adds Ecchi filtering on top of the normal SFW exclusions. - Strict filtering only takes effect when SFW filtering is enabled.
- Full/detail endpoints continue returning the requested root anime, manga, character, or person. SFW filtering applies to referenced media returned inside relations, recommendations, appearances, voice roles, and news relationships etc...
These changes should allow for much better fine control over the contents you want displayed within your apps.
We've also updated Ratings filters in all endpoints that have them to support use of multiple ratings within a single request, same as we currently allow with types.
/v1/news: GET /v1/news for paginated news lists with search and tag filtering, GET /v1/news/:id for full news details with related anime/manga details, and GET /v1/news/tags to list news categories with counts.title, views, likes, dislikes, comment_count, published_at, duration, privacy_status, region_restriction, and embeddable) for trailers and promotional/music videos in the /anime/:id, /anime/:id/full, and /anime/:id/videos endpoints.images object containing JPG and WebP paths) to related entries in the /anime/:id/relations and /anime/:id/full endpoints.media_type of related entries (e.g. Light Novel, Manga, Novel, TV, etc.) to the /anime/:id/full, /anime/:id/relations, /manga/:id/full, and /manga/:id/relations endpoint responses.replies count (number of forum replies) to the /anime/:id/episodes and /anime/:id/episodes/:episode_id endpoint responses./random/anime, /random/manga, /random/characters, and /random/people returning the same result on every request. Responses are no longer cached.moreinfo field containing trivia and detailed notes to the /anime/:id/full endpoint response.synopsis) to the /anime/:id/episodes endpoint response.type, status, sfw, rating), optional field inclusion (include=title,type), result totals, and updated_at filtering by ISO 8601 date-time or Unix timestamp in the /anime/ids and /manga/ids endpoints. Corrected manga IDs example schema metadata.favorites count to the person schema inside the /anime/:id/characters endpoint response./s/ paths) were missing the cdn. prefix. They now correctly resolve to https://cdn.myanimelist.net.https://cdn.myanimelist.net/images.