Jikan API (4.0.0)

Download OpenAPI specification:Download

Jikan is an Unofficial MyAnimeList API. It scrapes the website to satisfy the need for a complete API - which MyAnimeList lacks.

Information

⚡ Jikan is powered by its awesome backers - 🙏 Become a backer

Rate Limiting

Duration Requests
Daily Unlimited
Per Minute 60 requests
Per Second 3 requests

Note: It's still possible to get rate limited from MyAnimeList.net instead.

JSON Notes

  • Any property (except arrays or objects) whose value does not exist or is undetermined, will be null.
  • Any array or object property whose value does not exist or is undetermined, will be empty.
  • Any score property whose value does not exist or is undetermined, will be 0.
  • All dates and timestamps are returned in ISO8601 format and in UTC timezone

Caching

By CACHING, we refer to the data parsed from MyAnimeList which is stored temporarily on our servers to provide better API performance.

All requests are cached for 24 hours.

The following response headers will detail cache information.

Header Remarks
Expires Cache expiry date
Last-Modified Cache set date
X-Request-Fingerprint Unique request fingerprint (only for cachable requests, not queries)

Note: X-Request-Fingerprint will only be available on single resource requests and their child endpoints. e.g /anime/1, /anime/1/relations. They won't be available on pages which perform queries, like /anime, or /top/anime, etc.

Allowed HTTP(s) requests

Jikan REST API does not provide authenticated requests for MyAnimeList. This means you can not use it to update your anime/manga list. Only GET requests are supported which return READ-ONLY data.

HTTP Responses

All error responses are accompanied by a JSON Error response.

Exception HTTP Status Remarks
N/A 200 - OK The request was successful
N/A 304 - Not Modified You have the latest data (Cache Validation response)
BadRequestException,ValidationException 400 - Bad Request You've made an invalid request. Recheck documentation
BadResponseException 404 - Not Found The resource was not found or MyAnimeList responded with a 404
BadRequestException 405 - Method Not Allowed Requested Method is not supported for resource. Only GET requests are allowed
RateLimitException 429 - Too Many Request You are being rate limited by Jikan or MyAnimeList is rate-limiting our servers (specified in the error response)
UpstreamException,ParserException,etc. 500 - Internal Server Error Something didn't work. Try again later. If you see an error response with a report_url URL, please click on it to open an auto-generated GitHub issue
ServiceUnavailableException 503 - Service Unavailable In most cases this is intentionally done if the service is down for maintenance.

JSON Error Response

 {
     "status": 500,
     "type": "InternalException",
     "message": "Exception Message",
     "error": "Exception Trace",
     "report_url": "https://github.com..."
  }
Property Remarks
status Returned HTTP Status Code
type Thrown Exception
message Human-readable error message
error Error response and trace from the API
report_url Clicking this would redirect you to a generated GitHub issue

Cache Validation

  • All requests return a ETag header which is an MD5 hash of the response
  • You can use this hash to verify if there's new or updated content by suppliying it as the value for the If-None-Match in your next request header
  • You will get a HTTP 304 - Not Modified response if the content has not changed
  • If the content has changed, you'll get a HTTP 200 - OK response with the updated JSON response

Cache Validation

Disclaimer

  • Jikan is not affiliated with MyAnimeList.net.
  • Jikan is a free, open-source API. Please use it responsibly.

By using the API, you are agreeing to Jikan's terms of use policy.

v3 Documentation - Wrappers/SDKs - Report an issue - Host your own server

anime

getAnimeFullById

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getAnimeById

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getAnimeCharacters

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getAnimeStaff

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getAnimeEpisodes

path Parameters
id
required
integer
query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getAnimeEpisodeById

path Parameters
id
required
integer
episode
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getAnimeNews

path Parameters
id
required
integer
query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "pagination": {
    },
  • "data": [
    ]
}

getAnimeForum

path Parameters
id
required
integer
query Parameters
filter
string
Enum: "all" "episode" "other"

Filter topics

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getAnimeVideos

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getAnimeVideosEpisodes

path Parameters
id
required
integer
query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getAnimePictures

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getAnimeStatistics

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getAnimeMoreInfo

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getAnimeRecommendations

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getAnimeUserUpdates

