Closed Katsute closed 1 year ago
mal anime/13759?fields=related_anime
{
"id": 13759,
"title": "Sakura-sou no Pet na Kanojo",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/4/43643.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/4/43643l.jpg"
},
"related_anime": []
}
mal anime/11757?fields=related_anime,recommendations,alternative_titles
{
"id": 11757,
"title": "Sword Art Online",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/11/39717.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/11/39717l.jpg"
},
"related_anime": [
{
"node": {
"id": 16099,
"title": "Sword Art Online: Sword Art Offline",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/8/43461.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/8/43461l.jpg"
}
},
"relation_type": "other",
"relation_type_formatted": "Other"
},
{
"node": {
"id": 20021,
"title": "Sword Art Online: Extra Edition",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/1927/121997.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/1927/121997l.jpg"
}
},
"relation_type": "sequel",
"relation_type_formatted": "Sequel"
},
{
"node": {
"id": 21881,
"title": "Sword Art Online II",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/1223/121999.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/1223/121999l.jpg"
}
},
"relation_type": "sequel",
"relation_type_formatted": "Sequel"
},
{
"node": {
"id": 42916,
"title": "Sword Art Online: Progressive Movie - Hoshi Naki Yoru no Aria",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/1590/116274.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/1590/116274l.jpg"
}
},
"relation_type": "alternative_version",
"relation_type_formatted": "Alternative version"
},
{
"node": {
"id": 53529,
"title": "Sword Art Online (Original Movie)",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/1537/130580.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/1537/130580l.jpg"
}
},
"relation_type": "other",
"relation_type_formatted": "Other"
},
{
"node": {
"id": 53588,
"title": "Sword Art Online: Full Dive - Opening Eizou",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/1889/130946.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/1889/130946l.jpg"
}
},
"relation_type": "other",
"relation_type_formatted": "Other"
}
],
"recommendations": [
{
"node": {
"id": 17265,
"title": "Log Horizon",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/5/84004.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/5/84004l.jpg"
}
},
"num_recommendations": 175
},
{
"node": {
"id": 11759,
"title": "Accel World",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/1002/135430.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/1002/135430l.jpg"
}
},
"num_recommendations": 121
},
{
"node": {
"id": 14345,
"title": "Btooom!",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/4/40977.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/4/40977l.jpg"
}
},
"num_recommendations": 86
},
{
"node": {
"id": 28121,
"title": "Dungeon ni Deai wo Motomeru no wa Machigatteiru Darou ka",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/2/70187.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/2/70187l.jpg"
}
},
"num_recommendations": 73
},
{
"node": {
"id": 19815,
"title": "No Game No Life",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/1074/111944.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/1074/111944l.jpg"
}
},
"num_recommendations": 53
},
{
"node": {
"id": 29803,
"title": "Overlord",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/7/88019.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/7/88019l.jpg"
}
},
"num_recommendations": 33
},
{
"node": {
"id": 48,
"title": ".hack//Sign",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/1443/94665.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/1443/94665l.jpg"
}
},
"num_recommendations": 28
},
{
"node": {
"id": 31859,
"title": "Hai to Gensou no Grimgar",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/13/77976.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/13/77976l.jpg"
}
},
"num_recommendations": 21
},
{
"node": {
"id": 33926,
"title": "Quanzhi Gaoshou",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/7/81892.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/7/81892l.jpg"
}
},
"num_recommendations": 16
},
{
"node": {
"id": 35790,
"title": "Tate no Yuusha no Nariagari",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/1490/101365.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/1490/101365l.jpg"
}
},
"num_recommendations": 15
}
],
"alternative_titles": {
"synonyms": [
"S.A.O",
"SAO"
],
"en": "Sword Art Online",
"ja": "ソードアート・オンライン"
}
}
mal anime/11757?fields=related_anime{alternative_titles},recommendations{alternative_titles}
{
"id": 11757,
"title": "Sword Art Online",
"main_picture": {
"medium": "https://api-cdn.myanimelist.net/images/anime/11/39717.jpg",
"large": "https://api-cdn.myanimelist.net/images/anime/11/39717l.jpg"
}
}
mal anime/13759/characters?fields=first_name,last_name,animeography,animeography{alternative_titles}
{
"data": [
{
"node": {
"id": 61371,
"first_name": "Mashiro",
"last_name": "Shiina"
},
"role": "Main"
},
{
"node": {
"id": 64165,
"first_name": "Misaki",
"last_name": "Kamiigusa"
},
"role": "Main"
},
{
"node": {
"id": 64167,
"first_name": "Nanami",
"last_name": "Aoyama"
},
"role": "Main"
},
{
"node": {
"id": 64169,
"first_name": "Sorata",
"last_name": "Kanda"
},
"role": "Main"
},
{
"node": {
"id": 64171,
"first_name": "Jin",
"last_name": "Mitaka"
},
"role": "Main"
},
{
"node": {
"id": 64173,
"first_name": "Ryuunosuke",
"last_name": "Akasaka"
},
"role": "Main"
},
{
"node": {
"id": 64175,
"first_name": "Chihiro",
"last_name": "Sengoku"
},
"role": "Supporting"
},
{
"node": {
"id": 72753,
"first_name": "Ayano",
"last_name": "Iida"
},
"role": "Supporting"
},
{
"node": {
"id": 72755,
"first_name": "Daichi",
"last_name": "Miyahara"
},
"role": "Supporting"
},
{
"node": {
"id": 72757,
"first_name": "Mayu",
"last_name": "Takasaki"
},
"role": "Supporting"
}
],
"paging": {
"next": "https://api.myanimelist.net/v2/anime/13759/characters?offset=10&fields=first_name%2Clast_name%2Canimeography%2Canimeographyalternative_titles"
}
}
mal anime/13759/characters?fields=first_name,last_name,animeography&limit=1000
{
"message": "limit",
"error": "bad_request"
}
mal anime/13759/characters?fields=first_name,last_name,animeography&limit=100
{
"data": [
{
"node": {
"id": 61371,
"first_name": "Mashiro",
"last_name": "Shiina"
},
"role": "Main"
},
{
"node": {
"id": 64165,
"first_name": "Misaki",
"last_name": "Kamiigusa"
},
"role": "Main"
},
{
"node": {
"id": 64167,
"first_name": "Nanami",
"last_name": "Aoyama"
},
"role": "Main"
},
{
"node": {
"id": 64169,
"first_name": "Sorata",
"last_name": "Kanda"
},
"role": "Main"
},
{
"node": {
"id": 64171,
"first_name": "Jin",
"last_name": "Mitaka"
},
"role": "Main"
},
{
"node": {
"id": 64173,
"first_name": "Ryuunosuke",
"last_name": "Akasaka"
},
"role": "Main"
},
{
"node": {
"id": 64175,
"first_name": "Chihiro",
"last_name": "Sengoku"
},
"role": "Supporting"
},
{
"node": {
"id": 72753,
"first_name": "Ayano",
"last_name": "Iida"
},
"role": "Supporting"
},
{
"node": {
"id": 72755,
"first_name": "Daichi",
"last_name": "Miyahara"
},
"role": "Supporting"
},
{
"node": {
"id": 72757,
"first_name": "Mayu",
"last_name": "Takasaki"
},
"role": "Supporting"
},
{
"node": {
"id": 72759,
"first_name": "Noriko",
"last_name": ""
},
"role": "Supporting"
},
{
"node": {
"id": 72761,
"first_name": "Yuuko",
"last_name": "Kanda"
},
"role": "Supporting"
},
{
"node": {
"id": 73507,
"first_name": "Rita",
"last_name": "Ainsworth"
},
"role": "Supporting"
},
{
"node": {
"id": 73947,
"first_name": "Koharu",
"last_name": "Shiroyama"
},
"role": "Supporting"
},
{
"node": {
"id": 73949,
"first_name": "Momoko",
"last_name": "Souichirou"
},
"role": "Supporting"
},
{
"node": {
"id": 74291,
"first_name": "Akiko",
"last_name": "Kanda"
},
"role": "Supporting"
},
{
"node": {
"id": 74293,
"first_name": "Father",
"last_name": "Kanda"
},
"role": "Supporting"
},
{
"node": {
"id": 74295,
"first_name": "Shiori",
"last_name": "Nanba"
},
"role": "Supporting"
},
{
"node": {
"id": 74695,
"first_name": "Kazuki",
"last_name": "Fujisawa"
},
"role": "Supporting"
},
{
"node": {
"id": 75146,
"first_name": "Yayoi",
"last_name": "Honjou"
},
"role": "Supporting"
},
{
"node": {
"id": 75148,
"first_name": "Shiho",
"last_name": "Fukaya"
},
"role": "Supporting"
},
{
"node": {
"id": 75350,
"first_name": "Saori",
"last_name": "Himemiya"
},
"role": "Supporting"
},
{
"node": {
"id": 75352,
"first_name": "Souichirou",
"last_name": "Tatebayashi"
},
"role": "Supporting"
},
{
"node": {
"id": 75680,
"first_name": "Fuuka",
"last_name": "Kamiigusa"
},
"role": "Supporting"
},
{
"node": {
"id": 76038,
"first_name": "Otoha",
"last_name": "Nakano"
},
"role": "Supporting"
},
{
"node": {
"id": 81267,
"first_name": "Iori",
"last_name": "Himemiya"
},
"role": "Supporting"
},
{
"node": {
"id": 81325,
"first_name": "Kanna",
"last_name": "Hase"
},
"role": "Supporting"
},
{
"node": {
"id": 84923,
"first_name": "Maid-chan",
"last_name": ""
},
"role": "Supporting"
},
{
"node": {
"id": 149192,
"first_name": "Principal",
"last_name": ""
},
"role": "Supporting"
},
{
"node": {
"id": 149193,
"first_name": "Gym teacher",
"last_name": ""
},
"role": "Supporting"
}
],
"paging": {}
}
Operating System
*
Java Runtime
Java
Java Version
*
Release Version
3.0.3
Issue
Endpoints that use
return the bare minimum information, using fields do not expand missing
Contains only id, title, picture
Add
AnimeLimitedPreview
andMangaLimitedPreview
with only above mentioned fields, populate on all other methodsSkip excessive null checks, instead set all fields to non final, replace isPreview boolean with internal
STATE
instead:[NODE, PREVIEW, FULL]
if
NODE
orPREVIEW
populate and convert toFULL
if method requested, ifFULL
return field valueRepopulate ALL values, ignore existing ones
How to replicate
Occurs on: