New
Jan 27, 2018 7:04 AM
#61
Jan 27, 2018 12:22 PM
#62
| REST API 2.1 RELEASED HIGHLIGHTS
- Stats parse MAL + scoring data from the stats page of any anime or manga - Pictures are parsed from the 'pictures' page of any anime, manga, person or character - Videos are parsed from anime. These include PVs & episode links (if any) - News is parsed from Anime or manga OTHER
- Detailed Changelog - Documentation I've tried and kept endpoints as simple, here's a quick tutorial of how the new endpoints work if you don't want to hit the docs. Stats https://api.jikan.moe/{anime|manga}/{id}/statshttps://api.jikan.moe/anime/21/stats https://api.jikan.moe/manga/1/stats Pictures https://api.jikan.moe/{anime|manga|character|person}/{id}/pictureshttps://api.jikan.moe/anime/1/pictures https://api.jikan.moe/manga/1/pictures https://api.jikan.moe/character/1/pictures https://api.jikan.moe/person/1/pictures Videos https://api.jikan.moe/anime/{id}/videoshttps://api.jikan.moe/anime/1/videos And the most awaited feature, Search https://api.jikan.moe/search/{anime|manga|character|person|people}/{query}/{page}Note: People is an alias of Person. Note 2: There may be some bugs as this endpoint is still in beta. https://api.jikan.moe/search/anime/code%20geass https://api.jikan.moe/search/character/shou/2 https://api.jikan.moe/search/person/hanazawa https://api.jikan.moe/search/manga/naruto A more in-depth search with filters and flags are in the works. You may track the progress here. All cache has been cleared to reflect the updated schema (nothing changed, only additions). Services may be slightly slower. Jikan | Documentation | JikanPHP (Parser) | Report A Bug |
Nekomata1037Apr 11, 2018 11:34 AM
Jan 30, 2018 7:50 PM
#63
| Hi, this API looks great! I'm new to webdev and I'm slowly learning, so I may have some dumb questions in the future. Does this API let you access/modify things in user lists, or is that something I can currently only do through the official MAL API? |
Jan 31, 2018 1:16 PM
#64
| @Ocarina1494 No such thing as a dumb question, fire away! This API only covers what the official API lacks, such as getting info to your favorite show, author, seiyuu, etc via unauthenticated GET (simple requests, even possible through your browser) requests. To perform authenticated requests such as modifying user lists is something only the official API can do. |
Feb 1, 2018 12:37 PM
#65
| Hear ye! Jikan now has an amazing Ruby wrapper library thanks to Zerocchi. Get started: https://github.com/Zerocchi/jikan.rb Installation w/ Gem: gem install jikan.rb |
Nekomata1037Mar 21, 2018 10:53 PM
Mar 26, 2018 12:28 AM
#66
| Well hello. Great API. I think I will use it in my ext. My question is the request limit is still there? |
Mar 27, 2018 8:12 AM
#67
sasalx said: Well hello. Great API. I think I will use it in my ext. My question is the request limit is still there? Hi @sasalx, I hope you do! The limit had been increased to 5,000 requests per IP per day a few weeks back.(I didn't really announce it.) If you need a higher limit, we can discuss it. |
Mar 28, 2018 9:51 AM
#68
Nekomata1037 said: sasalx said: Well hello. Great API. I think I will use it in my ext. My question is the request limit is still there? Hi @sasalx, I hope you do! The limit had been increased to 5,000 requests per IP per day a few weeks back.(I didn't really announce it.) If you need a higher limit, we can discuss it. I think it should be fine. However I want to ask something else. How the API handles the sorting of the search results? For example https://api.jikan.me/search/anime/Kaichou_wa_Maid-sama returns the special of the said anime rather than first season as the first result. |
Mar 29, 2018 2:30 AM
#69
@sasalx, unfortunately I don't have control over which data is displayed first right now. The search request you're making parses off directly from this https://myanimelist.net/anime.php?q=Kaichou_wa_Maid-sama And MAL puts the special first for some reason. I'll be releasing REST 2.2 mid-April which will give you some control over the search results via filters so you'll be able to have it display TV results only if you'd like. TBA in REST Advanced search: https://github.com/jikan-me/jikan/issues/97 Release ETA: https://github.com/jikan-me/jikan/projects/1 |
Apr 11, 2018 10:20 AM
#70
| Announcement I have 2 announcements to make. 1. Jikan is being transferred to a new domain: Jikan.MOE Developers, you have until May 12th, 2018 to update your apps until jikan.me expires. 2. Jikan REST 1.X will be depreciated when REST 2.2 releases. Which will, hopefully, be sometime this month! |
Nekomata1037Apr 11, 2018 10:45 AM
Apr 12, 2018 8:45 PM
#71
I was looking through your Github and I saw files for getting schedule, seasonal, and top anime. I didn't see anything in the documentation for it, so can I assume that it works like this (based on my cursory understanding of the code):https://api.jikan.me/search/anime/[seasonal/schedule/top] |
Apr 12, 2018 10:58 PM
#72
45b16 said: I was looking through your Github and I saw files for getting schedule, seasonal, and top anime. I didn't see anything in the documentation for it, so can I assume that it works like this (based on my cursory understanding of the code): https://api.jikan.me/search/anime/[seasonal/schedule/top] @45b16, This is a bit confusing but here's the thing. The REST API is built on the PHP API (the GitHub one). Seasonal, Schedule, & Top Endpoints are implemented in the PHP API (v1.15.3) as of now. The REST API instance is v2.1, which is running on an older version of of the PHP API (v1.7.1), which does not include those features. REST v2.2 will be released within this month, hopefully in the upcoming week(s). And those endpoints are to be used like this: Seasonal https://api.jikan.moe/season{/year/season}
e.g https://api.jikan.moe/season // for current season
https://api.jikan.moe/season/2018/summer
Schedule https://api.jikan.moe/schedule // For the schedule listing of this seasons Top https://api.jikan.moe/top/anime{/page}
https://api.jikan.moe/top/manga
https://api.jikan.moe/top/manga/2 // listing of page 2
Note: These exemplary endpoints are not implemented yet and may change by the release of REST 2.2! When REST 2.2 is released, the documentation will be appropriately available in the REST Documentation P.S Switch over to api.jikan.MOE for your base URL as the .me domain will be discontinued by May 12th. |
Nekomata1037Apr 12, 2018 11:05 PM
Apr 21, 2018 6:37 AM
#73
Apr 23, 2018 12:20 PM
#74
| REST 2.2 RELEASE! I'm very excited to announce the release of REST API v2.2. It's been in the works for the past few months and a lot of new features have been added. Links - Documentation - Source Changelog Highlights
A huge thanks to previous hosters. Hosting itself is an amazing contribution. DOMAIN CHANGE TO JIKAN.MOE As mentioned in previous posts, Jikan has moved to a .moe TLD. If you haven't updated your code, do it now! If you're still using the .ME TLD, it's still running on REST 2.1. And it will expire on May 12th! NO RATE LIMITING FOR CACHED REQEUSTS Rate Limiting was introduced to prevent MAL Rate limiting JIkan from the plethora amount of requests and disk-space requirements. But since the previous and current hosters, Jikan has a bigger potential. There's a lot requests coming in daily. It's being used over multiple apps, bots and projects. That's enough to generate lots of cache. Thus, from today, there will be no throttling for any cached request! Only uncached requests will be throttled. Also, I did ninja edit the rate limit. It's no longer 2,000. The new rate limit is 5,000/day. REST API 1.X DISCONTINUED REST API 1.X has been discontinued and removed. 100+ STARS ON GITHUB! It's amazing how far the project has come. A huge thanks to everyone who's supported the project through contributions and messages! It has been a huge motivation factor for me. TOTAL OPEN-SOURCE! Jikan is available on GitHub as an organization. You can find listed the PHP Source API, the REST API, the website and wrappers built for the REST API. Everything is open source and free to use. Open-source contributions to Jikan is highly appreciated! If you can create a wrapper in your language, that'd be awesome! Examples! Here's some minor examples to motivate you to hit the docs. Fetching anime scheduling for the week https://api.jikan.moe/schedule Anime scheduling for sunday only https://api.jikan.moe/schedule/sunday Anime airing this season https://api.jikan.moe/season Anime that aired last year on winter https://api.jikan.moe/season/2017/winter Get Top Anime movies from page 2 https://api.jikan.moe/top/anime/2/movie Get search results for PG13 rated anime https://api.jikan.moe/search/anime/Boku+No/?rated=pg13 Or vice versa ( ͡° ͜ʖ ͡°) https://api.jikan.moe/search/anime/Boku+No/?rated=rx Get only movie results https://api.jikan.moe/search/anime/Bleach/?type=movie I hope this motivates you to explore the Docs as there's a lot you can do and implement. If you've any questions or bugs, you can always DM me on Discord (Nekomata#0428), PM me or open an issue! Links |
Nekomata1037Sep 4, 2018 8:01 AM
May 6, 2018 3:00 AM
#75
| Updates Jikan.me is no longer pointing to the old server (REST 2.1), now it's at REST 2.2. Friendly reminder to start using JIKAN.MOE before May 12th Good news for .Net devs, @Ervelan is developing a Dot.Net wrapper for Jikan! Github: https://github.com/Ervie/jikan.net NuGet: https://www.nuget.org/packages/JikanDotNet/ |
May 14, 2018 10:12 AM
#76
| Small update I'm proud to announce that jikan.net enter initial release and is up to date with whole Jikan APi as of today. I will be switching to issue fixing/updating mode now. Besides that, documentation with model schema and usage examples will be coming in following days/weeks. Jikan.net it MIT licensed like Jikan API, so feel free to use it wherever you like. Special thanks to Nekomata, who provided help during development. Repository: https://github.com/Ervie/jikan.net Nuget: https://www.nuget.org/packages/JikanDotNet/ Open an issue: https://github.com/Ervie/jikan.net/issues/new |
May 15, 2018 3:13 PM
#77
| hey there - I've begun work on a site that will hopefully (eventually) automate some of the challenges MAL hosts - I'm starting off trying to write some Python that will handle all of MAL 2018 AWC - from BBcode production for the forums themselves, to registration, but most importantly (and the most fun) optimizing the minimal amount of time the user has to spend making their list instead of watching anime! i'll be going about that by implementing a sort of minimum coverage algorithm so i can find the optimal ordering of anime for each question possible, or each question asked (according to a user's difficulty). in order to do that, i'll be hardcoding the questions whenever a new year is created - so as of right now, i'm trying to find ways to codify some of the weirder questions. for example, it seems T1 question 5 (Watch a noitaminA anime) can be simplified from scrolling through a list in a forum post to checking if the anime is broadcast on Thursdays at 01:55 JST. however, some questions like this are not simplifiable - e.g., the question right before it (Watch an award-winning anime). this question requires the user to search the sidebar (where it says Anime Relations) of https://myanimelist.net/clubs.php?cid=71894 for the anime they desire to check. I'd like to know, do you think there's any chance of adding functionality like that, i.e. parsing of Club metadata, to Jikan? I can probably find a way to manually scrape that page with some trial and error, but it seems like the sort of thing which could exist in an unofficial API! love Jikan so far, you're making this challenge more fun and simple |
May 16, 2018 7:28 AM
#78
| That's a pretty interesting project, @ts0l! I'm glad Jikan has been making it simpler for you I can slate the club parsing endpoints for the REST 2.3 release, which I'll be working on over the next few months. You can follow the issue here. Do you have any other pages for parsing in mind? P.S, Since you're using Python, there's an updated fork of JikanPy (Jikan python wrapper) for REST 2.2 incase you might be interested in using: https://github.com/AWConant/jikanpy/pull/3 |
Nekomata1037May 16, 2018 7:35 AM
May 16, 2018 7:50 AM
#79
| ah excellent! followed it now i'm pretty sure that over the course of the 108 items this season i'll develop a fairly decent litany of stuff that could exist in an API, with some more and some less relevant to the average user. for example, the aforementioned challenge (noitaminA: https://myanimelist.net/forum/?topicid=1519005) can only be simplified because it happens to coincide with information stored in other ways in the API - however, other challenges, such as T1Q22 (watch a Superhero anime) a only codified in forum posts made by MAL staff (see https://myanimelist.net/forum/?topicid=1522220). the nice thing about these forum posts is that their format is fairly consistent - as they're all intended for copy/paste into easily scannable thread replies, they all have some arbitrary explanation and titling before the meat, which is the actual list of anime that conform to the theme. this can be seen in both the aforementioned forum posts. so i guess, having a method to return any lists contained within a forum post would be nice. HOWEVER I realize that that particular request is likely not something that should be included in an API for numerous reasons (lack of need, variability, susceptibility to overscanning posts which contain no lists, etc), and so that sort of thing might be the type of thing i might just end up manually converting into json another idea is for Character pages - being able to request data like species, age, etc would be a nice functionality for questions like T1Q20. sadly, this also has problems, as that data is stored within the Description currently given by Jikan, and is as you know, just html with no style guidelines. characters like Alphonse from FMA have the type of page i'd love to be able to query, but others (especially supporting characters, see https://myanimelist.net/character/32458/Ayato_Naoi ), have none of that information. just some ideas - i'm sure i'll have some more in a few days time if you're looking for them. sorry these are both difficult to justify/implement also thanks for the notice about the new fork! was actually just updating the code myself, good to know i can just pull haha |
May 17, 2018 11:29 AM
#80
| The character detail parsing is interesting. Person pages also sometimes have the person's twitter or social accounts added in the description/about and I did want to parse those separately but It is a bit difficult to implement given how there's no definite way of knowing whether that data would be available for every person/character - which might not be viable for some apps or projects that use that information. I know I could simply add a check for it, but the way it's coded is not the same for all pages since it's simply a part of a description. An unfortunate side-effect for stuff these this can be seen in the character page you've linked. There is some "spoiler data" but it's directly parsed as a part of the "about" in the API (http://api.jikan.moe/character/32458) without any hint that it may be a spoiler. Feel free to post more ideas. I'm looking forward to parsing data that may be consistent as a part of MAL. Such as ones currently implemented, Anime, Manga, Character, Top pages, etc, etc. These all have consistent templates which can easily be parsed off |
May 24, 2018 2:42 PM
#81
| https://www.reddit.com/r/anime/comments/8lsm5i/myanimelist_compromisedvulnerable_probably_best/ MyAnimeList apparently temporarily disabled their API, will this affect Jikan? Also, I keep getting a Rate Limit error with the top endpoint, so maybe that has to do with the API being disabled. |
May 24, 2018 7:30 PM
#82
45b16 said: https://www.reddit.com/r/anime/comments/8lsm5i/myanimelist_compromisedvulnerable_probably_best/ MyAnimeList apparently temporarily disabled their API, will this affect Jikan? Also, I keep getting a Rate Limit error with the top endpoint, so maybe that has to do with the API being disabled. @45b16 No, this will not affect Jikan in any way. Jikan does not make authenticated requests and purely fetches data via scraping. Jikan was literally being dosed by an insane amount of requests earlier and hence the rate limit errors for uncached requests. Some people just don't read the guidelines for the API usage. That has been taken care of, there should be no more service disruptions. |
Sep 2, 2018 9:46 PM
#83
| Jikan REST v3.0 Release - 3rd Sep, 2019 I am super excited to announce Jikan REST v3.0! It was a complete rewrite from ground up with the addition of many new features and bug fixes. The data is much cleaner now - none of those HTML encoded characters in there anymore. New Features - Top Characters & People - Anime & Manga by Genre - Anime by Producers - Manga by Magazines - User Profile, History & Friends Rate Limit revised - There is no longer any daily limits! - Cached data is no longer throttled! The new Rate Limits are: - 30 requests / minute - 2 requests / second Cache Revisions All requests are now cached for 6 hours only. Upgraded Servers Thanks to our hosting sponsor, Jikan now has 2 load balancing servers which is helping out with the majority of the requests and to ensure 100% uptime! New Milestone Jikan has hit a new milestone of over 3 million requests every WEEK. That's pretty insane! And the best part of it is that most of these requests don't even hit MyAnimeList as they're handled by the cache available on the master server and load balancers. "Extended Requests" Depreciation Notice v3 removes "extended requests" entirely as now you'd have to make the main request for the anime data then any anime data it needs. The main and the other data will no longer be bundled. e.g /anime/1/episodes returns the data of anime/1 as well as it's episodes. This is no longer the case. To improve performance, "Extended Requests" will be depreciated on V2 by 1st January, 2019 Main Endpoint Change api.jikan.moe currently points to v2, it will be changed to v3 by 1st January, 2019. To continue using v2, you are encouraged to change your base URL to api.jikan.moe/v2 Discord Community! If you are ever in need of support, have ideas or want to report bugs, drop by our channel! https://discord.gg/dDMxFmz Lastly, a huge shoutout to the contributors, our hosting sponsor and You for making Jikan possible. ------------------------------ Base URL https://api.jikan.moe/v3 - Documentation - Migration Notes (v2 -> v3) REST Status | Bug Report | Discord |
Nekomata1037Sep 2, 2018 9:53 PM
Sep 5, 2018 6:16 PM
#84
| Just wanted to let you know that the links to the genre mappings are broken at https://jikan.docs.apiary.io/#reference/0/genre. Can I assume that the genre IDs are the numbers in the genre links (e.g. https://myanimelist.net/anime/genre/1/Action would mean that the genre ID for action is 1)? Edit: The user endpoint is also not working. I get a 404 Invalid or incomplete endpoint when going to https://api.jikan.moe/v3/user/nekomata1037/profile |
45b16Sep 5, 2018 7:14 PM
Sep 7, 2018 5:26 AM
#85
45b16 said: Just wanted to let you know that the links to the genre mappings are broken at https://jikan.docs.apiary.io/#reference/0/genre. Can I assume that the genre IDs are the numbers in the genre links (e.g. https://myanimelist.net/anime/genre/1/Action would mean that the genre ID for action is 1)? Edit: The user endpoint is also not working. I get a 404 Invalid or incomplete endpoint when going to https://api.jikan.moe/v3/user/nekomata1037/profile Yes, as per discussion on Discord. Documentation is still WIP in some parts, you can use this part of the old docs as reference for MAL Genres. https://jikan.moe/old-docs#advanced-search-constants |
Sep 8, 2018 2:26 AM
#86
| Whoa, I didn't expect for this project to still alive :o I'll probably migrate some non-credential requests to this one since it's pain in the ass to scrap data from HTML .__. |
Sep 8, 2018 2:48 AM
#87
Sep 27, 2018 7:37 PM
#88
| Jikan REST 3.1 RELEASE! - 28th Sep, 2018 Note: The base endpoint will remain /v3. Semver is being used for the internal version of the API. Links - Documentation - Source Changelog What's New |
Dec 30, 2018 5:50 AM
#89
| Jikan REST 3.2 RELEASE! - 29th Dec, 2018 The last update for this year! Note: The base endpoint will remain /v3. Semver is being used for the internal version of the API. Links - Documentation - Source Changelog What's New
Important Changes
Join us on Discord! - Report a bug Update 30 Dec, 18: ETag/Cache Validation is temporarily disabled due to a bug. I'm working on fixing it the earliest. Will inform here and on the discord channel. |
Nekomata1037Dec 30, 2018 5:56 AM
Feb 3, 2019 7:47 AM
#90
| Hello! Thanks for this neat API! I usually like using the seasonal list on MAL to sort by score and preview things rated 7 and up to see what I like. This API helps me make my tables much more easily! It seems like the documentation on jikan.moe needs updating. It says to use $jikan->Seasonal(WINTER, 2017); when it should be $jikan->Seasonal(2017, 'winter'); Will that documentation get updated? Also, is there a way to get the alternative titles? I like having both the English and original titles in my table for reference, since some streaming sites use one or the other. I don't see an alternative titles or English option in Seasonal. And I tried getting a malID from Seasonal, then doing $jikan->Anime($malID)->getTitleEnglish() but it gives me a fatal error. Thanks! |
Feb 5, 2019 5:29 AM
#91
Prizem said: Hello! Thanks for this neat API! I usually like using the seasonal list on MAL to sort by score and preview things rated 7 and up to see what I like. This API helps me make my tables much more easily! It seems like the documentation on jikan.moe needs updating. It says to use $jikan->Seasonal(WINTER, 2017); when it should be $jikan->Seasonal(2017, 'winter'); Will that documentation get updated? Also, is there a way to get the alternative titles? I like having both the English and original titles in my table for reference, since some streaming sites use one or the other. I don't see an alternative titles or English option in Seasonal. And I tried getting a malID from Seasonal, then doing $jikan->Anime($malID)->getTitleEnglish() but it gives me a fatal error. Thanks! Hey! You're welcome, glad you like it! :) It seems you might be using the old documentation for the v1 parser. The current documentation is here: http://docs.jikan.moe Seasonal: https://jikan-me.github.io/jikan-docs/usage/seasonal/ The Jikan PHP API is best used with PHPStorm as it autocompletes any API methods and is self-documented as well. :) Unfortunately, MyAnimeList does not provide any alternative titles for anime on the seasonal page where Jikan parses the seasonal data out of (https://myanimelist.net/anime/season). Therefore, it's not possible to get that sort of information from the seasonal API call. |
Feb 7, 2019 2:03 AM
#92
| Hello, the docs I was referring to is at https://jikan.moe/docs Thanks for pointing out the updated location! Yes, I use PHPStorm and found the auto documentation very helpful. Yes, I know the seasonal page doesn't have alternative titles. That's why I was using seasonal and then trying to get the individual anime from the MAL ID, but that's where I got the error: Fatal error: Uncaught Jikan\Exception\BadResponseException: 429 on https://myanimelist.net/anime/37982/ in C:\xampp\htdocs\MAL\vendor\jikan-me\jikan\src\Goutte\GoutteWrapper.php:40 Stack trace: #0 C:\xampp\htdocs\MAL\vendor\jikan-me\jikan\src\MyAnimeList\MalClient.php(55): Jikan\Goutte\GoutteWrapper->request('GET', 'https://myanime...') #1 C:\xampp\htdocs\MAL\test.php(15): Jikan\MyAnimeList\MalClient->getAnime(Object(Jikan\Request\Anime\AnimeRequest)) #2 {main} thrown in C:\xampp\htdocs\MAL\vendor\jikan-me\jikan\src\Goutte\GoutteWrapper.php on line 40 Basically what I'm doing: <?php
require __DIR__ . '/vendor/autoload.php';
use JikanMyAnimeListMalClient;
use JikanHelperConstants;
$jikan = new MalClient;
$season = $jikan->getSeasonal(
(new JikanRequestSeasonalSeasonalRequest(
2019,
Constants::WINTER
))
);
foreach ($season->anime as $item) {
$anime = $jikan->getAnime(
(new JikanRequestAnimeAnimeRequest($item->getMalId()))
);
$english = $anime->getTitleEnglish();
echo $english . '<br>';
}
|
PrizemFeb 7, 2019 2:27 AM
Feb 7, 2019 11:27 PM
#93
Prizem said: Hello, the docs I was referring to is at https://jikan.moe/docs Thanks for pointing out the updated location! Yes, I use PHPStorm and found the auto documentation very helpful. Yes, I know the seasonal page doesn't have alternative titles. That's why I was using seasonal and then trying to get the individual anime from the MAL ID, but that's where I got the error: Fatal error: Uncaught Jikan\Exception\BadResponseException: 429 on https://myanimelist.net/anime/37982/ in C:\xampp\htdocs\MAL\vendor\jikan-me\jikan\src\Goutte\GoutteWrapper.php:40 Stack trace: #0 C:\xampp\htdocs\MAL\vendor\jikan-me\jikan\src\MyAnimeList\MalClient.php(55): Jikan\Goutte\GoutteWrapper->request('GET', 'https://myanime...') #1 C:\xampp\htdocs\MAL\test.php(15): Jikan\MyAnimeList\MalClient->getAnime(Object(Jikan\Request\Anime\AnimeRequest)) #2 {main} thrown in C:\xampp\htdocs\MAL\vendor\jikan-me\jikan\src\Goutte\GoutteWrapper.php on line 40 Basically what I'm doing: <?php
require __DIR__ . '/vendor/autoload.php';
use JikanMyAnimeListMalClient;
use JikanHelperConstants;
$jikan = new MalClient;
$season = $jikan->getSeasonal(
(new JikanRequestSeasonalSeasonalRequest(
2019,
Constants::WINTER
))
);
foreach ($season->anime as $item) {
$anime = $jikan->getAnime(
(new JikanRequestAnimeAnimeRequest($item->getMalId()))
);
$english = $anime->getTitleEnglish();
echo $english . '<br>';
}
Aha You're getting a Bad Response Exception with the HTTP code for 429. Which means MyAnimeList is rate limiting you for making too many requests. Fatal error: Uncaught Jikan\Exception\BadResponseException: 429 on https://myanimelist.net/anime/37982/ Which kind of makes sense since you're making about the times of requests there's anime airing this season. If this is a long running script, I'd suggest adding a delay/sleep in the loop between each request. 3-5 seconds between each request should keep you from getting rate limited. Also keeping API calls in try/catch would show you a cleaner error response. As Jikan throws an exception if anything goes south. And sorry about the confusion with the old docs! I understand it misled you. I need to add a disclaimer that it's for the previous version. |
Feb 10, 2019 6:36 PM
#94
| Oh thanks for the help! Yes, putting a sleep helps! I was thinking it'd be ok normally as I thought it was querying the cached version on the API and not MAL itself. But guess that's not the case? |
Feb 11, 2019 10:11 AM
#95
Prizem said: Oh thanks for the help! Yes, putting a sleep helps! I was thinking it'd be ok normally as I thought it was querying the cached version on the API and not MAL itself. But guess that's not the case? The PHP API doesn't have a cache built into it, only the REST API does (just 6 hours though). You could either cache on your end or use the PHP wrapper for the REST API. https://github.com/janvernieuwe/jikan-jikanPHP The usage is entirely the same as of the PHP API. Except rather than parsing MAL, it sends requests to the REST API. |
Feb 14, 2019 11:22 PM
#96
| Great work, Works smooth and stable - although sometimes we aren't able to pull data and the post generates blank. Is there any self-hostable solution on this? - or any documentation for the same? PS: I think the discord chat url in the git isn't working ( at least for me ) |
Feb 15, 2019 3:39 PM
#97
AnimeKaizoku said: Great work, Works smooth and stable - although sometimes we aren't able to pull data and the post generates blank. Is there any self-hostable solution on this? - or any documentation for the same? PS: I think the discord chat url in the git isn't working ( at least for me ) Hey, can you tell me more about the issue you're facing with the blank responses? e.g what request you're making, how you're making it, etc And yes, you can host the Jikan REST API yourself. Everything is open-source. :) Refer to https://github.com/jikan-me/jikan-rest You'll need Apache, PHP 7.2+ and Redis. Set up instructions are in the readme file on the repo. The documentation for the REST API is here: https://jikan.docs.apiary.io/# Discord: https://discordapp.com/invite/4tvCr36 |
Feb 15, 2019 6:34 PM
#98
Nekomata1037 said: AnimeKaizoku said: Great work, Works smooth and stable - although sometimes we aren't able to pull data and the post generates blank. Is there any self-hostable solution on this? - or any documentation for the same? PS: I think the discord chat url in the git isn't working ( at least for me ) Hey, can you tell me more about the issue you're facing with the blank responses? e.g what request you're making, how you're making it, etc And yes, you can host the Jikan REST API yourself. Everything is open-source. :) Refer to https://github.com/jikan-me/jikan-rest You'll need Apache, PHP 7.2+ and Redis. Set up instructions are in the readme file on the repo. The documentation for the REST API is here: https://jikan.docs.apiary.io/# Discord: https://discordapp.com/invite/4tvCr36 I'll drop you further details on Discord, I did try the rest api repo but wasnt able to get it to work. Is php 7.2 a strict requirement here? - im on 7.1 atm. Either way, will drop you the rest of the details over discord. |
Feb 16, 2019 4:53 PM
#99
| There seems to be a problem with grabbing user animelist data, such as for my personal list. https://api.jikan.moe/v3/user/whysoocereal/animelist/all returns: {"error":"Failed to parse 'https://myanimelist.net/animelist/whysoocereal/load.json?offset=0&status=7'"} Edit: This is no longer happening. It seems to be fixed as of 2/17/19 5pm EST |
WhySooCerealFeb 17, 2019 2:19 PM
Feb 17, 2019 3:50 AM
#100
Nekomata1037 said: You could either cache on your end or use the PHP wrapper for the REST API. https://github.com/janvernieuwe/jikan-jikanPHP The usage is entirely the same as of the PHP API. Except rather than parsing MAL, it sends requests to the REST API. Works perfectly! Thanks for the help! |
Feb 19, 2019 3:15 AM
#101
WhySooCereal said: There seems to be a problem with grabbing user animelist data, such as for my personal list. https://api.jikan.moe/v3/user/whysoocereal/animelist/all returns: {"error":"Failed to parse 'https://myanimelist.net/animelist/whysoocereal/load.json?offset=0&status=7'"} Edit: This is no longer happening. It seems to be fixed as of 2/17/19 5pm EST Hmm That's really weird. I'll scavenge the logs and see if I can find any errors for the duration it was failing to parse. Prizem said: Works perfectly! Thanks for the help! Anytime! |
Feb 21, 2019 7:18 PM
#102
| Could i use this to automate creating forum threads for my club? |
Feb 21, 2019 8:34 PM
#103
seal308 said: Could i use this to automate creating forum threads for my club? Hey, good question. Unfortunately, you can not. The API is READ only. i.e, you can fetch information/data only and not perform any authenticated requests. But feel free to use the API itself, if you've already a way to create threads and just want to fetch the data from Jikan. |
Mar 20, 2019 9:13 AM
#104
| I found a bug. I'll fill out a proper bug report on github later when I get home. Compare the following URLs: https://api.jikan.moe/v3/anime/34340/stats/ https://myanimelist.net/anime/34340/Hikoichi_Tonchi_Banashi/stats In summary, the vote values under Score Stats in the MAL link don't match the scores array in the json returned by Jikan. If I had to guess, it looks like Jikan isn't correctly handling the case where some of the scores have zero votes. I tried a couple of manga entries with zero votes for some of the scores and the same thing happened. Edit: Bug report has been submitted. Edit #2: The problem has been fixed. |
mwalimuApr 14, 2019 8:13 AM
| A møøse once bit my sister... |
Apr 16, 2019 3:43 AM
#105
| hi, thanks for the great api I was wondering how to sort user anime or manga list by score or last updated? https://api.jikan.moe/v3/user/nameer94/animelist/completed |
Apr 21, 2019 12:54 PM
#106
nameer94 said: hi, thanks for the great api I was wondering how to sort user anime or manga list by score or last updated? https://api.jikan.moe/v3/user/nameer94/animelist/completed Hi, sorry for the late response. That's not currently possible with the Jikan API however you can directly use MAL's JSON API for lists to do this. You can play around with the `order` and `order2` GET params to get these purplepinapples said: Some examples: https://myanimelist.net/animelist/purplepinapples?status=1&order=12&order2=0 by episode progress By air start date https://myanimelist.net/animelist/purplepinapples?status=1&order=14&order2=0 https://myanimelist.net/animelist/purplepinapples?order=5&status=1 last updated by user. This is different from user history as it doesnt require an episode change to be considered Theres lots more, they can be found by clicking the filter button on the top right of modern lists I'm not too active on the forums these days, consider joining our discord: https://discord.gg/4tvCr36 If not me, someone else would be able to respond :) |
May 17, 2019 10:02 AM
#107
| Jikan REST API v3.3 Release! - May 17th, 2019 Note: The base endpoint will remain /v3. Semver is being used for the internal version of the API. Links - Documentation - Source Changelog Click here to read about the new features & changes (reddit.com/r/jikan) Join us on Discord! - Report a bug |
Jun 24, 2019 1:13 AM
#108
| If by any change the genres mapping is still un accessible, here is a list of genres (in JSON) https://github.com/fernandochristyanto/myanimelist-masterdata-json Hope it helps |
Jun 29, 2019 4:52 AM
#109
Ferniant said: If by any change the genres mapping is still un accessible, here is a list of genres (in JSON) https://github.com/fernandochristyanto/myanimelist-masterdata-json Hope it helps Hey, I'm curious as to what you mean regarding the genre mapping being unavailable? |
Jul 12, 2019 6:39 AM
#110
| Hey, Nekomata. Thanks for this great API! Is there any possibility to make genres included in response when getting some user's anime list? I mean, the response already includes much useful info, but genres are lacking and I need to make more requests to API to get it. Or is there any better way to get genres? Genre API is fine, but you still need to make requests and store genres in database to keep data actual. I need it for my MAL stats app. |
More topics from this board
» [BUG] seasonal anime sort parameterSkylake_ - Jul 15, 2022 |
1 |
by gnidmoo
»»
Jan 4, 12:02 PM |
|
» SslHandshakeTimeoutException: handshake timed out after 20000msdemon10101 - Jan 3 |
0 |
by demon10101
»»
Jan 3, 3:36 AM |
|
» I built a spotify-styled 'MyAnimeList Wrapped' for a yearly review of your anime and mangaXAvishkar - Dec 14, 2025 |
1 |
by Joeliazeers
»»
Dec 17, 2025 1:01 PM |
|
» [Repost] list of all relation_type and media_type.Mr_UnknownOtaku - Dec 8, 2025 |
4 |
by -DxP-
»»
Dec 12, 2025 8:43 AM |
|
» How to get author name?EdibleMuffin - Feb 12, 2025 |
4 |
by XAvishkar
»»
Dec 8, 2025 9:52 AM |