Media is a JSON Structure definition published by AniList, describing 55 properties, of which 3 are required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.
{
"$schema": "https://json-structure.org/meta/core/v0/#",
"$id": "https://raw.githubusercontent.com/api-evangelist/anilist/refs/heads/main/json-structure/anilist-media-structure.json",
"name": "Media",
"description": "Anime or Manga",
"type": "object",
"properties": {
"id": {
"type": "int32",
"description": "The id of the media"
},
"idMal": {
"type": "int32",
"description": "The mal id of the media"
},
"title": {
"description": "The official titles of the media in various languages",
"$ref": "./anilist-mediatitle-structure.json"
},
"type": {
"type": "string",
"description": "The type of the media; anime or manga",
"enum": [
"ANIME",
"MANGA"
]
},
"format": {
"type": "string",
"description": "The format the media was released in",
"enum": [
"TV",
"TV_SHORT",
"MOVIE",
"SPECIAL",
"OVA",
"ONA",
"MUSIC",
"MANGA",
"NOVEL",
"ONE_SHOT"
]
},
"status": {
"type": "string",
"description": "The current releasing status of the media",
"enum": [
"FINISHED",
"RELEASING",
"NOT_YET_RELEASED",
"CANCELLED",
"HIATUS"
]
},
"description": {
"type": "string",
"description": "Short description of the media's story and characters"
},
"startDate": {
"description": "The first official release date of the media",
"$ref": "./anilist-fuzzydate-structure.json"
},
"endDate": {
"description": "The last official release date of the media",
"$ref": "./anilist-fuzzydate-structure.json"
},
"season": {
"type": "string",
"description": "The season the media was initially released in",
"enum": [
"WINTER",
"SPRING",
"SUMMER",
"FALL"
]
},
"seasonYear": {
"type": "int32",
"description": "The season year the media was initially released in"
},
"seasonInt": {
"type": "int32",
"description": "The year & season the media was initially released in"
},
"episodes": {
"type": "int32",
"description": "The amount of episodes the anime has when complete"
},
"duration": {
"type": "int32",
"description": "The general length of each anime episode in minutes"
},
"chapters": {
"type": "int32",
"description": "The amount of chapters the manga has when complete"
},
"volumes": {
"type": "int32",
"description": "The amount of volumes the manga has when complete"
},
"countryOfOrigin": {
"type": "string",
"description": "Where the media was created. (ISO 3166-1 alpha-2)"
},
"isLicensed": {
"type": "boolean",
"description": "If the media is officially licensed or a self-published doujin release"
},
"source": {
"type": "string",
"description": "Source type the media was adapted from.",
"enum": [
"ORIGINAL",
"MANGA",
"LIGHT_NOVEL",
"VISUAL_NOVEL",
"VIDEO_GAME",
"OTHER",
"NOVEL",
"DOUJINSHI",
"ANIME",
"WEB_NOVEL",
"LIVE_ACTION",
"GAME",
"COMIC",
"MULTIMEDIA_PROJECT",
"PICTURE_BOOK"
]
},
"hashtag": {
"type": "string",
"description": "Official Twitter hashtags for the media"
},
"trailer": {
"description": "Media trailer or advertisement",
"$ref": "./anilist-mediatrailer-structure.json"
},
"updatedAt": {
"type": "int32",
"description": "When the media's data was last updated"
},
"coverImage": {
"description": "The cover images of the media",
"$ref": "./anilist-mediacoverimage-structure.json"
},
"bannerImage": {
"type": "string",
"description": "The banner image of the media"
},
"genres": {
"type": "array",
"description": "The genres of the media",
"items": {
"type": "string"
}
},
"synonyms": {
"type": "array",
"description": "Alternative titles of the media",
"items": {
"type": "string"
}
},
"averageScore": {
"type": "int32",
"description": "A weighted average score of all the user's scores of the media"
},
"meanScore": {
"type": "int32",
"description": "Mean score of all the user's scores of the media"
},
"popularity": {
"type": "int32",
"description": "The number of users with the media on their list"
},
"isLocked": {
"type": "boolean",
"description": "Locked media may not be added to lists our favorited. This may be due to the entry pending for deletion or other reasons."
},
"trending": {
"type": "int32",
"description": "The amount of related activity in the past hour"
},
"favourites": {
"type": "int32",
"description": "The amount of user's who have favourited the media"
},
"tags": {
"type": "array",
"description": "List of tags that describes elements and themes of the media",
"items": {
"$ref": "./anilist-mediatag-structure.json"
}
},
"relations": {
"description": "Other media in the same or connecting franchise",
"$ref": "./anilist-mediaconnection-structure.json"
},
"characters": {
"description": "The characters in the media",
"$ref": "./anilist-characterconnection-structure.json"
},
"staff": {
"description": "The staff who produced the media",
"$ref": "./anilist-staffconnection-structure.json"
},
"studios": {
"description": "The companies who produced the media",
"$ref": "./anilist-studioconnection-structure.json"
},
"isFavourite": {
"type": "boolean",
"description": "If the media is marked as favourite by the current authenticated user"
},
"isFavouriteBlocked": {
"type": "boolean",
"description": "If the media is blocked from being added to favourites"
},
"isAdult": {
"type": "boolean",
"description": "If the media is intended only for 18+ adult audiences"
},
"nextAiringEpisode": {
"description": "The media's next episode airing schedule",
"$ref": "./anilist-airingschedule-structure.json"
},
"airingSchedule": {
"description": "The media's entire airing schedule",
"$ref": "./anilist-airingscheduleconnection-structure.json"
},
"trends": {
"description": "The media's daily trend stats",
"$ref": "./anilist-mediatrendconnection-structure.json"
},
"externalLinks": {
"type": "array",
"description": "External links to another site related to the media",
"items": {
"$ref": "./anilist-mediaexternallink-structure.json"
}
},
"streamingEpisodes": {
"type": "array",
"description": "Data and links to legal streaming episodes on external sites",
"items": {
"$ref": "./anilist-mediastreamingepisode-structure.json"
}
},
"rankings": {
"type": "array",
"description": "The ranking of the media in a particular time span and format compared to other media",
"items": {
"$ref": "./anilist-mediarank-structure.json"
}
},
"mediaListEntry": {
"description": "The authenticated user's media list entry for the media",
"$ref": "./anilist-medialist-structure.json"
},
"reviews": {
"description": "User reviews of the media",
"$ref": "./anilist-reviewconnection-structure.json"
},
"recommendations": {
"description": "User recommendations for similar media",
"$ref": "./anilist-recommendationconnection-structure.json"
},
"stats": {
"$ref": "./anilist-mediastats-structure.json"
},
"siteUrl": {
"type": "string",
"description": "The url for the media page on the AniList website"
},
"autoCreateForumThread": {
"type": "boolean",
"description": "If the media should have forum thread automatically created for it on airing episode release"
},
"isRecommendationBlocked": {
"type": "boolean",
"description": "If the media is blocked from being recommended to/from"
},
"isReviewBlocked": {
"type": "boolean",
"description": "If the media is blocked from being reviewed"
},
"modNotes": {
"type": "string",
"description": "Notes for site moderators"
}
},
"required": [
"id",
"isFavourite",
"isFavouriteBlocked"
]
}
Every JSON Structure here is available over the APIs.io API and to AI agents over MCP.