path Parameters
id
required
integer
query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getAnimeReviews

path Parameters
id
required
integer
query Parameters
page
integer
preliminary
boolean

Any reviews left during an ongoing anime/manga, those reviews are tagged as preliminary. NOTE: Preliminary reviews are not returned by default so if the entry is airing/publishing you need to add this otherwise you will get an empty list. e.g usage: ?preliminary=true

spoilers
boolean

Any reviews that are tagged as a spoiler. Spoiler reviews are not returned by default. e.g usage: ?spoiler=true

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getAnimeRelations

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getAnimeThemes

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getAnimeExternal

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getAnimeStreaming

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getAnimeSearch

query Parameters
unapproved
boolean

This is a flag. When supplied it will include entries which are unapproved. Unapproved entries on MyAnimeList are those that are user submitted and have not yet been approved by MAL to show up on other pages. They will have their own specifc pages and are often removed resulting in a 404 error. You do not need to pass a value to it. e.g usage: ?unapproved

page
integer
limit
integer
q
string
type
string (anime_search_query_type)
Enum: "tv" "movie" "ova" "special" "ona" "music" "cm" "pv" "tv_special"

Available Anime types

score
number
min_score
number

Set a minimum score for results.

max_score
number

Set a maximum score for results

status
string (anime_search_query_status)
Enum: "airing" "complete" "upcoming"

Available Anime statuses

rating
string (anime_search_query_rating)
Enum: "g" "pg" "pg13" "r17" "r" "rx"

Available Anime audience ratings

Ratings

  • G - All Ages
  • PG - Children
  • PG-13 - Teens 13 or older
  • R - 17+ (violence & profanity)
  • R+ - Mild Nudity
  • Rx - Hentai

sfw
boolean

Filter out Adult entries

genres
string

Filter by genre(s) IDs. Can pass multiple with a comma as a delimiter. e.g 1,2,3

genres_exclude
string

Exclude genre(s) IDs. Can pass multiple with a comma as a delimiter. e.g 1,2,3

order_by
string (anime_search_query_orderby)
Enum: "mal_id" "title" "start_date" "end_date" "episodes" "score" "scored_by" "rank" "popularity" "members" "favorites"

Available Anime order_by properties

sort
string (search_query_sort)
Enum: "desc" "asc"

Search query sort direction

letter
string

Return entries starting with the given letter

producers
string

Filter by producer(s) IDs. Can pass multiple with a comma as a delimiter. e.g 1,2,3

start_date
string

Filter by starting date. Format: YYYY-MM-DD. e.g 2022, 2005-05, 2005-01-01

end_date
string

Filter by ending date. Format: YYYY-MM-DD. e.g 2022, 2005-05, 2005-01-01

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

characters

getCharacterFullById

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getCharacterById

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getCharacterAnime

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getCharacterManga

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getCharacterVoiceActors

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getCharacterPictures

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getCharactersSearch

query Parameters
page
integer
limit
integer
q
string
order_by
string (characters_search_query_orderby)
Enum: "mal_id" "name" "favorites"

Available Character order_by properties

sort
string (search_query_sort)
Enum: "desc" "asc"

Search query sort direction

letter
string

Return entries starting with the given letter

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

clubs

getClubsById

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getClubMembers

path Parameters
id
required
integer
query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "pagination": {
    },
  • "data": [
    ]
}

getClubStaff

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getClubRelations

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getClubsSearch

query Parameters
page
integer
limit
integer
q
string
type
string (club_search_query_type)
Enum: "public" "private" "secret"

Club Search Query Type

category
string (club_search_query_category)
Enum: "anime" "manga" "actors_and_artists" "characters" "cities_and_neighborhoods" "companies" "conventions" "games" "japan" "music" "other" "schools"

Club Search Query Category

order_by
string (club_search_query_orderby)
Enum: "mal_id" "name" "members_count" "created"

Club Search Query OrderBy

sort
string (search_query_sort)
Enum: "desc" "asc"

Search query sort direction

letter
string

Return entries starting with the given letter

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

genres

getAnimeGenres

query Parameters
filter
string (genre_query_filter)
Enum: "genres" "explicit_genres" "themes" "demographics"

Filter genres by type

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getMangaGenres

query Parameters
filter
string (genre_query_filter)
Enum: "genres" "explicit_genres" "themes" "demographics"

Filter genres by type

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

magazines

getMagazines

query Parameters
page
integer
limit
integer
q
string
order_by
string (magazines_query_orderby)
Enum: "mal_id" "name" "count"

Order by magazine data

sort
string (search_query_sort)
Enum: "desc" "asc"

Search query sort direction

letter
string

Return entries starting with the given letter

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

manga

getMangaFullById

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getMangaById

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getMangaCharacters

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getMangaNews

path Parameters
id
required
integer
query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "pagination": {
    },
  • "data": [
    ]
}

getMangaTopics

path Parameters
id
required
integer
query Parameters
filter
string
Enum: "all" "episode" "other"

Filter topics

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getMangaPictures

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getMangaStatistics

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getMangaMoreInfo

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getMangaRecommendations

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getMangaUserUpdates

path Parameters
id
required
integer
query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getMangaReviews

path Parameters
id
required
integer
query Parameters
page
integer
preliminary
boolean

Any reviews left during an ongoing anime/manga, those reviews are tagged as preliminary. NOTE: Preliminary reviews are not returned by default so if the entry is airing/publishing you need to add this otherwise you will get an empty list. e.g usage: ?preliminary=true

spoilers
boolean

Any reviews that are tagged as a spoiler. Spoiler reviews are not returned by default. e.g usage: ?spoiler=true

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getMangaRelations

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getMangaExternal

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getMangaSearch

query Parameters
unapproved
boolean

This is a flag. When supplied it will include entries which are unapproved. Unapproved entries on MyAnimeList are those that are user submitted and have not yet been approved by MAL to show up on other pages. They will have their own specifc pages and are often removed resulting in a 404 error. You do not need to pass a value to it. e.g usage: ?unapproved

page
integer
limit
integer
q
string
type
string (manga_search_query_type)
Enum: "manga" "novel" "lightnovel" "oneshot" "doujin" "manhwa" "manhua"

Available Manga types

score
number
min_score
number

Set a minimum score for results.

max_score
number

Set a maximum score for results

status
string (manga_search_query_status)
Enum: "publishing" "complete" "hiatus" "discontinued" "upcoming"

Available Manga statuses

sfw
boolean

Filter out Adult entries

genres
string

Filter by genre(s) IDs. Can pass multiple with a comma as a delimiter. e.g 1,2,3

genres_exclude
string

Exclude genre(s) IDs. Can pass multiple with a comma as a delimiter. e.g 1,2,3

order_by
string (manga_search_query_orderby)
Enum: "mal_id" "title" "start_date" "end_date" "chapters" "volumes" "score" "scored_by" "rank" "popularity" "members" "favorites"

Available Manga order_by properties

sort
string (search_query_sort)
Enum: "desc" "asc"

Search query sort direction

letter
string

Return entries starting with the given letter

magazines
string

Filter by magazine(s) IDs. Can pass multiple with a comma as a delimiter. e.g 1,2,3

start_date
string

Filter by starting date. Format: YYYY-MM-DD. e.g 2022, 2005-05, 2005-01-01

end_date
string

Filter by ending date. Format: YYYY-MM-DD. e.g 2022, 2005-05, 2005-01-01

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

people

getPersonFullById

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getPersonById

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getPersonAnime

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getPersonVoices

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getPersonManga

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getPersonPictures

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getPeopleSearch

query Parameters
page
integer
limit
integer
q
string
order_by
string (people_search_query_orderby)
Enum: "mal_id" "name" "birthday" "favorites"

Available People order_by properties

sort
string (search_query_sort)
Enum: "desc" "asc"

Search query sort direction

letter
string

Return entries starting with the given letter

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

producers

getProducerById

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getProducerFullById

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getProducerExternal

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getProducers

query Parameters
page
integer
limit
integer
q
string
order_by
string (producers_query_orderby)
Enum: "mal_id" "count" "favorites" "established"

Producers Search Query Order By

sort
string (search_query_sort)
Enum: "desc" "asc"

Search query sort direction

letter
string

Return entries starting with the given letter

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

random

getRandomAnime

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getRandomManga

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getRandomCharacters

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getRandomPeople

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getRandomUsers

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

recommendations

getRecentAnimeRecommendations

query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getRecentMangaRecommendations

query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

reviews

getRecentAnimeReviews

query Parameters
page
integer
preliminary
boolean

Any reviews left during an ongoing anime/manga, those reviews are tagged as preliminary. NOTE: Preliminary reviews are not returned by default so if the entry is airing/publishing you need to add this otherwise you will get an empty list. e.g usage: ?preliminary=true

spoilers
boolean

Any reviews that are tagged as a spoiler. Spoiler reviews are not returned by default. e.g usage: ?spoiler=true

Responses

Response samples

Content type
application/json
null

getRecentMangaReviews

query Parameters
page
integer
preliminary
boolean

Any reviews left during an ongoing anime/manga, those reviews are tagged as preliminary. NOTE: Preliminary reviews are not returned by default so if the entry is airing/publishing you need to add this otherwise you will get an empty list. e.g usage: ?preliminary=true

spoilers
boolean

Any reviews that are tagged as a spoiler. Spoiler reviews are not returned by default. e.g usage: ?spoiler=true

Responses

Response samples

Content type
application/json
null

schedules

getSchedules

query Parameters
filter
string
Enum: "monday" "tuesday" "wednesday" "thursday" "friday" "saturday" "sunday" "unknown" "other"

Filter by day

kids
string
Enum: "true" "false"

When supplied, it will filter entries with the Kids Genre Demographic. When supplied as kids=true, it will return only Kid entries and when supplied as kids=false, it will filter out any Kid entries. Defaults to false.

sfw
string
Enum: "true" "false"

'Safe For Work'. When supplied, it will filter entries with the Hentai Genre. When supplied as sfw=true, it will return only SFW entries and when supplied as sfw=false, it will filter out any Hentai entries. Defaults to false.

unapproved
boolean

This is a flag. When supplied it will include entries which are unapproved. Unapproved entries on MyAnimeList are those that are user submitted and have not yet been approved by MAL to show up on other pages. They will have their own specifc pages and are often removed resulting in a 404 error. You do not need to pass a value to it. e.g usage: ?unapproved

page
integer
limit
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

users

getUsersSearch

query Parameters
page
integer
limit
integer
q
string
gender
string (users_search_query_gender)
Enum: "any" "male" "female" "nonbinary"

Users Search Query Gender.

location
string
maxAge
integer
minAge
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getUserById

path Parameters
id
required
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getUserFullProfile

path Parameters
username
required
string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getUserProfile

path Parameters
username
required
string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getUserStatistics

path Parameters
username
required
string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getUserFavorites

path Parameters
username
required
string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getUserUpdates

path Parameters
username
required
string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getUserAbout

path Parameters
username
required
string

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getUserHistory

path Parameters
username
required
string
query Parameters
type
string
Enum: "anime" "manga"

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getUserFriends

path Parameters
username
required
string
query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getUserAnimelist Deprecated

User Anime lists have been discontinued since May 1st, 2022. Read more

path Parameters
username
required
string
query Parameters
status
string (user_anime_list_status_filter)
Enum: "all" "watching" "completed" "onhold" "dropped" "plantowatch"

User's anime list status filter options

Responses

Response samples

Content type
application/json
null

getUserMangaList Deprecated

User Manga lists have been discontinued since May 1st, 2022. Read more

path Parameters
username
required
string
query Parameters
status
string (user_manga_list_status_filter)
Enum: "all" "reading" "completed" "onhold" "dropped" "plantoread"

User's anime list status filter options

Responses

Response samples

Content type
application/json
null

getUserReviews

path Parameters
username
required
string
query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

getUserRecommendations

path Parameters
username
required
string
query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getUserClubs

path Parameters
username
required
string
query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getUserExternal

path Parameters
username
required
string

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

seasons

getSeasonNow

query Parameters
filter
string
Enum: "tv" "movie" "ova" "special" "ona" "music"

Entry types

sfw
boolean

'Safe For Work'. This is a flag. When supplied it will filter out entries according to the SFW Policy. You do not need to pass a value to it. e.g usage: ?sfw

unapproved
boolean

This is a flag. When supplied it will include entries which are unapproved. Unapproved entries on MyAnimeList are those that are user submitted and have not yet been approved by MAL to show up on other pages. They will have their own specifc pages and are often removed resulting in a 404 error. You do not need to pass a value to it. e.g usage: ?unapproved

continuing
boolean

This is a flag. When supplied it will include entries which are continuing from previous seasons. MAL includes these items on the seasons view in the ″TV (continuing)″ section. (Example: https://myanimelist.net/anime/season/2024/winter)
Example usage: ?continuing

page
integer
limit
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getSeason

path Parameters
year
required
integer
season
required
string
query Parameters
filter
string
Enum: "tv" "movie" "ova" "special" "ona" "music"

Entry types

sfw
boolean

'Safe For Work'. This is a flag. When supplied it will filter out entries according to the SFW Policy. You do not need to pass a value to it. e.g usage: ?sfw

unapproved
boolean

This is a flag. When supplied it will include entries which are unapproved. Unapproved entries on MyAnimeList are those that are user submitted and have not yet been approved by MAL to show up on other pages. They will have their own specifc pages and are often removed resulting in a 404 error. You do not need to pass a value to it. e.g usage: ?unapproved

continuing
boolean

This is a flag. When supplied it will include entries which are continuing from previous seasons. MAL includes these items on the seasons view in the ″TV (continuing)″ section. (Example: https://myanimelist.net/anime/season/2024/winter)
Example usage: ?continuing

page
integer
limit
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getSeasonsList

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

getSeasonUpcoming

query Parameters
filter
string
Enum: "tv" "movie" "ova" "special" "ona" "music"

Entry types

sfw
boolean

'Safe For Work'. This is a flag. When supplied it will filter out entries according to the SFW Policy. You do not need to pass a value to it. e.g usage: ?sfw

unapproved
boolean

This is a flag. When supplied it will include entries which are unapproved. Unapproved entries on MyAnimeList are those that are user submitted and have not yet been approved by MAL to show up on other pages. They will have their own specifc pages and are often removed resulting in a 404 error. You do not need to pass a value to it. e.g usage: ?unapproved

continuing
boolean

This is a flag. When supplied it will include entries which are continuing from previous seasons. MAL includes these items on the seasons view in the ″TV (continuing)″ section. (Example: https://myanimelist.net/anime/season/2024/winter)
Example usage: ?continuing

page
integer
limit
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

top

getTopAnime

query Parameters
type
string (anime_search_query_type)
Enum: "tv" "movie" "ova" "special" "ona" "music" "cm" "pv" "tv_special"

Available Anime types

filter
string (top_anime_filter)
Enum: "airing" "upcoming" "bypopularity" "favorite"

Top items filter types

rating
string (anime_search_query_rating)
Enum: "g" "pg" "pg13" "r17" "r" "rx"

Available Anime audience ratings

Ratings

  • G - All Ages
  • PG - Children
  • PG-13 - Teens 13 or older
  • R - 17+ (violence & profanity)
  • R+ - Mild Nudity
  • Rx - Hentai

sfw
boolean

Filter out Adult entries

page
integer
limit
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getTopManga

query Parameters
type
string (manga_search_query_type)
Enum: "manga" "novel" "lightnovel" "oneshot" "doujin" "manhwa" "manhua"

Available Manga types

filter
string (top_manga_filter)
Enum: "publishing" "upcoming" "bypopularity" "favorite"

Top items filter types

page
integer
limit
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getTopPeople

query Parameters
page
integer
limit
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getTopCharacters

query Parameters
page
integer
limit
integer

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getTopReviews

query Parameters
page
integer
type
string (top_reviews_type_enum)
Enum: "anime" "manga"

The type of reviews to filter by. Defaults to anime.

preliminary
boolean

Whether the results include preliminary reviews or not. Defaults to true.

spoilers
boolean

Whether the results include reviews with spoilers or not. Defaults to true.

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

watch

getWatchRecentEpisodes

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getWatchPopularEpisodes

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

getWatchRecentPromos

query Parameters
page
integer

Responses

Response samples

Content type
application/json
{
  • "pagination": {
    },
  • "title": "string",
  • "data": [
    ]
}

getWatchPopularPromos

Responses

Response samples

Content type
application/json
{
  • "pagination": {
    },
  • "title": "string",
  • "data": [
    ]
}