From 92e283bdbeb83cc03f5628eb16951468cf8ae2ef Mon Sep 17 00:00:00 2001 From: "Timothy J. Warren" Date: Wed, 8 Jun 2022 20:21:50 -0400 Subject: [PATCH] Update GraphQL schemas --- src/AnimeClient/API/Anilist/schema.graphql | 8178 ++++++++++---------- src/AnimeClient/API/Kitsu/schema.graphql | 5485 ++++++------- 2 files changed, 6927 insertions(+), 6736 deletions(-) diff --git a/src/AnimeClient/API/Anilist/schema.graphql b/src/AnimeClient/API/Anilist/schema.graphql index 40adeb9c..8a0b9819 100644 --- a/src/AnimeClient/API/Anilist/schema.graphql +++ b/src/AnimeClient/API/Anilist/schema.graphql @@ -1,8 +1,8 @@ # This file was generated based on ".graphqlconfig". Do not edit manually. schema { - query: Query - mutation: Mutation + query: Query + mutation: Mutation } "Activity union type" @@ -16,4597 +16,4668 @@ union NotificationUnion = ActivityLikeNotification | ActivityMentionNotification "Notification for when a activity is liked" type ActivityLikeNotification { - "The liked activity" - activity: ActivityUnion - "The id of the activity which was liked" - activityId: Int! - "The notification context text" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The type of notification" - type: NotificationType - "The user who liked the activity" - user: User - "The id of the user who liked to the activity" - userId: Int! + "The liked activity" + activity: ActivityUnion + "The id of the activity which was liked" + activityId: Int! + "The notification context text" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The type of notification" + type: NotificationType + "The user who liked the activity" + user: User + "The id of the user who liked to the activity" + userId: Int! } "Notification for when authenticated user is @ mentioned in activity or reply" type ActivityMentionNotification { - "The liked activity" - activity: ActivityUnion - "The id of the activity where mentioned" - activityId: Int! - "The notification context text" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The type of notification" - type: NotificationType - "The user who mentioned the authenticated user" - user: User - "The id of the user who mentioned the authenticated user" - userId: Int! + "The liked activity" + activity: ActivityUnion + "The id of the activity where mentioned" + activityId: Int! + "The notification context text" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The type of notification" + type: NotificationType + "The user who mentioned the authenticated user" + user: User + "The id of the user who mentioned the authenticated user" + userId: Int! } "Notification for when a user is send an activity message" type ActivityMessageNotification { - "The id of the activity message" - activityId: Int! - "The notification context text" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The message activity" - message: MessageActivity - "The type of notification" - type: NotificationType - "The user who sent the message" - user: User - "The if of the user who send the message" - userId: Int! + "The id of the activity message" + activityId: Int! + "The notification context text" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The message activity" + message: MessageActivity + "The type of notification" + type: NotificationType + "The user who sent the message" + user: User + "The if of the user who send the message" + userId: Int! } "Replay to an activity item" type ActivityReply { - "The id of the parent activity" - activityId: Int - "The time the reply was created at" - createdAt: Int! - "The id of the reply" - id: Int! - "If the currently authenticated user liked the reply" - isLiked: Boolean - "The amount of likes the reply has" - likeCount: Int! - "The users who liked the reply" - likes: [User] - "The reply text" - text( - "Return the string in pre-parsed html instead of markdown" - asHtml: Boolean - ): String - "The user who created reply" - user: User - "The id of the replies creator" - userId: Int + "The id of the parent activity" + activityId: Int + "The time the reply was created at" + createdAt: Int! + "The id of the reply" + id: Int! + "If the currently authenticated user liked the reply" + isLiked: Boolean + "The amount of likes the reply has" + likeCount: Int! + "The users who liked the reply" + likes: [User] + "The reply text" + text( + "Return the string in pre-parsed html instead of markdown" + asHtml: Boolean + ): String + "The user who created reply" + user: User + "The id of the replies creator" + userId: Int } "Notification for when a activity reply is liked" type ActivityReplyLikeNotification { - "The liked activity" - activity: ActivityUnion - "The id of the activity where the reply which was liked" - activityId: Int! - "The notification context text" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The type of notification" - type: NotificationType - "The user who liked the activity reply" - user: User - "The id of the user who liked to the activity reply" - userId: Int! + "The liked activity" + activity: ActivityUnion + "The id of the activity where the reply which was liked" + activityId: Int! + "The notification context text" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The type of notification" + type: NotificationType + "The user who liked the activity reply" + user: User + "The id of the user who liked to the activity reply" + userId: Int! } "Notification for when a user replies to the authenticated users activity" type ActivityReplyNotification { - "The liked activity" - activity: ActivityUnion - "The id of the activity which was replied too" - activityId: Int! - "The notification context text" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The type of notification" - type: NotificationType - "The user who replied to the activity" - user: User - "The id of the user who replied to the activity" - userId: Int! + "The liked activity" + activity: ActivityUnion + "The id of the activity which was replied too" + activityId: Int! + "The notification context text" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The type of notification" + type: NotificationType + "The user who replied to the activity" + user: User + "The id of the user who replied to the activity" + userId: Int! } "Notification for when a user replies to activity the authenticated user has replied to" type ActivityReplySubscribedNotification { - "The liked activity" - activity: ActivityUnion - "The id of the activity which was replied too" - activityId: Int! - "The notification context text" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The type of notification" - type: NotificationType - "The user who replied to the activity" - user: User - "The id of the user who replied to the activity" - userId: Int! + "The liked activity" + activity: ActivityUnion + "The id of the activity which was replied too" + activityId: Int! + "The notification context text" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The type of notification" + type: NotificationType + "The user who replied to the activity" + user: User + "The id of the user who replied to the activity" + userId: Int! } "Notification for when an episode of anime airs" type AiringNotification { - "The id of the aired anime" - animeId: Int! - "The notification context text" - contexts: [String] - "The time the notification was created at" - createdAt: Int - "The episode number that just aired" - episode: Int! - "The id of the Notification" - id: Int! - "The associated media of the airing schedule" - media: Media - "The type of notification" - type: NotificationType + "The id of the aired anime" + animeId: Int! + "The notification context text" + contexts: [String] + "The time the notification was created at" + createdAt: Int + "The episode number that just aired" + episode: Int! + "The id of the Notification" + id: Int! + "The associated media of the airing schedule" + media: Media + "The type of notification" + type: NotificationType } "Score & Watcher stats for airing anime by episode and mid-week" type AiringProgression { - "The episode the stats were recorded at. .5 is the mid point between 2 episodes airing dates." - episode: Float - "The average score for the media" - score: Float - "The amount of users watching the anime" - watching: Int + "The episode the stats were recorded at. .5 is the mid point between 2 episodes airing dates." + episode: Float + "The average score for the media" + score: Float + "The amount of users watching the anime" + watching: Int } "Media Airing Schedule. NOTE: We only aim to guarantee that FUTURE airing data is present and accurate." type AiringSchedule { - "The time the episode airs at" - airingAt: Int! - "The airing episode number" - episode: Int! - "The id of the airing schedule item" - id: Int! - "The associate media of the airing episode" - media: Media - "The associate media id of the airing episode" - mediaId: Int! - "Seconds until episode starts airing" - timeUntilAiring: Int! + "The time the episode airs at" + airingAt: Int! + "The airing episode number" + episode: Int! + "The id of the airing schedule item" + id: Int! + "The associate media of the airing episode" + media: Media + "The associate media id of the airing episode" + mediaId: Int! + "Seconds until episode starts airing" + timeUntilAiring: Int! } type AiringScheduleConnection { - edges: [AiringScheduleEdge] - nodes: [AiringSchedule] - "The pagination information" - pageInfo: PageInfo + edges: [AiringScheduleEdge] + nodes: [AiringSchedule] + "The pagination information" + pageInfo: PageInfo } "AiringSchedule connection edge" type AiringScheduleEdge { - "The id of the connection" - id: Int - node: AiringSchedule + "The id of the connection" + id: Int + node: AiringSchedule } type AniChartUser { - highlights: Json - settings: Json - user: User + highlights: Json + settings: Json + user: User } "A character that features in an anime or manga" type Character { - "The character's age. Note this is a string, not an int, it may contain further text and additional ages." - age: String - "The characters blood type" - bloodType: String - "The character's birth date" - dateOfBirth: FuzzyDate - "A general description of the character" - description( - "Return the string in pre-parsed html instead of markdown" - asHtml: Boolean - ): String - "The amount of user's who have favourited the character" - favourites: Int - "The character's gender. Usually Male, Female, or Non-binary but can be any string." - gender: String - "The id of the character" - id: Int! - "Character images" - image: CharacterImage - "If the character is marked as favourite by the currently authenticated user" - isFavourite: Boolean! - "If the character is blocked from being added to favourites" - isFavouriteBlocked: Boolean! - "Media that includes the character" - media( - onList: Boolean, - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [MediaSort], - type: MediaType - ): MediaConnection - "Notes for site moderators" - modNotes: String - "The names of the character" - name: CharacterName - "The url for the character page on the AniList website" - siteUrl: String - updatedAt: Int @deprecated(reason: "No data available") + "The character's age. Note this is a string, not an int, it may contain further text and additional ages." + age: String + "The characters blood type" + bloodType: String + "The character's birth date" + dateOfBirth: FuzzyDate + "A general description of the character" + description( + "Return the string in pre-parsed html instead of markdown" + asHtml: Boolean + ): String + "The amount of user's who have favourited the character" + favourites: Int + "The character's gender. Usually Male, Female, or Non-binary but can be any string." + gender: String + "The id of the character" + id: Int! + "Character images" + image: CharacterImage + "If the character is marked as favourite by the currently authenticated user" + isFavourite: Boolean! + "If the character is blocked from being added to favourites" + isFavouriteBlocked: Boolean! + "Media that includes the character" + media( + onList: Boolean, + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [MediaSort], + type: MediaType + ): MediaConnection + "Notes for site moderators" + modNotes: String + "The names of the character" + name: CharacterName + "The url for the character page on the AniList website" + siteUrl: String + updatedAt: Int @deprecated(reason: "No data available") } type CharacterConnection { - edges: [CharacterEdge] - nodes: [Character] - "The pagination information" - pageInfo: PageInfo + edges: [CharacterEdge] + nodes: [Character] + "The pagination information" + pageInfo: PageInfo } "Character connection edge" type CharacterEdge { - "The order the character should be displayed from the users favourites" - favouriteOrder: Int - "The id of the connection" - id: Int - "The media the character is in" - media: [Media] - "Media specific character name" - name: String - node: Character - "The characters role in the media" - role: CharacterRole - "The voice actors of the character with role date" - voiceActorRoles(language: StaffLanguage, sort: [StaffSort]): [StaffRoleType] - "The voice actors of the character" - voiceActors(language: StaffLanguage, sort: [StaffSort]): [Staff] + "The order the character should be displayed from the users favourites" + favouriteOrder: Int + "The id of the connection" + id: Int + "The media the character is in" + media: [Media] + "Media specific character name" + name: String + node: Character + "The characters role in the media" + role: CharacterRole + "The voice actors of the character with role date" + voiceActorRoles(language: StaffLanguage, sort: [StaffSort]): [StaffRoleType] + "The voice actors of the character" + voiceActors(language: StaffLanguage, sort: [StaffSort]): [Staff] } type CharacterImage { - "The character's image of media at its largest size" - large: String - "The character's image of media at medium size" - medium: String + "The character's image of media at its largest size" + large: String + "The character's image of media at medium size" + medium: String } "The names of the character" type CharacterName { - "Other names the character might be referred to as" - alternative: [String] - "Other names the character might be referred to as but are spoilers" - alternativeSpoiler: [String] - "The character's given name" - first: String - "The character's first and last name" - full: String - "The character's surname" - last: String - "The character's middle name" - middle: String - "The character's full name in their native language" - native: String - "The currently authenticated users preferred name language. Default romaji for non-authenticated" - userPreferred: String + "Other names the character might be referred to as" + alternative: [String] + "Other names the character might be referred to as but are spoilers" + alternativeSpoiler: [String] + "The character's given name" + first: String + "The character's first and last name" + full: String + "The character's surname" + last: String + "The character's middle name" + middle: String + "The character's full name in their native language" + native: String + "The currently authenticated users preferred name language. Default romaji for non-authenticated" + userPreferred: String } "A submission for a character that features in an anime or manga" type CharacterSubmission { - "Data Mod assigned to handle the submission" - assignee: User - "Character that the submission is referencing" - character: Character - createdAt: Int - "The id of the submission" - id: Int! - "Whether the submission is locked" - locked: Boolean - "Inner details of submission status" - notes: String - source: String - "Status of the submission" - status: SubmissionStatus - "The character submission changes" - submission: Character - "Submitter for the submission" - submitter: User + "Data Mod assigned to handle the submission" + assignee: User + "Character that the submission is referencing" + character: Character + createdAt: Int + "The id of the submission" + id: Int! + "Whether the submission is locked" + locked: Boolean + "Inner details of submission status" + notes: String + source: String + "Status of the submission" + status: SubmissionStatus + "The character submission changes" + submission: Character + "Submitter for the submission" + submitter: User } type CharacterSubmissionConnection { - edges: [CharacterSubmissionEdge] - nodes: [CharacterSubmission] - "The pagination information" - pageInfo: PageInfo + edges: [CharacterSubmissionEdge] + nodes: [CharacterSubmission] + "The pagination information" + pageInfo: PageInfo } "CharacterSubmission connection edge" type CharacterSubmissionEdge { - node: CharacterSubmission - "The characters role in the media" - role: CharacterRole - "The submitted voice actors of the character" - submittedVoiceActors: [StaffSubmission] - "The voice actors of the character" - voiceActors: [Staff] + node: CharacterSubmission + "The characters role in the media" + role: CharacterRole + "The submitted voice actors of the character" + submittedVoiceActors: [StaffSubmission] + "The voice actors of the character" + voiceActors: [Staff] } "Deleted data type" type Deleted { - "If an item has been successfully deleted" - deleted: Boolean + "If an item has been successfully deleted" + deleted: Boolean } "User's favourite anime, manga, characters, staff & studios" type Favourites { - "Favourite anime" - anime( - "The page number" - page: Int, - "The amount of entries per page, max 25" - perPage: Int - ): MediaConnection - "Favourite characters" - characters( - "The page number" - page: Int, - "The amount of entries per page, max 25" - perPage: Int - ): CharacterConnection - "Favourite manga" - manga( - "The page number" - page: Int, - "The amount of entries per page, max 25" - perPage: Int - ): MediaConnection - "Favourite staff" - staff( - "The page number" - page: Int, - "The amount of entries per page, max 25" - perPage: Int - ): StaffConnection - "Favourite studios" - studios( - "The page number" - page: Int, - "The amount of entries per page, max 25" - perPage: Int - ): StudioConnection + "Favourite anime" + anime( + "The page number" + page: Int, + "The amount of entries per page, max 25" + perPage: Int + ): MediaConnection + "Favourite characters" + characters( + "The page number" + page: Int, + "The amount of entries per page, max 25" + perPage: Int + ): CharacterConnection + "Favourite manga" + manga( + "The page number" + page: Int, + "The amount of entries per page, max 25" + perPage: Int + ): MediaConnection + "Favourite staff" + staff( + "The page number" + page: Int, + "The amount of entries per page, max 25" + perPage: Int + ): StaffConnection + "Favourite studios" + studios( + "The page number" + page: Int, + "The amount of entries per page, max 25" + perPage: Int + ): StudioConnection } "Notification for when the authenticated user is followed by another user" type FollowingNotification { - "The notification context text" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The type of notification" - type: NotificationType - "The liked activity" - user: User - "The id of the user who followed the authenticated user" - userId: Int! + "The notification context text" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The type of notification" + type: NotificationType + "The liked activity" + user: User + "The id of the user who followed the authenticated user" + userId: Int! } "User's format statistics" type FormatStats { - amount: Int - format: MediaFormat + amount: Int + format: MediaFormat } "Date object that allows for incomplete date values (fuzzy)" type FuzzyDate { - "Numeric Day (24)" - day: Int - "Numeric Month (3)" - month: Int - "Numeric Year (2017)" - year: Int + "Numeric Day (24)" + day: Int + "Numeric Month (3)" + month: Int + "Numeric Year (2017)" + year: Int } "User's genre statistics" type GenreStats { - amount: Int - genre: String - meanScore: Int - "The amount of time in minutes the genre has been watched by the user" - timeWatched: Int + amount: Int + genre: String + meanScore: Int + "The amount of time in minutes the genre has been watched by the user" + timeWatched: Int } "Page of data (Used for internal use only)" type InternalPage { - activities( - "Filter by the time the activity was created" - createdAt: Int, - "Filter by the time the activity was created" - createdAt_greater: Int, - "Filter by the time the activity was created" - createdAt_lesser: Int, - "Filter activity to only activity with replies" - hasReplies: Boolean, - "Filter activity to only activity with replies or is of type text" - hasRepliesOrTypeText: Boolean, - "Filter by the activity id" - id: Int, - "Filter by the activity id" - id_in: [Int], - "Filter by the activity id" - id_not: Int, - "Filter by the activity id" - id_not_in: [Int], - "Filter activity to users who are being followed by the authenticated user" - isFollowing: Boolean, - "Filter by the associated media id of the activity" - mediaId: Int, - "Filter by the associated media id of the activity" - mediaId_in: [Int], - "Filter by the associated media id of the activity" - mediaId_not: Int, - "Filter by the associated media id of the activity" - mediaId_not_in: [Int], - "Filter by the id of the user who sent a message" - messengerId: Int, - "Filter by the id of the user who sent a message" - messengerId_in: [Int], - "Filter by the id of the user who sent a message" - messengerId_not: Int, - "Filter by the id of the user who sent a message" - messengerId_not_in: [Int], - "The order the results will be returned in" - sort: [ActivitySort], - "Filter by the type of activity" - type: ActivityType, - "Filter by the type of activity" - type_in: [ActivityType], - "Filter by the type of activity" - type_not: ActivityType, - "Filter by the type of activity" - type_not_in: [ActivityType], - "Filter by the owner user id" - userId: Int, - "Filter by the owner user id" - userId_in: [Int], - "Filter by the owner user id" - userId_not: Int, - "Filter by the owner user id" - userId_not_in: [Int] - ): [ActivityUnion] - activityReplies( - "Filter by the parent id" - activityId: Int, - "Filter by the reply id" - id: Int - ): [ActivityReply] - airingSchedules( - "Filter by the time of airing" - airingAt: Int, - "Filter by the time of airing" - airingAt_greater: Int, - "Filter by the time of airing" - airingAt_lesser: Int, - "Filter by the airing episode number" - episode: Int, - "Filter by the airing episode number" - episode_greater: Int, - "Filter by the airing episode number" - episode_in: [Int], - "Filter by the airing episode number" - episode_lesser: Int, - "Filter by the airing episode number" - episode_not: Int, - "Filter by the airing episode number" - episode_not_in: [Int], - "Filter by the id of the airing schedule item" - id: Int, - "Filter by the id of the airing schedule item" - id_in: [Int], - "Filter by the id of the airing schedule item" - id_not: Int, - "Filter by the id of the airing schedule item" - id_not_in: [Int], - "Filter by the id of associated media" - mediaId: Int, - "Filter by the id of associated media" - mediaId_in: [Int], - "Filter by the id of associated media" - mediaId_not: Int, - "Filter by the id of associated media" - mediaId_not_in: [Int], - "Filter to episodes that haven't yet aired" - notYetAired: Boolean, - "The order the results will be returned in" - sort: [AiringSort] - ): [AiringSchedule] - characterSubmissions( - assigneeId: Int, - characterId: Int, - "The order the results will be returned in" - sort: [SubmissionSort], - "Filter by the status of the submission" - status: SubmissionStatus, - "Filter by the submitter of the submission" - userId: Int - ): [CharacterSubmission] - characters( - "Filter by character id" - id: Int, - "Filter by character id" - id_in: [Int], - "Filter by character id" - id_not: Int, - "Filter by character id" - id_not_in: [Int], - "Filter by character by if its their birthday today" - isBirthday: Boolean, - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [CharacterSort] - ): [Character] - followers( - "The order the results will be returned in" - sort: [UserSort], - "User id of the follower/followed" - userId: Int! - ): [User] - following( - "The order the results will be returned in" - sort: [UserSort], - "User id of the follower/followed" - userId: Int! - ): [User] - likes( - "The id of the likeable type" - likeableId: Int, - "The type of model the id applies to" - type: LikeableType - ): [User] - media( - "Filter by the media's average score" - averageScore: Int, - "Filter by the media's average score" - averageScore_greater: Int, - "Filter by the media's average score" - averageScore_lesser: Int, - "Filter by the media's average score" - averageScore_not: Int, - "Filter by the media's chapter count" - chapters: Int, - "Filter by the media's chapter count" - chapters_greater: Int, - "Filter by the media's chapter count" - chapters_lesser: Int, - "Filter by the media's country of origin" - countryOfOrigin: CountryCode, - "Filter by the media's episode length" - duration: Int, - "Filter by the media's episode length" - duration_greater: Int, - "Filter by the media's episode length" - duration_lesser: Int, - "Filter by the end date of the media" - endDate: FuzzyDateInt, - "Filter by the end date of the media" - endDate_greater: FuzzyDateInt, - "Filter by the end date of the media" - endDate_lesser: FuzzyDateInt, - "Filter by the end date of the media" - endDate_like: String, - "Filter by amount of episodes the media has" - episodes: Int, - "Filter by amount of episodes the media has" - episodes_greater: Int, - "Filter by amount of episodes the media has" - episodes_lesser: Int, - "Filter by the media's format" - format: MediaFormat, - "Filter by the media's format" - format_in: [MediaFormat], - "Filter by the media's format" - format_not: MediaFormat, - "Filter by the media's format" - format_not_in: [MediaFormat], - "Filter by the media's genres" - genre: String, - "Filter by the media's genres" - genre_in: [String], - "Filter by the media's genres" - genre_not_in: [String], - "Filter by the media id" - id: Int, - "Filter by the media's MyAnimeList id" - idMal: Int, - "Filter by the media's MyAnimeList id" - idMal_in: [Int], - "Filter by the media's MyAnimeList id" - idMal_not: Int, - "Filter by the media's MyAnimeList id" - idMal_not_in: [Int], - "Filter by the media id" - id_in: [Int], - "Filter by the media id" - id_not: Int, - "Filter by the media id" - id_not_in: [Int], - "Filter by if the media's intended for 18+ adult audiences" - isAdult: Boolean, - "If the media is officially licensed or a self-published doujin release" - isLicensed: Boolean, - "Filter media by sites with a online streaming or reading license" - licensedBy: String, - "Filter media by sites with a online streaming or reading license" - licensedBy_in: [String], - "Only apply the tags filter argument to tags above this rank. Default: 18" - minimumTagRank: Int, - "Filter by the media on the authenticated user's lists" - onList: Boolean, - "Filter by the number of users with this media on their list" - popularity: Int, - "Filter by the number of users with this media on their list" - popularity_greater: Int, - "Filter by the number of users with this media on their list" - popularity_lesser: Int, - "Filter by the number of users with this media on their list" - popularity_not: Int, - "Filter by search query" - search: String, - "Filter by the season the media was released in" - season: MediaSeason, - "The year of the season (Winter 2017 would also include December 2016 releases). Requires season argument" - seasonYear: Int, - "The order the results will be returned in" - sort: [MediaSort], - "Filter by the source type of the media" - source: MediaSource, - "Filter by the source type of the media" - source_in: [MediaSource], - "Filter by the start date of the media" - startDate: FuzzyDateInt, - "Filter by the start date of the media" - startDate_greater: FuzzyDateInt, - "Filter by the start date of the media" - startDate_lesser: FuzzyDateInt, - "Filter by the start date of the media" - startDate_like: String, - "Filter by the media's current release status" - status: MediaStatus, - "Filter by the media's current release status" - status_in: [MediaStatus], - "Filter by the media's current release status" - status_not: MediaStatus, - "Filter by the media's current release status" - status_not_in: [MediaStatus], - "Filter by the media's tags" - tag: String, - "Filter by the media's tags with in a tag category" - tagCategory: String, - "Filter by the media's tags with in a tag category" - tagCategory_in: [String], - "Filter by the media's tags with in a tag category" - tagCategory_not_in: [String], - "Filter by the media's tags" - tag_in: [String], - "Filter by the media's tags" - tag_not_in: [String], - "Filter by the media's type" - type: MediaType, - "Filter by the media's volume count" - volumes: Int, - "Filter by the media's volume count" - volumes_greater: Int, - "Filter by the media's volume count" - volumes_lesser: Int - ): [Media] - mediaList( - "Limit to only entries also on the auth user's list. Requires user id or name arguments." - compareWithAuthList: Boolean, - "Filter by the date the user completed the media" - completedAt: FuzzyDateInt, - "Filter by the date the user completed the media" - completedAt_greater: FuzzyDateInt, - "Filter by the date the user completed the media" - completedAt_lesser: FuzzyDateInt, - "Filter by the date the user completed the media" - completedAt_like: String, - "Filter by a list entry's id" - id: Int, - "Filter list entries to users who are being followed by the authenticated user" - isFollowing: Boolean, - "Filter by the media id of the list entry" - mediaId: Int, - "Filter by the media id of the list entry" - mediaId_in: [Int], - "Filter by the media id of the list entry" - mediaId_not_in: [Int], - "Filter by note words and #tags" - notes: String, - "Filter by note words and #tags" - notes_like: String, - "The order the results will be returned in" - sort: [MediaListSort], - "Filter by the date the user started the media" - startedAt: FuzzyDateInt, - "Filter by the date the user started the media" - startedAt_greater: FuzzyDateInt, - "Filter by the date the user started the media" - startedAt_lesser: FuzzyDateInt, - "Filter by the date the user started the media" - startedAt_like: String, - "Filter by the watching/reading status" - status: MediaListStatus, - "Filter by the watching/reading status" - status_in: [MediaListStatus], - "Filter by the watching/reading status" - status_not: MediaListStatus, - "Filter by the watching/reading status" - status_not_in: [MediaListStatus], - "Filter by the list entries media type" - type: MediaType, - "Filter by a user's id" - userId: Int, - "Filter by a user's id" - userId_in: [Int], - "Filter by a user's name" - userName: String - ): [MediaList] - mediaSubmissions( - assigneeId: Int, - mediaId: Int, - "The order the results will be returned in" - sort: [SubmissionSort], - status: SubmissionStatus, - submissionId: Int, - "Filter by the media's type" - type: MediaType, - userId: Int - ): [MediaSubmission] - mediaTrends( - "Filter by score" - averageScore: Int, - "Filter by score" - averageScore_greater: Int, - "Filter by score" - averageScore_lesser: Int, - "Filter by score" - averageScore_not: Int, - "Filter by date" - date: Int, - "Filter by date" - date_greater: Int, - "Filter by date" - date_lesser: Int, - "Filter by episode number" - episode: Int, - "Filter by episode number" - episode_greater: Int, - "Filter by episode number" - episode_lesser: Int, - "Filter by episode number" - episode_not: Int, - "Filter by the media id" - mediaId: Int, - "Filter by the media id" - mediaId_in: [Int], - "Filter by the media id" - mediaId_not: Int, - "Filter by the media id" - mediaId_not_in: [Int], - "Filter by popularity" - popularity: Int, - "Filter by popularity" - popularity_greater: Int, - "Filter by popularity" - popularity_lesser: Int, - "Filter by popularity" - popularity_not: Int, - "Filter to stats recorded while the media was releasing" - releasing: Boolean, - "The order the results will be returned in" - sort: [MediaTrendSort], - "Filter by trending amount" - trending: Int, - "Filter by trending amount" - trending_greater: Int, - "Filter by trending amount" - trending_lesser: Int, - "Filter by trending amount" - trending_not: Int - ): [MediaTrend] - modActions(modId: Int, userId: Int): [ModAction] - notifications( - "Reset the unread notification count to 0 on load" - resetNotificationCount: Boolean, - "Filter by the type of notifications" - type: NotificationType, - "Filter by the type of notifications" - type_in: [NotificationType] - ): [NotificationUnion] - "The pagination information" - pageInfo: PageInfo - recommendations( - "Filter by recommendation id" - id: Int, - "Filter by media id" - mediaId: Int, - "Filter by media recommendation id" - mediaRecommendationId: Int, - "Filter by the media on the authenticated user's lists" - onList: Boolean, - "Filter by total rating of the recommendation" - rating: Int, - "Filter by total rating of the recommendation" - rating_greater: Int, - "Filter by total rating of the recommendation" - rating_lesser: Int, - "The order the results will be returned in" - sort: [RecommendationSort], - "Filter by user who created the recommendation" - userId: Int - ): [Recommendation] - reports(reportedId: Int, reporterId: Int): [Report] - reviews( - "Filter by Review id" - id: Int, - "Filter by media id" - mediaId: Int, - "Filter by media type" - mediaType: MediaType, - "The order the results will be returned in" - sort: [ReviewSort], - "Filter by user id" - userId: Int - ): [Review] - revisionHistory( - "Filter by the character id" - characterId: Int, - "Filter by the media id" - mediaId: Int, - "Filter by the staff id" - staffId: Int, - "Filter by the studio id" - studioId: Int, - "Filter by the user id" - userId: Int - ): [RevisionHistory] - staff( - "Filter by the staff id" - id: Int, - "Filter by the staff id" - id_in: [Int], - "Filter by the staff id" - id_not: Int, - "Filter by the staff id" - id_not_in: [Int], - "Filter by staff by if its their birthday today" - isBirthday: Boolean, - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [StaffSort] - ): [Staff] - staffSubmissions( - assigneeId: Int, - "The order the results will be returned in" - sort: [SubmissionSort], - staffId: Int, - "Filter by the status of the submission" - status: SubmissionStatus, - "Filter by the submitter of the submission" - userId: Int - ): [StaffSubmission] - studios( - "Filter by the studio id" - id: Int, - "Filter by the studio id" - id_in: [Int], - "Filter by the studio id" - id_not: Int, - "Filter by the studio id" - id_not_in: [Int], - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [StudioSort] - ): [Studio] - threadComments( - "Filter by the comment id" - id: Int, - "The order the results will be returned in" - sort: [ThreadCommentSort], - "Filter by the thread id" - threadId: Int, - "Filter by the user id of the comment's creator" - userId: Int - ): [ThreadComment] - threads( - "Filter by thread category id" - categoryId: Int, - "Filter by the thread id" - id: Int, - "Filter by the thread id" - id_in: [Int], - "Filter by thread media id category" - mediaCategoryId: Int, - "Filter by the user id of the last user to comment on the thread" - replyUserId: Int, - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [ThreadSort], - "Filter by if the currently authenticated user's subscribed threads" - subscribed: Boolean, - "Filter by the user id of the thread's creator" - userId: Int - ): [Thread] - userBlockSearch( - "Filter by search query" - search: String - ): [User] - users( - "Filter by the user id" - id: Int, - "Filter to moderators only if true" - isModerator: Boolean, - "Filter by the name of the user" - name: String, - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [UserSort] - ): [User] + activities( + "Filter by the time the activity was created" + createdAt: Int, + "Filter by the time the activity was created" + createdAt_greater: Int, + "Filter by the time the activity was created" + createdAt_lesser: Int, + "Filter activity to only activity with replies" + hasReplies: Boolean, + "Filter activity to only activity with replies or is of type text" + hasRepliesOrTypeText: Boolean, + "Filter by the activity id" + id: Int, + "Filter by the activity id" + id_in: [Int], + "Filter by the activity id" + id_not: Int, + "Filter by the activity id" + id_not_in: [Int], + "Filter activity to users who are being followed by the authenticated user" + isFollowing: Boolean, + "Filter by the associated media id of the activity" + mediaId: Int, + "Filter by the associated media id of the activity" + mediaId_in: [Int], + "Filter by the associated media id of the activity" + mediaId_not: Int, + "Filter by the associated media id of the activity" + mediaId_not_in: [Int], + "Filter by the id of the user who sent a message" + messengerId: Int, + "Filter by the id of the user who sent a message" + messengerId_in: [Int], + "Filter by the id of the user who sent a message" + messengerId_not: Int, + "Filter by the id of the user who sent a message" + messengerId_not_in: [Int], + "The order the results will be returned in" + sort: [ActivitySort], + "Filter by the type of activity" + type: ActivityType, + "Filter by the type of activity" + type_in: [ActivityType], + "Filter by the type of activity" + type_not: ActivityType, + "Filter by the type of activity" + type_not_in: [ActivityType], + "Filter by the owner user id" + userId: Int, + "Filter by the owner user id" + userId_in: [Int], + "Filter by the owner user id" + userId_not: Int, + "Filter by the owner user id" + userId_not_in: [Int] + ): [ActivityUnion] + activityReplies( + "Filter by the parent id" + activityId: Int, + "Filter by the reply id" + id: Int + ): [ActivityReply] + airingSchedules( + "Filter by the time of airing" + airingAt: Int, + "Filter by the time of airing" + airingAt_greater: Int, + "Filter by the time of airing" + airingAt_lesser: Int, + "Filter by the airing episode number" + episode: Int, + "Filter by the airing episode number" + episode_greater: Int, + "Filter by the airing episode number" + episode_in: [Int], + "Filter by the airing episode number" + episode_lesser: Int, + "Filter by the airing episode number" + episode_not: Int, + "Filter by the airing episode number" + episode_not_in: [Int], + "Filter by the id of the airing schedule item" + id: Int, + "Filter by the id of the airing schedule item" + id_in: [Int], + "Filter by the id of the airing schedule item" + id_not: Int, + "Filter by the id of the airing schedule item" + id_not_in: [Int], + "Filter by the id of associated media" + mediaId: Int, + "Filter by the id of associated media" + mediaId_in: [Int], + "Filter by the id of associated media" + mediaId_not: Int, + "Filter by the id of associated media" + mediaId_not_in: [Int], + "Filter to episodes that haven't yet aired" + notYetAired: Boolean, + "The order the results will be returned in" + sort: [AiringSort] + ): [AiringSchedule] + characterSubmissions( + assigneeId: Int, + characterId: Int, + "The order the results will be returned in" + sort: [SubmissionSort], + "Filter by the status of the submission" + status: SubmissionStatus, + "Filter by the submitter of the submission" + userId: Int + ): [CharacterSubmission] + characters( + "Filter by character id" + id: Int, + "Filter by character id" + id_in: [Int], + "Filter by character id" + id_not: Int, + "Filter by character id" + id_not_in: [Int], + "Filter by character by if its their birthday today" + isBirthday: Boolean, + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [CharacterSort] + ): [Character] + followers( + "The order the results will be returned in" + sort: [UserSort], + "User id of the follower/followed" + userId: Int! + ): [User] + following( + "The order the results will be returned in" + sort: [UserSort], + "User id of the follower/followed" + userId: Int! + ): [User] + likes( + "The id of the likeable type" + likeableId: Int, + "The type of model the id applies to" + type: LikeableType + ): [User] + media( + "Filter by the media's average score" + averageScore: Int, + "Filter by the media's average score" + averageScore_greater: Int, + "Filter by the media's average score" + averageScore_lesser: Int, + "Filter by the media's average score" + averageScore_not: Int, + "Filter by the media's chapter count" + chapters: Int, + "Filter by the media's chapter count" + chapters_greater: Int, + "Filter by the media's chapter count" + chapters_lesser: Int, + "Filter by the media's country of origin" + countryOfOrigin: CountryCode, + "Filter by the media's episode length" + duration: Int, + "Filter by the media's episode length" + duration_greater: Int, + "Filter by the media's episode length" + duration_lesser: Int, + "Filter by the end date of the media" + endDate: FuzzyDateInt, + "Filter by the end date of the media" + endDate_greater: FuzzyDateInt, + "Filter by the end date of the media" + endDate_lesser: FuzzyDateInt, + "Filter by the end date of the media" + endDate_like: String, + "Filter by amount of episodes the media has" + episodes: Int, + "Filter by amount of episodes the media has" + episodes_greater: Int, + "Filter by amount of episodes the media has" + episodes_lesser: Int, + "Filter by the media's format" + format: MediaFormat, + "Filter by the media's format" + format_in: [MediaFormat], + "Filter by the media's format" + format_not: MediaFormat, + "Filter by the media's format" + format_not_in: [MediaFormat], + "Filter by the media's genres" + genre: String, + "Filter by the media's genres" + genre_in: [String], + "Filter by the media's genres" + genre_not_in: [String], + "Filter by the media id" + id: Int, + "Filter by the media's MyAnimeList id" + idMal: Int, + "Filter by the media's MyAnimeList id" + idMal_in: [Int], + "Filter by the media's MyAnimeList id" + idMal_not: Int, + "Filter by the media's MyAnimeList id" + idMal_not_in: [Int], + "Filter by the media id" + id_in: [Int], + "Filter by the media id" + id_not: Int, + "Filter by the media id" + id_not_in: [Int], + "Filter by if the media's intended for 18+ adult audiences" + isAdult: Boolean, + "If the media is officially licensed or a self-published doujin release" + isLicensed: Boolean, + "Filter media by sites name with a online streaming or reading license" + licensedBy: String, + "Filter media by sites id with a online streaming or reading license" + licensedById: Int, + "Filter media by sites id with a online streaming or reading license" + licensedById_in: [Int], + "Filter media by sites name with a online streaming or reading license" + licensedBy_in: [String], + "Only apply the tags filter argument to tags above this rank. Default: 18" + minimumTagRank: Int, + "Filter by the media on the authenticated user's lists" + onList: Boolean, + "Filter by the number of users with this media on their list" + popularity: Int, + "Filter by the number of users with this media on their list" + popularity_greater: Int, + "Filter by the number of users with this media on their list" + popularity_lesser: Int, + "Filter by the number of users with this media on their list" + popularity_not: Int, + "Filter by search query" + search: String, + "Filter by the season the media was released in" + season: MediaSeason, + "The year of the season (Winter 2017 would also include December 2016 releases). Requires season argument" + seasonYear: Int, + "The order the results will be returned in" + sort: [MediaSort], + "Filter by the source type of the media" + source: MediaSource, + "Filter by the source type of the media" + source_in: [MediaSource], + "Filter by the start date of the media" + startDate: FuzzyDateInt, + "Filter by the start date of the media" + startDate_greater: FuzzyDateInt, + "Filter by the start date of the media" + startDate_lesser: FuzzyDateInt, + "Filter by the start date of the media" + startDate_like: String, + "Filter by the media's current release status" + status: MediaStatus, + "Filter by the media's current release status" + status_in: [MediaStatus], + "Filter by the media's current release status" + status_not: MediaStatus, + "Filter by the media's current release status" + status_not_in: [MediaStatus], + "Filter by the media's tags" + tag: String, + "Filter by the media's tags with in a tag category" + tagCategory: String, + "Filter by the media's tags with in a tag category" + tagCategory_in: [String], + "Filter by the media's tags with in a tag category" + tagCategory_not_in: [String], + "Filter by the media's tags" + tag_in: [String], + "Filter by the media's tags" + tag_not_in: [String], + "Filter by the media's type" + type: MediaType, + "Filter by the media's volume count" + volumes: Int, + "Filter by the media's volume count" + volumes_greater: Int, + "Filter by the media's volume count" + volumes_lesser: Int + ): [Media] + mediaList( + "Limit to only entries also on the auth user's list. Requires user id or name arguments." + compareWithAuthList: Boolean, + "Filter by the date the user completed the media" + completedAt: FuzzyDateInt, + "Filter by the date the user completed the media" + completedAt_greater: FuzzyDateInt, + "Filter by the date the user completed the media" + completedAt_lesser: FuzzyDateInt, + "Filter by the date the user completed the media" + completedAt_like: String, + "Filter by a list entry's id" + id: Int, + "Filter list entries to users who are being followed by the authenticated user" + isFollowing: Boolean, + "Filter by the media id of the list entry" + mediaId: Int, + "Filter by the media id of the list entry" + mediaId_in: [Int], + "Filter by the media id of the list entry" + mediaId_not_in: [Int], + "Filter by note words and #tags" + notes: String, + "Filter by note words and #tags" + notes_like: String, + "The order the results will be returned in" + sort: [MediaListSort], + "Filter by the date the user started the media" + startedAt: FuzzyDateInt, + "Filter by the date the user started the media" + startedAt_greater: FuzzyDateInt, + "Filter by the date the user started the media" + startedAt_lesser: FuzzyDateInt, + "Filter by the date the user started the media" + startedAt_like: String, + "Filter by the watching/reading status" + status: MediaListStatus, + "Filter by the watching/reading status" + status_in: [MediaListStatus], + "Filter by the watching/reading status" + status_not: MediaListStatus, + "Filter by the watching/reading status" + status_not_in: [MediaListStatus], + "Filter by the list entries media type" + type: MediaType, + "Filter by a user's id" + userId: Int, + "Filter by a user's id" + userId_in: [Int], + "Filter by a user's name" + userName: String + ): [MediaList] + mediaSubmissions( + assigneeId: Int, + mediaId: Int, + "The order the results will be returned in" + sort: [SubmissionSort], + status: SubmissionStatus, + submissionId: Int, + "Filter by the media's type" + type: MediaType, + userId: Int + ): [MediaSubmission] + mediaTrends( + "Filter by score" + averageScore: Int, + "Filter by score" + averageScore_greater: Int, + "Filter by score" + averageScore_lesser: Int, + "Filter by score" + averageScore_not: Int, + "Filter by date" + date: Int, + "Filter by date" + date_greater: Int, + "Filter by date" + date_lesser: Int, + "Filter by episode number" + episode: Int, + "Filter by episode number" + episode_greater: Int, + "Filter by episode number" + episode_lesser: Int, + "Filter by episode number" + episode_not: Int, + "Filter by the media id" + mediaId: Int, + "Filter by the media id" + mediaId_in: [Int], + "Filter by the media id" + mediaId_not: Int, + "Filter by the media id" + mediaId_not_in: [Int], + "Filter by popularity" + popularity: Int, + "Filter by popularity" + popularity_greater: Int, + "Filter by popularity" + popularity_lesser: Int, + "Filter by popularity" + popularity_not: Int, + "Filter to stats recorded while the media was releasing" + releasing: Boolean, + "The order the results will be returned in" + sort: [MediaTrendSort], + "Filter by trending amount" + trending: Int, + "Filter by trending amount" + trending_greater: Int, + "Filter by trending amount" + trending_lesser: Int, + "Filter by trending amount" + trending_not: Int + ): [MediaTrend] + modActions(modId: Int, userId: Int): [ModAction] + notifications( + "Reset the unread notification count to 0 on load" + resetNotificationCount: Boolean, + "Filter by the type of notifications" + type: NotificationType, + "Filter by the type of notifications" + type_in: [NotificationType] + ): [NotificationUnion] + "The pagination information" + pageInfo: PageInfo + recommendations( + "Filter by recommendation id" + id: Int, + "Filter by media id" + mediaId: Int, + "Filter by media recommendation id" + mediaRecommendationId: Int, + "Filter by the media on the authenticated user's lists" + onList: Boolean, + "Filter by total rating of the recommendation" + rating: Int, + "Filter by total rating of the recommendation" + rating_greater: Int, + "Filter by total rating of the recommendation" + rating_lesser: Int, + "The order the results will be returned in" + sort: [RecommendationSort], + "Filter by user who created the recommendation" + userId: Int + ): [Recommendation] + reports(reportedId: Int, reporterId: Int): [Report] + reviews( + "Filter by Review id" + id: Int, + "Filter by media id" + mediaId: Int, + "Filter by media type" + mediaType: MediaType, + "The order the results will be returned in" + sort: [ReviewSort], + "Filter by user id" + userId: Int + ): [Review] + revisionHistory( + "Filter by the character id" + characterId: Int, + "Filter by the media id" + mediaId: Int, + "Filter by the staff id" + staffId: Int, + "Filter by the studio id" + studioId: Int, + "Filter by the user id" + userId: Int + ): [RevisionHistory] + staff( + "Filter by the staff id" + id: Int, + "Filter by the staff id" + id_in: [Int], + "Filter by the staff id" + id_not: Int, + "Filter by the staff id" + id_not_in: [Int], + "Filter by staff by if its their birthday today" + isBirthday: Boolean, + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [StaffSort] + ): [Staff] + staffSubmissions( + assigneeId: Int, + "The order the results will be returned in" + sort: [SubmissionSort], + staffId: Int, + "Filter by the status of the submission" + status: SubmissionStatus, + "Filter by the submitter of the submission" + userId: Int + ): [StaffSubmission] + studios( + "Filter by the studio id" + id: Int, + "Filter by the studio id" + id_in: [Int], + "Filter by the studio id" + id_not: Int, + "Filter by the studio id" + id_not_in: [Int], + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [StudioSort] + ): [Studio] + threadComments( + "Filter by the comment id" + id: Int, + "The order the results will be returned in" + sort: [ThreadCommentSort], + "Filter by the thread id" + threadId: Int, + "Filter by the user id of the comment's creator" + userId: Int + ): [ThreadComment] + threads( + "Filter by thread category id" + categoryId: Int, + "Filter by the thread id" + id: Int, + "Filter by the thread id" + id_in: [Int], + "Filter by thread media id category" + mediaCategoryId: Int, + "Filter by the user id of the last user to comment on the thread" + replyUserId: Int, + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [ThreadSort], + "Filter by if the currently authenticated user's subscribed threads" + subscribed: Boolean, + "Filter by the user id of the thread's creator" + userId: Int + ): [Thread] + userBlockSearch( + "Filter by search query" + search: String + ): [User] + users( + "Filter by the user id" + id: Int, + "Filter to moderators only if true" + isModerator: Boolean, + "Filter by the name of the user" + name: String, + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [UserSort] + ): [User] } "User list activity (anime & manga updates)" type ListActivity { - "The time the activity was created at" - createdAt: Int! - "The id of the activity" - id: Int! - "If the currently authenticated user liked the activity" - isLiked: Boolean - "If the activity is locked and can receive replies" - isLocked: Boolean - "If the currently authenticated user is subscribed to the activity" - isSubscribed: Boolean - "The amount of likes the activity has" - likeCount: Int! - "The users who liked the activity" - likes: [User] - "The associated media to the activity update" - media: Media - "The list progress made" - progress: String - "The written replies to the activity" - replies: [ActivityReply] - "The number of activity replies" - replyCount: Int! - "The url for the activity page on the AniList website" - siteUrl: String - "The list item's textual status" - status: String - "The type of activity" - type: ActivityType - "The owner of the activity" - user: User - "The user id of the activity's creator" - userId: Int + "The time the activity was created at" + createdAt: Int! + "The id of the activity" + id: Int! + "If the currently authenticated user liked the activity" + isLiked: Boolean + "If the activity is locked and can receive replies" + isLocked: Boolean + "If the activity is pinned to the top of the users activity feed" + isPinned: Boolean + "If the currently authenticated user is subscribed to the activity" + isSubscribed: Boolean + "The amount of likes the activity has" + likeCount: Int! + "The users who liked the activity" + likes: [User] + "The associated media to the activity update" + media: Media + "The list progress made" + progress: String + "The written replies to the activity" + replies: [ActivityReply] + "The number of activity replies" + replyCount: Int! + "The url for the activity page on the AniList website" + siteUrl: String + "The list item's textual status" + status: String + "The type of activity" + type: ActivityType + "The owner of the activity" + user: User + "The user id of the activity's creator" + userId: Int +} + +type ListActivityOption { + disabled: Boolean + type: MediaListStatus } "User's list score statistics" type ListScoreStats { - meanScore: Int - standardDeviation: Int + meanScore: Int + standardDeviation: Int } "Anime or Manga" type Media { - "The media's entire airing schedule" - airingSchedule( - "Filter to episodes that have not yet aired" - notYetAired: Boolean, - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int - ): AiringScheduleConnection - "If the media should have forum thread automatically created for it on airing episode release" - autoCreateForumThread: Boolean - "A weighted average score of all the user's scores of the media" - averageScore: Int - "The banner image of the media" - bannerImage: String - "The amount of chapters the manga has when complete" - chapters: Int - "The characters in the media" - characters( - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - role: CharacterRole, - sort: [CharacterSort] - ): CharacterConnection - "Where the media was created. (ISO 3166-1 alpha-2)" - countryOfOrigin: CountryCode - "The cover images of the media" - coverImage: MediaCoverImage - "Short description of the media's story and characters" - description( - "Return the string in pre-parsed html instead of markdown" - asHtml: Boolean - ): String - "The general length of each anime episode in minutes" - duration: Int - "The last official release date of the media" - endDate: FuzzyDate - "The amount of episodes the anime has when complete" - episodes: Int - "External links to another site related to the media" - externalLinks: [MediaExternalLink] - "The amount of user's who have favourited the media" - favourites: Int - "The format the media was released in" - format: MediaFormat - "The genres of the media" - genres: [String] - "Official Twitter hashtags for the media" - hashtag: String - "The id of the media" - id: Int! - "The mal id of the media" - idMal: Int - "If the media is intended only for 18+ adult audiences" - isAdult: Boolean - "If the media is marked as favourite by the current authenticated user" - isFavourite: Boolean! - "If the media is blocked from being added to favourites" - isFavouriteBlocked: Boolean! - "If the media is officially licensed or a self-published doujin release" - isLicensed: Boolean - "Locked media may not be added to lists our favorited. This may be due to the entry pending for deletion or other reasons." - isLocked: Boolean - "If the media is blocked from being recommended to/from" - isRecommendationBlocked: Boolean - "Mean score of all the user's scores of the media" - meanScore: Int - "The authenticated user's media list entry for the media" - mediaListEntry: MediaList - "Notes for site moderators" - modNotes: String - "The media's next episode airing schedule" - nextAiringEpisode: AiringSchedule - "The number of users with the media on their list" - popularity: Int - "The ranking of the media in a particular time span and format compared to other media" - rankings: [MediaRank] - "User recommendations for similar media" - recommendations( - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [RecommendationSort] - ): RecommendationConnection - "Other media in the same or connecting franchise" - relations: MediaConnection - "User reviews of the media" - reviews( - limit: Int, - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [ReviewSort] - ): ReviewConnection - "The season the media was initially released in" - season: MediaSeason - "The year & season the media was initially released in" - seasonInt: Int - "The season year the media was initially released in" - seasonYear: Int - "The url for the media page on the AniList website" - siteUrl: String - "Source type the media was adapted from." - source( - "Provide 2 or 3 to use new version 2 or 3 of sources enum" - version: Int - ): MediaSource - "The staff who produced the media" - staff( - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [StaffSort] - ): StaffConnection - "The first official release date of the media" - startDate: FuzzyDate - stats: MediaStats - "The current releasing status of the media" - status( - "Provide 2 to use new version 2 of sources enum" - version: Int - ): MediaStatus - "Data and links to legal streaming episodes on external sites" - streamingEpisodes: [MediaStreamingEpisode] - "The companies who produced the media" - studios(isMain: Boolean, sort: [StudioSort]): StudioConnection - "Alternative titles of the media" - synonyms: [String] - "List of tags that describes elements and themes of the media" - tags: [MediaTag] - "The official titles of the media in various languages" - title: MediaTitle - "Media trailer or advertisement" - trailer: MediaTrailer - "The amount of related activity in the past hour" - trending: Int - "The media's daily trend stats" - trends( - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - "Filter to stats recorded while the media was releasing" - releasing: Boolean, - sort: [MediaTrendSort] - ): MediaTrendConnection - "The type of the media; anime or manga" - type: MediaType - "When the media's data was last updated" - updatedAt: Int - "The amount of volumes the manga has when complete" - volumes: Int + "The media's entire airing schedule" + airingSchedule( + "Filter to episodes that have not yet aired" + notYetAired: Boolean, + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int + ): AiringScheduleConnection + "If the media should have forum thread automatically created for it on airing episode release" + autoCreateForumThread: Boolean + "A weighted average score of all the user's scores of the media" + averageScore: Int + "The banner image of the media" + bannerImage: String + "The amount of chapters the manga has when complete" + chapters: Int + "The characters in the media" + characters( + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + role: CharacterRole, + sort: [CharacterSort] + ): CharacterConnection + "Where the media was created. (ISO 3166-1 alpha-2)" + countryOfOrigin: CountryCode + "The cover images of the media" + coverImage: MediaCoverImage + "Short description of the media's story and characters" + description( + "Return the string in pre-parsed html instead of markdown" + asHtml: Boolean + ): String + "The general length of each anime episode in minutes" + duration: Int + "The last official release date of the media" + endDate: FuzzyDate + "The amount of episodes the anime has when complete" + episodes: Int + "External links to another site related to the media" + externalLinks: [MediaExternalLink] + "The amount of user's who have favourited the media" + favourites: Int + "The format the media was released in" + format: MediaFormat + "The genres of the media" + genres: [String] + "Official Twitter hashtags for the media" + hashtag: String + "The id of the media" + id: Int! + "The mal id of the media" + idMal: Int + "If the media is intended only for 18+ adult audiences" + isAdult: Boolean + "If the media is marked as favourite by the current authenticated user" + isFavourite: Boolean! + "If the media is blocked from being added to favourites" + isFavouriteBlocked: Boolean! + "If the media is officially licensed or a self-published doujin release" + isLicensed: Boolean + "Locked media may not be added to lists our favorited. This may be due to the entry pending for deletion or other reasons." + isLocked: Boolean + "If the media is blocked from being recommended to/from" + isRecommendationBlocked: Boolean + "If the media is blocked from being reviewed" + isReviewBlocked: Boolean + "Mean score of all the user's scores of the media" + meanScore: Int + "The authenticated user's media list entry for the media" + mediaListEntry: MediaList + "Notes for site moderators" + modNotes: String + "The media's next episode airing schedule" + nextAiringEpisode: AiringSchedule + "The number of users with the media on their list" + popularity: Int + "The ranking of the media in a particular time span and format compared to other media" + rankings: [MediaRank] + "User recommendations for similar media" + recommendations( + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [RecommendationSort] + ): RecommendationConnection + "Other media in the same or connecting franchise" + relations: MediaConnection + "User reviews of the media" + reviews( + limit: Int, + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [ReviewSort] + ): ReviewConnection + "The season the media was initially released in" + season: MediaSeason + "The year & season the media was initially released in" + seasonInt: Int + "The season year the media was initially released in" + seasonYear: Int + "The url for the media page on the AniList website" + siteUrl: String + "Source type the media was adapted from." + source( + "Provide 2 or 3 to use new version 2 or 3 of sources enum" + version: Int + ): MediaSource + "The staff who produced the media" + staff( + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [StaffSort] + ): StaffConnection + "The first official release date of the media" + startDate: FuzzyDate + stats: MediaStats + "The current releasing status of the media" + status( + "Provide 2 to use new version 2 of sources enum" + version: Int + ): MediaStatus + "Data and links to legal streaming episodes on external sites" + streamingEpisodes: [MediaStreamingEpisode] + "The companies who produced the media" + studios(isMain: Boolean, sort: [StudioSort]): StudioConnection + "Alternative titles of the media" + synonyms: [String] + "List of tags that describes elements and themes of the media" + tags: [MediaTag] + "The official titles of the media in various languages" + title: MediaTitle + "Media trailer or advertisement" + trailer: MediaTrailer + "The amount of related activity in the past hour" + trending: Int + "The media's daily trend stats" + trends( + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + "Filter to stats recorded while the media was releasing" + releasing: Boolean, + sort: [MediaTrendSort] + ): MediaTrendConnection + "The type of the media; anime or manga" + type: MediaType + "When the media's data was last updated" + updatedAt: Int + "The amount of volumes the manga has when complete" + volumes: Int } "Internal - Media characters separated" type MediaCharacter { - "The characters in the media voiced by the parent actor" - character: Character - "Media specific character name" - characterName: String - dubGroup: String - "The id of the connection" - id: Int - "The characters role in the media" - role: CharacterRole - roleNotes: String - "The voice actor of the character" - voiceActor: Staff + "The characters in the media voiced by the parent actor" + character: Character + "Media specific character name" + characterName: String + dubGroup: String + "The id of the connection" + id: Int + "The characters role in the media" + role: CharacterRole + roleNotes: String + "The voice actor of the character" + voiceActor: Staff } type MediaConnection { - edges: [MediaEdge] - nodes: [Media] - "The pagination information" - pageInfo: PageInfo + edges: [MediaEdge] + nodes: [Media] + "The pagination information" + pageInfo: PageInfo } type MediaCoverImage { - "Average #hex color of cover image" - color: String - "The cover image url of the media at its largest size. If this size isn't available, large will be provided instead." - extraLarge: String - "The cover image url of the media at a large size" - large: String - "The cover image url of the media at medium size" - medium: String + "Average #hex color of cover image" + color: String + "The cover image url of the media at its largest size. If this size isn't available, large will be provided instead." + extraLarge: String + "The cover image url of the media at a large size" + large: String + "The cover image url of the media at medium size" + medium: String } "Notification for when a media entry's data was changed in a significant way impacting users' list tracking" type MediaDataChangeNotification { - "The reason for the media data change" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The media that received data changes" - media: Media - "The id of the media that received data changes" - mediaId: Int! - "The reason for the media data change" - reason: String - "The type of notification" - type: NotificationType + "The reason for the media data change" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The media that received data changes" + media: Media + "The id of the media that received data changes" + mediaId: Int! + "The reason for the media data change" + reason: String + "The type of notification" + type: NotificationType } "Notification for when a media tracked in a user's list is deleted from the site" type MediaDeletionNotification { - "The reason for the media deletion" - context: String - "The time the notification was created at" - createdAt: Int - "The title of the deleted media" - deletedMediaTitle: String - "The id of the Notification" - id: Int! - "The reason for the media deletion" - reason: String - "The type of notification" - type: NotificationType + "The reason for the media deletion" + context: String + "The time the notification was created at" + createdAt: Int + "The title of the deleted media" + deletedMediaTitle: String + "The id of the Notification" + id: Int! + "The reason for the media deletion" + reason: String + "The type of notification" + type: NotificationType } "Media connection edge" type MediaEdge { - "Media specific character name" - characterName: String - "The characters role in the media" - characterRole: CharacterRole - "The characters in the media voiced by the parent actor" - characters: [Character] - "Used for grouping roles where multiple dubs exist for the same language. Either dubbing company name or language variant." - dubGroup: String - "The order the media should be displayed from the users favourites" - favouriteOrder: Int - "The id of the connection" - id: Int - "If the studio is the main animation studio of the media (For Studio->MediaConnection field only)" - isMainStudio: Boolean! - node: Media - "The type of relation to the parent model" - relationType( - "Provide 2 to use new version 2 of relation enum" - version: Int - ): MediaRelation - "Notes regarding the VA's role for the character" - roleNotes: String - "The role of the staff member in the production of the media" - staffRole: String - "The voice actors of the character with role date" - voiceActorRoles(language: StaffLanguage, sort: [StaffSort]): [StaffRoleType] - "The voice actors of the character" - voiceActors(language: StaffLanguage, sort: [StaffSort]): [Staff] + "Media specific character name" + characterName: String + "The characters role in the media" + characterRole: CharacterRole + "The characters in the media voiced by the parent actor" + characters: [Character] + "Used for grouping roles where multiple dubs exist for the same language. Either dubbing company name or language variant." + dubGroup: String + "The order the media should be displayed from the users favourites" + favouriteOrder: Int + "The id of the connection" + id: Int + "If the studio is the main animation studio of the media (For Studio->MediaConnection field only)" + isMainStudio: Boolean! + node: Media + "The type of relation to the parent model" + relationType( + "Provide 2 to use new version 2 of relation enum" + version: Int + ): MediaRelation + "Notes regarding the VA's role for the character" + roleNotes: String + "The role of the staff member in the production of the media" + staffRole: String + "The voice actors of the character with role date" + voiceActorRoles(language: StaffLanguage, sort: [StaffSort]): [StaffRoleType] + "The voice actors of the character" + voiceActors(language: StaffLanguage, sort: [StaffSort]): [Staff] } -"An external link to another site related to the media" +"An external link to another site related to the media or staff member" type MediaExternalLink { - "The id of the external link" - id: Int! - "The site location of the external link" - site: String! - "The url of the external link" - url: String! + color: String + "The icon image url of the site. Not available for all links. Transparent PNG 64x64" + icon: String + "The id of the external link" + id: Int! + isDisabled: Boolean + "Language the site content is in. See Staff language field for values." + language: String + notes: String + "The links website site name" + site: String! + "The links website site id" + siteId: Int + type: ExternalLinkType + "The url of the external link or base url of link source" + url: String } "List of anime or manga" type MediaList { - "Map of advanced scores with name keys" - advancedScores: Json - "When the entry was completed by the user" - completedAt: FuzzyDate - "When the entry data was created" - createdAt: Int - "Map of booleans for which custom lists the entry are in" - customLists( - "Change return structure to an array of objects" - asArray: Boolean - ): Json - "If the entry shown be hidden from non-custom lists" - hiddenFromStatusLists: Boolean - "The id of the list entry" - id: Int! - media: Media - "The id of the media" - mediaId: Int! - "Text notes" - notes: String - "Priority of planning" - priority: Int - "If the entry should only be visible to authenticated user" - private: Boolean - "The amount of episodes/chapters consumed by the user" - progress: Int - "The amount of volumes read by the user" - progressVolumes: Int - "The amount of times the user has rewatched/read the media" - repeat: Int - "The score of the entry" - score( - "Force the score to be returned in the provided format type." - format: ScoreFormat - ): Float - "When the entry was started by the user" - startedAt: FuzzyDate - "The watching/reading status" - status: MediaListStatus - "When the entry data was last updated" - updatedAt: Int - user: User - "The id of the user owner of the list entry" - userId: Int! + "Map of advanced scores with name keys" + advancedScores: Json + "When the entry was completed by the user" + completedAt: FuzzyDate + "When the entry data was created" + createdAt: Int + "Map of booleans for which custom lists the entry are in" + customLists( + "Change return structure to an array of objects" + asArray: Boolean + ): Json + "If the entry shown be hidden from non-custom lists" + hiddenFromStatusLists: Boolean + "The id of the list entry" + id: Int! + media: Media + "The id of the media" + mediaId: Int! + "Text notes" + notes: String + "Priority of planning" + priority: Int + "If the entry should only be visible to authenticated user" + private: Boolean + "The amount of episodes/chapters consumed by the user" + progress: Int + "The amount of volumes read by the user" + progressVolumes: Int + "The amount of times the user has rewatched/read the media" + repeat: Int + "The score of the entry" + score( + "Force the score to be returned in the provided format type." + format: ScoreFormat + ): Float + "When the entry was started by the user" + startedAt: FuzzyDate + "The watching/reading status" + status: MediaListStatus + "When the entry data was last updated" + updatedAt: Int + user: User + "The id of the user owner of the list entry" + userId: Int! } "List of anime or manga" type MediaListCollection { - "A map of media list entry arrays grouped by custom lists" - customLists(asArray: Boolean): [[MediaList]] @deprecated(reason: "Not GraphQL spec compliant, use lists field instead.") - "If there is another chunk" - hasNextChunk: Boolean - "Grouped media list entries" - lists: [MediaListGroup] - "A map of media list entry arrays grouped by status" - statusLists(asArray: Boolean): [[MediaList]] @deprecated(reason: "Not GraphQL spec compliant, use lists field instead.") - "The owner of the list" - user: User + "A map of media list entry arrays grouped by custom lists" + customLists(asArray: Boolean): [[MediaList]] @deprecated(reason: "Not GraphQL spec compliant, use lists field instead.") + "If there is another chunk" + hasNextChunk: Boolean + "Grouped media list entries" + lists: [MediaListGroup] + "A map of media list entry arrays grouped by status" + statusLists(asArray: Boolean): [[MediaList]] @deprecated(reason: "Not GraphQL spec compliant, use lists field instead.") + "The owner of the list" + user: User } "List group of anime or manga entries" type MediaListGroup { - "Media list entries" - entries: [MediaList] - isCustomList: Boolean - isSplitCompletedList: Boolean - name: String - status: MediaListStatus + "Media list entries" + entries: [MediaList] + isCustomList: Boolean + isSplitCompletedList: Boolean + name: String + status: MediaListStatus } "A user's list options" type MediaListOptions { - "The user's anime list options" - animeList: MediaListTypeOptions - "The user's manga list options" - mangaList: MediaListTypeOptions - "The default order list rows should be displayed in" - rowOrder: String - "The score format the user is using for media lists" - scoreFormat: ScoreFormat - "The list theme options for both lists" - sharedTheme: Json @deprecated(reason: "No longer used") - "If the shared theme should be used instead of the individual list themes" - sharedThemeEnabled: Boolean @deprecated(reason: "No longer used") - useLegacyLists: Boolean @deprecated(reason: "No longer used") + "The user's anime list options" + animeList: MediaListTypeOptions + "The user's manga list options" + mangaList: MediaListTypeOptions + "The default order list rows should be displayed in" + rowOrder: String + "The score format the user is using for media lists" + scoreFormat: ScoreFormat + "The list theme options for both lists" + sharedTheme: Json @deprecated(reason: "No longer used") + "If the shared theme should be used instead of the individual list themes" + sharedThemeEnabled: Boolean @deprecated(reason: "No longer used") + useLegacyLists: Boolean @deprecated(reason: "No longer used") } "A user's list options for anime or manga lists" type MediaListTypeOptions { - "The names of the user's advanced scoring sections" - advancedScoring: [String] - "If advanced scoring is enabled" - advancedScoringEnabled: Boolean - "The names of the user's custom lists" - customLists: [String] - "The order each list should be displayed in" - sectionOrder: [String] - "If the completed sections of the list should be separated by format" - splitCompletedSectionByFormat: Boolean - "The list theme options" - theme: Json @deprecated(reason: "This field has not yet been fully implemented and may change without warning") + "The names of the user's advanced scoring sections" + advancedScoring: [String] + "If advanced scoring is enabled" + advancedScoringEnabled: Boolean + "The names of the user's custom lists" + customLists: [String] + "The order each list should be displayed in" + sectionOrder: [String] + "If the completed sections of the list should be separated by format" + splitCompletedSectionByFormat: Boolean + "The list theme options" + theme: Json @deprecated(reason: "This field has not yet been fully implemented and may change without warning") } "Notification for when a media entry is merged into another for a user who had it on their list" type MediaMergeNotification { - "The reason for the media data change" - context: String - "The time the notification was created at" - createdAt: Int - "The title of the deleted media" - deletedMediaTitles: [String] - "The id of the Notification" - id: Int! - "The media that was merged into" - media: Media - "The id of the media that was merged into" - mediaId: Int! - "The reason for the media merge" - reason: String - "The type of notification" - type: NotificationType + "The reason for the media data change" + context: String + "The time the notification was created at" + createdAt: Int + "The title of the deleted media" + deletedMediaTitles: [String] + "The id of the Notification" + id: Int! + "The media that was merged into" + media: Media + "The id of the media that was merged into" + mediaId: Int! + "The reason for the media merge" + reason: String + "The type of notification" + type: NotificationType } "The ranking of a media in a particular time span and format compared to other media" type MediaRank { - "If the ranking is based on all time instead of a season/year" - allTime: Boolean - "String that gives context to the ranking type and time span" - context: String! - "The format the media is ranked within" - format: MediaFormat! - "The id of the rank" - id: Int! - "The numerical rank of the media" - rank: Int! - "The season the media is ranked within" - season: MediaSeason - "The type of ranking" - type: MediaRankType! - "The year the media is ranked within" - year: Int + "If the ranking is based on all time instead of a season/year" + allTime: Boolean + "String that gives context to the ranking type and time span" + context: String! + "The format the media is ranked within" + format: MediaFormat! + "The id of the rank" + id: Int! + "The numerical rank of the media" + rank: Int! + "The season the media is ranked within" + season: MediaSeason + "The type of ranking" + type: MediaRankType! + "The year the media is ranked within" + year: Int } "A media's statistics" type MediaStats { - airingProgression: [AiringProgression] @deprecated(reason: "Replaced by MediaTrends") - scoreDistribution: [ScoreDistribution] - statusDistribution: [StatusDistribution] + airingProgression: [AiringProgression] @deprecated(reason: "Replaced by MediaTrends") + scoreDistribution: [ScoreDistribution] + statusDistribution: [StatusDistribution] } "Data and links to legal streaming episodes on external sites" type MediaStreamingEpisode { - "The site location of the streaming episodes" - site: String - "Url of episode image thumbnail" - thumbnail: String - "Title of the episode" - title: String - "The url of the episode" - url: String + "The site location of the streaming episodes" + site: String + "Url of episode image thumbnail" + thumbnail: String + "Title of the episode" + title: String + "The url of the episode" + url: String } "Media submission" type MediaSubmission { - "Data Mod assigned to handle the submission" - assignee: User - changes: [String] - characters: [MediaSubmissionComparison] - createdAt: Int - externalLinks: [MediaExternalLink] - "The id of the submission" - id: Int! - "Whether the submission is locked" - locked: Boolean - media: Media - notes: String - relations: [MediaEdge] - source: String - staff: [MediaSubmissionComparison] - "Status of the submission" - status: SubmissionStatus - studios: [MediaSubmissionComparison] - submission: Media - "User submitter of the submission" - submitter: User - submitterStats: Json + "Data Mod assigned to handle the submission" + assignee: User + changes: [String] + characters: [MediaSubmissionComparison] + createdAt: Int + externalLinks: [MediaSubmissionComparison] + "The id of the submission" + id: Int! + "Whether the submission is locked" + locked: Boolean + media: Media + notes: String + relations: [MediaEdge] + source: String + staff: [MediaSubmissionComparison] + "Status of the submission" + status: SubmissionStatus + studios: [MediaSubmissionComparison] + submission: Media + "User submitter of the submission" + submitter: User + submitterStats: Json } "Media submission with comparison to current data" type MediaSubmissionComparison { - character: MediaCharacter - staff: StaffEdge - studio: StudioEdge - submission: MediaSubmissionEdge + character: MediaCharacter + externalLink: MediaExternalLink + staff: StaffEdge + studio: StudioEdge + submission: MediaSubmissionEdge } type MediaSubmissionEdge { - character: Character - characterName: String - characterRole: CharacterRole - characterSubmission: Character - dubGroup: String - "The id of the direct submission" - id: Int - isMain: Boolean - media: Media - roleNotes: String - staff: Staff - staffRole: String - staffSubmission: Staff - studio: Studio - voiceActor: Staff - voiceActorSubmission: Staff + character: Character + characterName: String + characterRole: CharacterRole + characterSubmission: Character + dubGroup: String + externalLink: MediaExternalLink + "The id of the direct submission" + id: Int + isMain: Boolean + media: Media + roleNotes: String + staff: Staff + staffRole: String + staffSubmission: Staff + studio: Studio + voiceActor: Staff + voiceActorSubmission: Staff } "A tag that describes a theme or element of the media" type MediaTag { - "The categories of tags this tag belongs to" - category: String - "A general description of the tag" - description: String - "The id of the tag" - id: Int! - "If the tag is only for adult 18+ media" - isAdult: Boolean - "If the tag could be a spoiler for any media" - isGeneralSpoiler: Boolean - "If the tag is a spoiler for this media" - isMediaSpoiler: Boolean - "The name of the tag" - name: String! - "The relevance ranking of the tag out of the 100 for this media" - rank: Int - "The user who submitted the tag" - userId: Int + "The categories of tags this tag belongs to" + category: String + "A general description of the tag" + description: String + "The id of the tag" + id: Int! + "If the tag is only for adult 18+ media" + isAdult: Boolean + "If the tag could be a spoiler for any media" + isGeneralSpoiler: Boolean + "If the tag is a spoiler for this media" + isMediaSpoiler: Boolean + "The name of the tag" + name: String! + "The relevance ranking of the tag out of the 100 for this media" + rank: Int + "The user who submitted the tag" + userId: Int } "The official titles of the media in various languages" type MediaTitle { - "The official english title" - english(stylised: Boolean): String - "Official title in it's native language" - native(stylised: Boolean): String - "The romanization of the native language title" - romaji(stylised: Boolean): String - "The currently authenticated users preferred title language. Default romaji for non-authenticated" - userPreferred: String + "The official english title" + english(stylised: Boolean): String + "Official title in it's native language" + native(stylised: Boolean): String + "The romanization of the native language title" + romaji(stylised: Boolean): String + "The currently authenticated users preferred title language. Default romaji for non-authenticated" + userPreferred: String } "Media trailer or advertisement" type MediaTrailer { - "The trailer video id" - id: String - "The site the video is hosted by (Currently either youtube or dailymotion)" - site: String - "The url for the thumbnail image of the video" - thumbnail: String + "The trailer video id" + id: String + "The site the video is hosted by (Currently either youtube or dailymotion)" + site: String + "The url for the thumbnail image of the video" + thumbnail: String } "Daily media statistics" type MediaTrend { - "A weighted average score of all the user's scores of the media" - averageScore: Int - "The day the data was recorded (timestamp)" - date: Int! - "The episode number of the anime released on this day" - episode: Int - "The number of users with watching/reading the media" - inProgress: Int - "The related media" - media: Media - "The id of the tag" - mediaId: Int! - "The number of users with the media on their list" - popularity: Int - "If the media was being released at this time" - releasing: Boolean! - "The amount of media activity on the day" - trending: Int! + "A weighted average score of all the user's scores of the media" + averageScore: Int + "The day the data was recorded (timestamp)" + date: Int! + "The episode number of the anime released on this day" + episode: Int + "The number of users with watching/reading the media" + inProgress: Int + "The related media" + media: Media + "The id of the tag" + mediaId: Int! + "The number of users with the media on their list" + popularity: Int + "If the media was being released at this time" + releasing: Boolean! + "The amount of media activity on the day" + trending: Int! } type MediaTrendConnection { - edges: [MediaTrendEdge] - nodes: [MediaTrend] - "The pagination information" - pageInfo: PageInfo + edges: [MediaTrendEdge] + nodes: [MediaTrend] + "The pagination information" + pageInfo: PageInfo } "Media trend connection edge" type MediaTrendEdge { - node: MediaTrend + node: MediaTrend } "User message activity" type MessageActivity { - "The time the activity was created at" - createdAt: Int! - "The id of the activity" - id: Int! - "If the currently authenticated user liked the activity" - isLiked: Boolean - "If the activity is locked and can receive replies" - isLocked: Boolean - "If the message is private and only viewable to the sender and recipients" - isPrivate: Boolean - "If the currently authenticated user is subscribed to the activity" - isSubscribed: Boolean - "The amount of likes the activity has" - likeCount: Int! - "The users who liked the activity" - likes: [User] - "The message text (Markdown)" - message( - "Return the string in pre-parsed html instead of markdown" - asHtml: Boolean - ): String - "The user who sent the activity message" - messenger: User - "The user id of the activity's sender" - messengerId: Int - "The user who the activity message was sent to" - recipient: User - "The user id of the activity's recipient" - recipientId: Int - "The written replies to the activity" - replies: [ActivityReply] - "The number of activity replies" - replyCount: Int! - "The url for the activity page on the AniList website" - siteUrl: String - "The type of the activity" - type: ActivityType + "The time the activity was created at" + createdAt: Int! + "The id of the activity" + id: Int! + "If the currently authenticated user liked the activity" + isLiked: Boolean + "If the activity is locked and can receive replies" + isLocked: Boolean + "If the message is private and only viewable to the sender and recipients" + isPrivate: Boolean + "If the currently authenticated user is subscribed to the activity" + isSubscribed: Boolean + "The amount of likes the activity has" + likeCount: Int! + "The users who liked the activity" + likes: [User] + "The message text (Markdown)" + message( + "Return the string in pre-parsed html instead of markdown" + asHtml: Boolean + ): String + "The user who sent the activity message" + messenger: User + "The user id of the activity's sender" + messengerId: Int + "The user who the activity message was sent to" + recipient: User + "The user id of the activity's recipient" + recipientId: Int + "The written replies to the activity" + replies: [ActivityReply] + "The number of activity replies" + replyCount: Int! + "The url for the activity page on the AniList website" + siteUrl: String + "The type of the activity" + type: ActivityType } type ModAction { - createdAt: Int! - data: String - "The id of the action" - id: Int! - mod: User - objectId: Int - objectType: String - type: ModActionType - user: User + createdAt: Int! + data: String + "The id of the action" + id: Int! + mod: User + objectId: Int + objectType: String + type: ModActionType + user: User } type Mutation { - "Delete an activity item of the authenticated users" - DeleteActivity( - "The id of the activity to delete" - id: Int - ): Deleted - "Delete an activity reply of the authenticated users" - DeleteActivityReply( - "The id of the reply to delete" - id: Int - ): Deleted - "Delete a custom list and remove the list entries from it" - DeleteCustomList( - "The name of the custom list to delete" - customList: String, - "The media list type of the custom list" - type: MediaType - ): Deleted - "Delete a media list entry" - DeleteMediaListEntry( - "The id of the media list entry to delete" - id: Int - ): Deleted - "Delete a review" - DeleteReview( - "The id of the review to delete" - id: Int - ): Deleted - "Delete a thread" - DeleteThread( - "The id of the thread to delete" - id: Int - ): Deleted - "Delete a thread comment" - DeleteThreadComment( - "The id of the thread comment to delete" - id: Int - ): Deleted - "Rate a review" - RateReview( - "The rating to apply to the review" - rating: ReviewRating, - "The id of the review to rate" - reviewId: Int - ): Review - "Create or update an activity reply" - SaveActivityReply( - "The id of the parent activity being replied to" - activityId: Int, - "If the reply should be sent from the Moderator account (Mod Only)" - asMod: Boolean, - "The activity reply id, required for updating" - id: Int, - "The reply text" - text: String - ): ActivityReply - "Update list activity (Mod Only)" - SaveListActivity( - "The activity's id, required for updating" - id: Int, - "If the activity should be locked. (Mod Only)" - locked: Boolean - ): ListActivity - "Create or update a media list entry" - SaveMediaListEntry( - "Array of advanced scores" - advancedScores: [Float], - "When the entry was completed by the user" - completedAt: FuzzyDateInput, - "Array of custom list names which should be enabled for this entry" - customLists: [String], - "If the entry shown be hidden from non-custom lists" - hiddenFromStatusLists: Boolean, - "The list entry id, required for updating" - id: Int, - "The id of the media the entry is of" - mediaId: Int, - "Text notes" - notes: String, - "Priority of planning" - priority: Int, - "If the entry should only be visible to authenticated user" - private: Boolean, - "The amount of episodes/chapters consumed by the user" - progress: Int, - "The amount of volumes read by the user" - progressVolumes: Int, - "The amount of times the user has rewatched/read the media" - repeat: Int, - "The score of the media in the user's chosen scoring method" - score: Float, - "The score of the media in 100 point" - scoreRaw: Int, - "When the entry was started by the user" - startedAt: FuzzyDateInput, - "The watching/reading status" - status: MediaListStatus - ): MediaList - "Create or update message activity for the currently authenticated user" - SaveMessageActivity( - "If the message should be sent from the Moderator account (Mod Only)" - asMod: Boolean, - "The activity id, required for updating" - id: Int, - "If the activity should be locked. (Mod Only)" - locked: Boolean, - "The activity message text" - message: String, - "If the activity should be private" - private: Boolean, - "The id of the user the message is being sent to" - recipientId: Int - ): MessageActivity - "Recommendation a media" - SaveRecommendation( - "The id of the base media" - mediaId: Int, - "The id of the media to recommend" - mediaRecommendationId: Int, - "The rating to give the recommendation" - rating: RecommendationRating - ): Recommendation - "Create or update a review" - SaveReview( - "The main review text. Min:2200 characters" - body: String, - "The review id, required for updating" - id: Int, - "The id of the media the review is of" - mediaId: Int, - "If the review should only be visible to its creator" - private: Boolean, - "A short summary/preview of the review. Min:20, Max:120 characters" - score: Int, - "A short summary/preview of the review. Min:20, Max:120 characters" - summary: String - ): Review - "Create or update text activity for the currently authenticated user" - SaveTextActivity( - "The activity's id, required for updating" - id: Int, - "If the activity should be locked. (Mod Only)" - locked: Boolean, - "The activity text" - text: String - ): TextActivity - "Create or update a forum thread" - SaveThread( - "The main text body of the thread" - body: String, - "Forum categories the thread should be within" - categories: [Int], - "The thread id, required for updating" - id: Int, - "If the thread should be locked. (Mod Only)" - locked: Boolean, - "Media related to the contents of the thread" - mediaCategories: [Int], - "If the thread should be stickied. (Mod Only)" - sticky: Boolean, - "The title of the thread" - title: String - ): Thread - "Create or update a thread comment" - SaveThreadComment( - "The comment markdown text" - comment: String, - "The comment id, required for updating" - id: Int, - "If the comment tree should be locked. (Mod Only)" - locked: Boolean, - "The id of thread comment to reply to" - parentCommentId: Int, - "The id of thread the comment belongs to" - threadId: Int - ): ThreadComment - "Toggle the subscription of an activity item" - ToggleActivitySubscription( - "The id of the activity to un/subscribe" - activityId: Int, - "Whether to subscribe or unsubscribe from the activity" - subscribe: Boolean - ): ActivityUnion - "Favourite or unfavourite an anime, manga, character, staff member, or studio" - ToggleFavourite( - "The id of the anime to un/favourite" - animeId: Int, - "The id of the character to un/favourite" - characterId: Int, - "The id of the manga to un/favourite" - mangaId: Int, - "The id of the staff to un/favourite" - staffId: Int, - "The id of the studio to un/favourite" - studioId: Int - ): Favourites - "Toggle the un/following of a user" - ToggleFollow( - "The id of the user to un/follow" - userId: Int - ): User - """ + "Delete an activity item of the authenticated users" + DeleteActivity( + "The id of the activity to delete" + id: Int + ): Deleted + "Delete an activity reply of the authenticated users" + DeleteActivityReply( + "The id of the reply to delete" + id: Int + ): Deleted + "Delete a custom list and remove the list entries from it" + DeleteCustomList( + "The name of the custom list to delete" + customList: String, + "The media list type of the custom list" + type: MediaType + ): Deleted + "Delete a media list entry" + DeleteMediaListEntry( + "The id of the media list entry to delete" + id: Int + ): Deleted + "Delete a review" + DeleteReview( + "The id of the review to delete" + id: Int + ): Deleted + "Delete a thread" + DeleteThread( + "The id of the thread to delete" + id: Int + ): Deleted + "Delete a thread comment" + DeleteThreadComment( + "The id of the thread comment to delete" + id: Int + ): Deleted + "Rate a review" + RateReview( + "The rating to apply to the review" + rating: ReviewRating, + "The id of the review to rate" + reviewId: Int + ): Review + "Create or update an activity reply" + SaveActivityReply( + "The id of the parent activity being replied to" + activityId: Int, + "If the reply should be sent from the Moderator account (Mod Only)" + asMod: Boolean, + "The activity reply id, required for updating" + id: Int, + "The reply text" + text: String + ): ActivityReply + "Update list activity (Mod Only)" + SaveListActivity( + "The activity's id, required for updating" + id: Int, + "If the activity should be locked. (Mod Only)" + locked: Boolean + ): ListActivity + "Create or update a media list entry" + SaveMediaListEntry( + "Array of advanced scores" + advancedScores: [Float], + "When the entry was completed by the user" + completedAt: FuzzyDateInput, + "Array of custom list names which should be enabled for this entry" + customLists: [String], + "If the entry shown be hidden from non-custom lists" + hiddenFromStatusLists: Boolean, + "The list entry id, required for updating" + id: Int, + "The id of the media the entry is of" + mediaId: Int, + "Text notes" + notes: String, + "Priority of planning" + priority: Int, + "If the entry should only be visible to authenticated user" + private: Boolean, + "The amount of episodes/chapters consumed by the user" + progress: Int, + "The amount of volumes read by the user" + progressVolumes: Int, + "The amount of times the user has rewatched/read the media" + repeat: Int, + "The score of the media in the user's chosen scoring method" + score: Float, + "The score of the media in 100 point" + scoreRaw: Int, + "When the entry was started by the user" + startedAt: FuzzyDateInput, + "The watching/reading status" + status: MediaListStatus + ): MediaList + "Create or update message activity for the currently authenticated user" + SaveMessageActivity( + "If the message should be sent from the Moderator account (Mod Only)" + asMod: Boolean, + "The activity id, required for updating" + id: Int, + "If the activity should be locked. (Mod Only)" + locked: Boolean, + "The activity message text" + message: String, + "If the activity should be private" + private: Boolean, + "The id of the user the message is being sent to" + recipientId: Int + ): MessageActivity + "Recommendation a media" + SaveRecommendation( + "The id of the base media" + mediaId: Int, + "The id of the media to recommend" + mediaRecommendationId: Int, + "The rating to give the recommendation" + rating: RecommendationRating + ): Recommendation + "Create or update a review" + SaveReview( + "The main review text. Min:2200 characters" + body: String, + "The review id, required for updating" + id: Int, + "The id of the media the review is of" + mediaId: Int, + "If the review should only be visible to its creator" + private: Boolean, + "A short summary/preview of the review. Min:20, Max:120 characters" + score: Int, + "A short summary/preview of the review. Min:20, Max:120 characters" + summary: String + ): Review + "Create or update text activity for the currently authenticated user" + SaveTextActivity( + "The activity's id, required for updating" + id: Int, + "If the activity should be locked. (Mod Only)" + locked: Boolean, + "The activity text" + text: String + ): TextActivity + "Create or update a forum thread" + SaveThread( + "The main text body of the thread" + body: String, + "Forum categories the thread should be within" + categories: [Int], + "The thread id, required for updating" + id: Int, + "If the thread should be locked. (Mod Only)" + locked: Boolean, + "Media related to the contents of the thread" + mediaCategories: [Int], + "If the thread should be stickied. (Mod Only)" + sticky: Boolean, + "The title of the thread" + title: String + ): Thread + "Create or update a thread comment" + SaveThreadComment( + "The comment markdown text" + comment: String, + "The comment id, required for updating" + id: Int, + "If the comment tree should be locked. (Mod Only)" + locked: Boolean, + "The id of thread comment to reply to" + parentCommentId: Int, + "The id of thread the comment belongs to" + threadId: Int + ): ThreadComment + "Toggle activity to be pinned to the top of the user's activity feed" + ToggleActivityPin( + "Toggle activity id to be pinned" + id: Int, + "If the activity should be pinned or unpinned" + pinned: Boolean + ): ActivityUnion + "Toggle the subscription of an activity item" + ToggleActivitySubscription( + "The id of the activity to un/subscribe" + activityId: Int, + "Whether to subscribe or unsubscribe from the activity" + subscribe: Boolean + ): ActivityUnion + "Favourite or unfavourite an anime, manga, character, staff member, or studio" + ToggleFavourite( + "The id of the anime to un/favourite" + animeId: Int, + "The id of the character to un/favourite" + characterId: Int, + "The id of the manga to un/favourite" + mangaId: Int, + "The id of the staff to un/favourite" + staffId: Int, + "The id of the studio to un/favourite" + studioId: Int + ): Favourites + "Toggle the un/following of a user" + ToggleFollow( + "The id of the user to un/follow" + userId: Int + ): User + """ - Add or remove a like from a likeable type. - Returns all the users who liked the same model - """ - ToggleLike( - "The id of the likeable type" - id: Int, - "The type of model to be un/liked" - type: LikeableType - ): [User] - "Add or remove a like from a likeable type." - ToggleLikeV2( - "The id of the likeable type" - id: Int, - "The type of model to be un/liked" - type: LikeableType - ): LikeableUnion - "Toggle the subscription of a forum thread" - ToggleThreadSubscription( - "Whether to subscribe or unsubscribe from the forum thread" - subscribe: Boolean, - "The id of the forum thread to un/subscribe" - threadId: Int - ): Thread - UpdateAniChartHighlights(highlights: [AniChartHighlightInput]): Json - UpdateAniChartSettings(outgoingLinkProvider: String, sort: String, theme: String, titleLanguage: String): Json - "Update the order favourites are displayed in" - UpdateFavouriteOrder( - "The id of the anime to un/favourite" - animeIds: [Int], - "List of integers which the anime should be ordered by (Asc)" - animeOrder: [Int], - "The id of the character to un/favourite" - characterIds: [Int], - "List of integers which the character should be ordered by (Asc)" - characterOrder: [Int], - "The id of the manga to un/favourite" - mangaIds: [Int], - "List of integers which the manga should be ordered by (Asc)" - mangaOrder: [Int], - "The id of the staff to un/favourite" - staffIds: [Int], - "List of integers which the staff should be ordered by (Asc)" - staffOrder: [Int], - "The id of the studio to un/favourite" - studioIds: [Int], - "List of integers which the studio should be ordered by (Asc)" - studioOrder: [Int] - ): Favourites - "Update multiple media list entries to the same values" - UpdateMediaListEntries( - "Array of advanced scores" - advancedScores: [Float], - "When the entry was completed by the user" - completedAt: FuzzyDateInput, - "If the entry shown be hidden from non-custom lists" - hiddenFromStatusLists: Boolean, - "The list entries ids to update" - ids: [Int], - "Text notes" - notes: String, - "Priority of planning" - priority: Int, - "If the entry should only be visible to authenticated user" - private: Boolean, - "The amount of episodes/chapters consumed by the user" - progress: Int, - "The amount of volumes read by the user" - progressVolumes: Int, - "The amount of times the user has rewatched/read the media" - repeat: Int, - "The score of the media in the user's chosen scoring method" - score: Float, - "The score of the media in 100 point" - scoreRaw: Int, - "When the entry was started by the user" - startedAt: FuzzyDateInput, - "The watching/reading status" - status: MediaListStatus - ): [MediaList] - UpdateUser( - "User's about/bio text" - about: String, - "Minutes between activity for them to be merged together. 0 is Never, Above 2 weeks (20160 mins) is Always." - activityMergeTime: Int, - "If the user should get notifications when a show they are watching aires" - airingNotifications: Boolean, - "The user's anime list options" - animeListOptions: MediaListOptionsInput, - "If the user should see media marked as adult-only" - displayAdultContent: Boolean, - "Profile highlight color" - donatorBadge: String, - "The user's anime list options" - mangaListOptions: MediaListOptionsInput, - "Notification options" - notificationOptions: [NotificationOptionInput], - "Profile highlight color" - profileColor: String, - "The user's default list order" - rowOrder: String, - "The user's list scoring system" - scoreFormat: ScoreFormat, - "The language the user wants to see staff and character names in" - staffNameLanguage: UserStaffNameLanguage, - "Timezone offset format: -?HH:MM" - timezone: String, - "User's title language" - titleLanguage: UserTitleLanguage - ): User + Add or remove a like from a likeable type. + Returns all the users who liked the same model + """ + ToggleLike( + "The id of the likeable type" + id: Int, + "The type of model to be un/liked" + type: LikeableType + ): [User] + "Add or remove a like from a likeable type." + ToggleLikeV2( + "The id of the likeable type" + id: Int, + "The type of model to be un/liked" + type: LikeableType + ): LikeableUnion + "Toggle the subscription of a forum thread" + ToggleThreadSubscription( + "Whether to subscribe or unsubscribe from the forum thread" + subscribe: Boolean, + "The id of the forum thread to un/subscribe" + threadId: Int + ): Thread + UpdateAniChartHighlights(highlights: [AniChartHighlightInput]): Json + UpdateAniChartSettings(outgoingLinkProvider: String, sort: String, theme: String, titleLanguage: String): Json + "Update the order favourites are displayed in" + UpdateFavouriteOrder( + "The id of the anime to un/favourite" + animeIds: [Int], + "List of integers which the anime should be ordered by (Asc)" + animeOrder: [Int], + "The id of the character to un/favourite" + characterIds: [Int], + "List of integers which the character should be ordered by (Asc)" + characterOrder: [Int], + "The id of the manga to un/favourite" + mangaIds: [Int], + "List of integers which the manga should be ordered by (Asc)" + mangaOrder: [Int], + "The id of the staff to un/favourite" + staffIds: [Int], + "List of integers which the staff should be ordered by (Asc)" + staffOrder: [Int], + "The id of the studio to un/favourite" + studioIds: [Int], + "List of integers which the studio should be ordered by (Asc)" + studioOrder: [Int] + ): Favourites + "Update multiple media list entries to the same values" + UpdateMediaListEntries( + "Array of advanced scores" + advancedScores: [Float], + "When the entry was completed by the user" + completedAt: FuzzyDateInput, + "If the entry shown be hidden from non-custom lists" + hiddenFromStatusLists: Boolean, + "The list entries ids to update" + ids: [Int], + "Text notes" + notes: String, + "Priority of planning" + priority: Int, + "If the entry should only be visible to authenticated user" + private: Boolean, + "The amount of episodes/chapters consumed by the user" + progress: Int, + "The amount of volumes read by the user" + progressVolumes: Int, + "The amount of times the user has rewatched/read the media" + repeat: Int, + "The score of the media in the user's chosen scoring method" + score: Float, + "The score of the media in 100 point" + scoreRaw: Int, + "When the entry was started by the user" + startedAt: FuzzyDateInput, + "The watching/reading status" + status: MediaListStatus + ): [MediaList] + UpdateUser( + "User's about/bio text" + about: String, + "Minutes between activity for them to be merged together. 0 is Never, Above 2 weeks (20160 mins) is Always." + activityMergeTime: Int, + "If the user should get notifications when a show they are watching aires" + airingNotifications: Boolean, + "The user's anime list options" + animeListOptions: MediaListOptionsInput, + disabledListActivity: [ListActivityOptionInput], + "If the user should see media marked as adult-only" + displayAdultContent: Boolean, + "Profile highlight color" + donatorBadge: String, + "The user's anime list options" + mangaListOptions: MediaListOptionsInput, + "Notification options" + notificationOptions: [NotificationOptionInput], + "Profile highlight color" + profileColor: String, + "Only allow messages from other users the user follows" + restrictMessagesToFollowing: Boolean, + "The user's default list order" + rowOrder: String, + "The user's list scoring system" + scoreFormat: ScoreFormat, + "The language the user wants to see staff and character names in" + staffNameLanguage: UserStaffNameLanguage, + "Timezone offset format: -?HH:MM" + timezone: String, + "User's title language" + titleLanguage: UserTitleLanguage + ): User } "Notification option" type NotificationOption { - "Whether this type of notification is enabled" - enabled: Boolean - "The type of notification" - type: NotificationType + "Whether this type of notification is enabled" + enabled: Boolean + "The type of notification" + type: NotificationType } "Page of data" type Page { - activities( - "Filter by the time the activity was created" - createdAt: Int, - "Filter by the time the activity was created" - createdAt_greater: Int, - "Filter by the time the activity was created" - createdAt_lesser: Int, - "Filter activity to only activity with replies" - hasReplies: Boolean, - "Filter activity to only activity with replies or is of type text" - hasRepliesOrTypeText: Boolean, - "Filter by the activity id" - id: Int, - "Filter by the activity id" - id_in: [Int], - "Filter by the activity id" - id_not: Int, - "Filter by the activity id" - id_not_in: [Int], - "Filter activity to users who are being followed by the authenticated user" - isFollowing: Boolean, - "Filter by the associated media id of the activity" - mediaId: Int, - "Filter by the associated media id of the activity" - mediaId_in: [Int], - "Filter by the associated media id of the activity" - mediaId_not: Int, - "Filter by the associated media id of the activity" - mediaId_not_in: [Int], - "Filter by the id of the user who sent a message" - messengerId: Int, - "Filter by the id of the user who sent a message" - messengerId_in: [Int], - "Filter by the id of the user who sent a message" - messengerId_not: Int, - "Filter by the id of the user who sent a message" - messengerId_not_in: [Int], - "The order the results will be returned in" - sort: [ActivitySort], - "Filter by the type of activity" - type: ActivityType, - "Filter by the type of activity" - type_in: [ActivityType], - "Filter by the type of activity" - type_not: ActivityType, - "Filter by the type of activity" - type_not_in: [ActivityType], - "Filter by the owner user id" - userId: Int, - "Filter by the owner user id" - userId_in: [Int], - "Filter by the owner user id" - userId_not: Int, - "Filter by the owner user id" - userId_not_in: [Int] - ): [ActivityUnion] - activityReplies( - "Filter by the parent id" - activityId: Int, - "Filter by the reply id" - id: Int - ): [ActivityReply] - airingSchedules( - "Filter by the time of airing" - airingAt: Int, - "Filter by the time of airing" - airingAt_greater: Int, - "Filter by the time of airing" - airingAt_lesser: Int, - "Filter by the airing episode number" - episode: Int, - "Filter by the airing episode number" - episode_greater: Int, - "Filter by the airing episode number" - episode_in: [Int], - "Filter by the airing episode number" - episode_lesser: Int, - "Filter by the airing episode number" - episode_not: Int, - "Filter by the airing episode number" - episode_not_in: [Int], - "Filter by the id of the airing schedule item" - id: Int, - "Filter by the id of the airing schedule item" - id_in: [Int], - "Filter by the id of the airing schedule item" - id_not: Int, - "Filter by the id of the airing schedule item" - id_not_in: [Int], - "Filter by the id of associated media" - mediaId: Int, - "Filter by the id of associated media" - mediaId_in: [Int], - "Filter by the id of associated media" - mediaId_not: Int, - "Filter by the id of associated media" - mediaId_not_in: [Int], - "Filter to episodes that haven't yet aired" - notYetAired: Boolean, - "The order the results will be returned in" - sort: [AiringSort] - ): [AiringSchedule] - characters( - "Filter by character id" - id: Int, - "Filter by character id" - id_in: [Int], - "Filter by character id" - id_not: Int, - "Filter by character id" - id_not_in: [Int], - "Filter by character by if its their birthday today" - isBirthday: Boolean, - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [CharacterSort] - ): [Character] - followers( - "The order the results will be returned in" - sort: [UserSort], - "User id of the follower/followed" - userId: Int! - ): [User] - following( - "The order the results will be returned in" - sort: [UserSort], - "User id of the follower/followed" - userId: Int! - ): [User] - likes( - "The id of the likeable type" - likeableId: Int, - "The type of model the id applies to" - type: LikeableType - ): [User] - media( - "Filter by the media's average score" - averageScore: Int, - "Filter by the media's average score" - averageScore_greater: Int, - "Filter by the media's average score" - averageScore_lesser: Int, - "Filter by the media's average score" - averageScore_not: Int, - "Filter by the media's chapter count" - chapters: Int, - "Filter by the media's chapter count" - chapters_greater: Int, - "Filter by the media's chapter count" - chapters_lesser: Int, - "Filter by the media's country of origin" - countryOfOrigin: CountryCode, - "Filter by the media's episode length" - duration: Int, - "Filter by the media's episode length" - duration_greater: Int, - "Filter by the media's episode length" - duration_lesser: Int, - "Filter by the end date of the media" - endDate: FuzzyDateInt, - "Filter by the end date of the media" - endDate_greater: FuzzyDateInt, - "Filter by the end date of the media" - endDate_lesser: FuzzyDateInt, - "Filter by the end date of the media" - endDate_like: String, - "Filter by amount of episodes the media has" - episodes: Int, - "Filter by amount of episodes the media has" - episodes_greater: Int, - "Filter by amount of episodes the media has" - episodes_lesser: Int, - "Filter by the media's format" - format: MediaFormat, - "Filter by the media's format" - format_in: [MediaFormat], - "Filter by the media's format" - format_not: MediaFormat, - "Filter by the media's format" - format_not_in: [MediaFormat], - "Filter by the media's genres" - genre: String, - "Filter by the media's genres" - genre_in: [String], - "Filter by the media's genres" - genre_not_in: [String], - "Filter by the media id" - id: Int, - "Filter by the media's MyAnimeList id" - idMal: Int, - "Filter by the media's MyAnimeList id" - idMal_in: [Int], - "Filter by the media's MyAnimeList id" - idMal_not: Int, - "Filter by the media's MyAnimeList id" - idMal_not_in: [Int], - "Filter by the media id" - id_in: [Int], - "Filter by the media id" - id_not: Int, - "Filter by the media id" - id_not_in: [Int], - "Filter by if the media's intended for 18+ adult audiences" - isAdult: Boolean, - "If the media is officially licensed or a self-published doujin release" - isLicensed: Boolean, - "Filter media by sites with a online streaming or reading license" - licensedBy: String, - "Filter media by sites with a online streaming or reading license" - licensedBy_in: [String], - "Only apply the tags filter argument to tags above this rank. Default: 18" - minimumTagRank: Int, - "Filter by the media on the authenticated user's lists" - onList: Boolean, - "Filter by the number of users with this media on their list" - popularity: Int, - "Filter by the number of users with this media on their list" - popularity_greater: Int, - "Filter by the number of users with this media on their list" - popularity_lesser: Int, - "Filter by the number of users with this media on their list" - popularity_not: Int, - "Filter by search query" - search: String, - "Filter by the season the media was released in" - season: MediaSeason, - "The year of the season (Winter 2017 would also include December 2016 releases). Requires season argument" - seasonYear: Int, - "The order the results will be returned in" - sort: [MediaSort], - "Filter by the source type of the media" - source: MediaSource, - "Filter by the source type of the media" - source_in: [MediaSource], - "Filter by the start date of the media" - startDate: FuzzyDateInt, - "Filter by the start date of the media" - startDate_greater: FuzzyDateInt, - "Filter by the start date of the media" - startDate_lesser: FuzzyDateInt, - "Filter by the start date of the media" - startDate_like: String, - "Filter by the media's current release status" - status: MediaStatus, - "Filter by the media's current release status" - status_in: [MediaStatus], - "Filter by the media's current release status" - status_not: MediaStatus, - "Filter by the media's current release status" - status_not_in: [MediaStatus], - "Filter by the media's tags" - tag: String, - "Filter by the media's tags with in a tag category" - tagCategory: String, - "Filter by the media's tags with in a tag category" - tagCategory_in: [String], - "Filter by the media's tags with in a tag category" - tagCategory_not_in: [String], - "Filter by the media's tags" - tag_in: [String], - "Filter by the media's tags" - tag_not_in: [String], - "Filter by the media's type" - type: MediaType, - "Filter by the media's volume count" - volumes: Int, - "Filter by the media's volume count" - volumes_greater: Int, - "Filter by the media's volume count" - volumes_lesser: Int - ): [Media] - mediaList( - "Limit to only entries also on the auth user's list. Requires user id or name arguments." - compareWithAuthList: Boolean, - "Filter by the date the user completed the media" - completedAt: FuzzyDateInt, - "Filter by the date the user completed the media" - completedAt_greater: FuzzyDateInt, - "Filter by the date the user completed the media" - completedAt_lesser: FuzzyDateInt, - "Filter by the date the user completed the media" - completedAt_like: String, - "Filter by a list entry's id" - id: Int, - "Filter list entries to users who are being followed by the authenticated user" - isFollowing: Boolean, - "Filter by the media id of the list entry" - mediaId: Int, - "Filter by the media id of the list entry" - mediaId_in: [Int], - "Filter by the media id of the list entry" - mediaId_not_in: [Int], - "Filter by note words and #tags" - notes: String, - "Filter by note words and #tags" - notes_like: String, - "The order the results will be returned in" - sort: [MediaListSort], - "Filter by the date the user started the media" - startedAt: FuzzyDateInt, - "Filter by the date the user started the media" - startedAt_greater: FuzzyDateInt, - "Filter by the date the user started the media" - startedAt_lesser: FuzzyDateInt, - "Filter by the date the user started the media" - startedAt_like: String, - "Filter by the watching/reading status" - status: MediaListStatus, - "Filter by the watching/reading status" - status_in: [MediaListStatus], - "Filter by the watching/reading status" - status_not: MediaListStatus, - "Filter by the watching/reading status" - status_not_in: [MediaListStatus], - "Filter by the list entries media type" - type: MediaType, - "Filter by a user's id" - userId: Int, - "Filter by a user's id" - userId_in: [Int], - "Filter by a user's name" - userName: String - ): [MediaList] - mediaTrends( - "Filter by score" - averageScore: Int, - "Filter by score" - averageScore_greater: Int, - "Filter by score" - averageScore_lesser: Int, - "Filter by score" - averageScore_not: Int, - "Filter by date" - date: Int, - "Filter by date" - date_greater: Int, - "Filter by date" - date_lesser: Int, - "Filter by episode number" - episode: Int, - "Filter by episode number" - episode_greater: Int, - "Filter by episode number" - episode_lesser: Int, - "Filter by episode number" - episode_not: Int, - "Filter by the media id" - mediaId: Int, - "Filter by the media id" - mediaId_in: [Int], - "Filter by the media id" - mediaId_not: Int, - "Filter by the media id" - mediaId_not_in: [Int], - "Filter by popularity" - popularity: Int, - "Filter by popularity" - popularity_greater: Int, - "Filter by popularity" - popularity_lesser: Int, - "Filter by popularity" - popularity_not: Int, - "Filter to stats recorded while the media was releasing" - releasing: Boolean, - "The order the results will be returned in" - sort: [MediaTrendSort], - "Filter by trending amount" - trending: Int, - "Filter by trending amount" - trending_greater: Int, - "Filter by trending amount" - trending_lesser: Int, - "Filter by trending amount" - trending_not: Int - ): [MediaTrend] - notifications( - "Reset the unread notification count to 0 on load" - resetNotificationCount: Boolean, - "Filter by the type of notifications" - type: NotificationType, - "Filter by the type of notifications" - type_in: [NotificationType] - ): [NotificationUnion] - "The pagination information" - pageInfo: PageInfo - recommendations( - "Filter by recommendation id" - id: Int, - "Filter by media id" - mediaId: Int, - "Filter by media recommendation id" - mediaRecommendationId: Int, - "Filter by the media on the authenticated user's lists" - onList: Boolean, - "Filter by total rating of the recommendation" - rating: Int, - "Filter by total rating of the recommendation" - rating_greater: Int, - "Filter by total rating of the recommendation" - rating_lesser: Int, - "The order the results will be returned in" - sort: [RecommendationSort], - "Filter by user who created the recommendation" - userId: Int - ): [Recommendation] - reviews( - "Filter by Review id" - id: Int, - "Filter by media id" - mediaId: Int, - "Filter by media type" - mediaType: MediaType, - "The order the results will be returned in" - sort: [ReviewSort], - "Filter by user id" - userId: Int - ): [Review] - staff( - "Filter by the staff id" - id: Int, - "Filter by the staff id" - id_in: [Int], - "Filter by the staff id" - id_not: Int, - "Filter by the staff id" - id_not_in: [Int], - "Filter by staff by if its their birthday today" - isBirthday: Boolean, - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [StaffSort] - ): [Staff] - studios( - "Filter by the studio id" - id: Int, - "Filter by the studio id" - id_in: [Int], - "Filter by the studio id" - id_not: Int, - "Filter by the studio id" - id_not_in: [Int], - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [StudioSort] - ): [Studio] - threadComments( - "Filter by the comment id" - id: Int, - "The order the results will be returned in" - sort: [ThreadCommentSort], - "Filter by the thread id" - threadId: Int, - "Filter by the user id of the comment's creator" - userId: Int - ): [ThreadComment] - threads( - "Filter by thread category id" - categoryId: Int, - "Filter by the thread id" - id: Int, - "Filter by the thread id" - id_in: [Int], - "Filter by thread media id category" - mediaCategoryId: Int, - "Filter by the user id of the last user to comment on the thread" - replyUserId: Int, - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [ThreadSort], - "Filter by if the currently authenticated user's subscribed threads" - subscribed: Boolean, - "Filter by the user id of the thread's creator" - userId: Int - ): [Thread] - users( - "Filter by the user id" - id: Int, - "Filter to moderators only if true" - isModerator: Boolean, - "Filter by the name of the user" - name: String, - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [UserSort] - ): [User] + activities( + "Filter by the time the activity was created" + createdAt: Int, + "Filter by the time the activity was created" + createdAt_greater: Int, + "Filter by the time the activity was created" + createdAt_lesser: Int, + "Filter activity to only activity with replies" + hasReplies: Boolean, + "Filter activity to only activity with replies or is of type text" + hasRepliesOrTypeText: Boolean, + "Filter by the activity id" + id: Int, + "Filter by the activity id" + id_in: [Int], + "Filter by the activity id" + id_not: Int, + "Filter by the activity id" + id_not_in: [Int], + "Filter activity to users who are being followed by the authenticated user" + isFollowing: Boolean, + "Filter by the associated media id of the activity" + mediaId: Int, + "Filter by the associated media id of the activity" + mediaId_in: [Int], + "Filter by the associated media id of the activity" + mediaId_not: Int, + "Filter by the associated media id of the activity" + mediaId_not_in: [Int], + "Filter by the id of the user who sent a message" + messengerId: Int, + "Filter by the id of the user who sent a message" + messengerId_in: [Int], + "Filter by the id of the user who sent a message" + messengerId_not: Int, + "Filter by the id of the user who sent a message" + messengerId_not_in: [Int], + "The order the results will be returned in" + sort: [ActivitySort], + "Filter by the type of activity" + type: ActivityType, + "Filter by the type of activity" + type_in: [ActivityType], + "Filter by the type of activity" + type_not: ActivityType, + "Filter by the type of activity" + type_not_in: [ActivityType], + "Filter by the owner user id" + userId: Int, + "Filter by the owner user id" + userId_in: [Int], + "Filter by the owner user id" + userId_not: Int, + "Filter by the owner user id" + userId_not_in: [Int] + ): [ActivityUnion] + activityReplies( + "Filter by the parent id" + activityId: Int, + "Filter by the reply id" + id: Int + ): [ActivityReply] + airingSchedules( + "Filter by the time of airing" + airingAt: Int, + "Filter by the time of airing" + airingAt_greater: Int, + "Filter by the time of airing" + airingAt_lesser: Int, + "Filter by the airing episode number" + episode: Int, + "Filter by the airing episode number" + episode_greater: Int, + "Filter by the airing episode number" + episode_in: [Int], + "Filter by the airing episode number" + episode_lesser: Int, + "Filter by the airing episode number" + episode_not: Int, + "Filter by the airing episode number" + episode_not_in: [Int], + "Filter by the id of the airing schedule item" + id: Int, + "Filter by the id of the airing schedule item" + id_in: [Int], + "Filter by the id of the airing schedule item" + id_not: Int, + "Filter by the id of the airing schedule item" + id_not_in: [Int], + "Filter by the id of associated media" + mediaId: Int, + "Filter by the id of associated media" + mediaId_in: [Int], + "Filter by the id of associated media" + mediaId_not: Int, + "Filter by the id of associated media" + mediaId_not_in: [Int], + "Filter to episodes that haven't yet aired" + notYetAired: Boolean, + "The order the results will be returned in" + sort: [AiringSort] + ): [AiringSchedule] + characters( + "Filter by character id" + id: Int, + "Filter by character id" + id_in: [Int], + "Filter by character id" + id_not: Int, + "Filter by character id" + id_not_in: [Int], + "Filter by character by if its their birthday today" + isBirthday: Boolean, + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [CharacterSort] + ): [Character] + followers( + "The order the results will be returned in" + sort: [UserSort], + "User id of the follower/followed" + userId: Int! + ): [User] + following( + "The order the results will be returned in" + sort: [UserSort], + "User id of the follower/followed" + userId: Int! + ): [User] + likes( + "The id of the likeable type" + likeableId: Int, + "The type of model the id applies to" + type: LikeableType + ): [User] + media( + "Filter by the media's average score" + averageScore: Int, + "Filter by the media's average score" + averageScore_greater: Int, + "Filter by the media's average score" + averageScore_lesser: Int, + "Filter by the media's average score" + averageScore_not: Int, + "Filter by the media's chapter count" + chapters: Int, + "Filter by the media's chapter count" + chapters_greater: Int, + "Filter by the media's chapter count" + chapters_lesser: Int, + "Filter by the media's country of origin" + countryOfOrigin: CountryCode, + "Filter by the media's episode length" + duration: Int, + "Filter by the media's episode length" + duration_greater: Int, + "Filter by the media's episode length" + duration_lesser: Int, + "Filter by the end date of the media" + endDate: FuzzyDateInt, + "Filter by the end date of the media" + endDate_greater: FuzzyDateInt, + "Filter by the end date of the media" + endDate_lesser: FuzzyDateInt, + "Filter by the end date of the media" + endDate_like: String, + "Filter by amount of episodes the media has" + episodes: Int, + "Filter by amount of episodes the media has" + episodes_greater: Int, + "Filter by amount of episodes the media has" + episodes_lesser: Int, + "Filter by the media's format" + format: MediaFormat, + "Filter by the media's format" + format_in: [MediaFormat], + "Filter by the media's format" + format_not: MediaFormat, + "Filter by the media's format" + format_not_in: [MediaFormat], + "Filter by the media's genres" + genre: String, + "Filter by the media's genres" + genre_in: [String], + "Filter by the media's genres" + genre_not_in: [String], + "Filter by the media id" + id: Int, + "Filter by the media's MyAnimeList id" + idMal: Int, + "Filter by the media's MyAnimeList id" + idMal_in: [Int], + "Filter by the media's MyAnimeList id" + idMal_not: Int, + "Filter by the media's MyAnimeList id" + idMal_not_in: [Int], + "Filter by the media id" + id_in: [Int], + "Filter by the media id" + id_not: Int, + "Filter by the media id" + id_not_in: [Int], + "Filter by if the media's intended for 18+ adult audiences" + isAdult: Boolean, + "If the media is officially licensed or a self-published doujin release" + isLicensed: Boolean, + "Filter media by sites name with a online streaming or reading license" + licensedBy: String, + "Filter media by sites id with a online streaming or reading license" + licensedById: Int, + "Filter media by sites id with a online streaming or reading license" + licensedById_in: [Int], + "Filter media by sites name with a online streaming or reading license" + licensedBy_in: [String], + "Only apply the tags filter argument to tags above this rank. Default: 18" + minimumTagRank: Int, + "Filter by the media on the authenticated user's lists" + onList: Boolean, + "Filter by the number of users with this media on their list" + popularity: Int, + "Filter by the number of users with this media on their list" + popularity_greater: Int, + "Filter by the number of users with this media on their list" + popularity_lesser: Int, + "Filter by the number of users with this media on their list" + popularity_not: Int, + "Filter by search query" + search: String, + "Filter by the season the media was released in" + season: MediaSeason, + "The year of the season (Winter 2017 would also include December 2016 releases). Requires season argument" + seasonYear: Int, + "The order the results will be returned in" + sort: [MediaSort], + "Filter by the source type of the media" + source: MediaSource, + "Filter by the source type of the media" + source_in: [MediaSource], + "Filter by the start date of the media" + startDate: FuzzyDateInt, + "Filter by the start date of the media" + startDate_greater: FuzzyDateInt, + "Filter by the start date of the media" + startDate_lesser: FuzzyDateInt, + "Filter by the start date of the media" + startDate_like: String, + "Filter by the media's current release status" + status: MediaStatus, + "Filter by the media's current release status" + status_in: [MediaStatus], + "Filter by the media's current release status" + status_not: MediaStatus, + "Filter by the media's current release status" + status_not_in: [MediaStatus], + "Filter by the media's tags" + tag: String, + "Filter by the media's tags with in a tag category" + tagCategory: String, + "Filter by the media's tags with in a tag category" + tagCategory_in: [String], + "Filter by the media's tags with in a tag category" + tagCategory_not_in: [String], + "Filter by the media's tags" + tag_in: [String], + "Filter by the media's tags" + tag_not_in: [String], + "Filter by the media's type" + type: MediaType, + "Filter by the media's volume count" + volumes: Int, + "Filter by the media's volume count" + volumes_greater: Int, + "Filter by the media's volume count" + volumes_lesser: Int + ): [Media] + mediaList( + "Limit to only entries also on the auth user's list. Requires user id or name arguments." + compareWithAuthList: Boolean, + "Filter by the date the user completed the media" + completedAt: FuzzyDateInt, + "Filter by the date the user completed the media" + completedAt_greater: FuzzyDateInt, + "Filter by the date the user completed the media" + completedAt_lesser: FuzzyDateInt, + "Filter by the date the user completed the media" + completedAt_like: String, + "Filter by a list entry's id" + id: Int, + "Filter list entries to users who are being followed by the authenticated user" + isFollowing: Boolean, + "Filter by the media id of the list entry" + mediaId: Int, + "Filter by the media id of the list entry" + mediaId_in: [Int], + "Filter by the media id of the list entry" + mediaId_not_in: [Int], + "Filter by note words and #tags" + notes: String, + "Filter by note words and #tags" + notes_like: String, + "The order the results will be returned in" + sort: [MediaListSort], + "Filter by the date the user started the media" + startedAt: FuzzyDateInt, + "Filter by the date the user started the media" + startedAt_greater: FuzzyDateInt, + "Filter by the date the user started the media" + startedAt_lesser: FuzzyDateInt, + "Filter by the date the user started the media" + startedAt_like: String, + "Filter by the watching/reading status" + status: MediaListStatus, + "Filter by the watching/reading status" + status_in: [MediaListStatus], + "Filter by the watching/reading status" + status_not: MediaListStatus, + "Filter by the watching/reading status" + status_not_in: [MediaListStatus], + "Filter by the list entries media type" + type: MediaType, + "Filter by a user's id" + userId: Int, + "Filter by a user's id" + userId_in: [Int], + "Filter by a user's name" + userName: String + ): [MediaList] + mediaTrends( + "Filter by score" + averageScore: Int, + "Filter by score" + averageScore_greater: Int, + "Filter by score" + averageScore_lesser: Int, + "Filter by score" + averageScore_not: Int, + "Filter by date" + date: Int, + "Filter by date" + date_greater: Int, + "Filter by date" + date_lesser: Int, + "Filter by episode number" + episode: Int, + "Filter by episode number" + episode_greater: Int, + "Filter by episode number" + episode_lesser: Int, + "Filter by episode number" + episode_not: Int, + "Filter by the media id" + mediaId: Int, + "Filter by the media id" + mediaId_in: [Int], + "Filter by the media id" + mediaId_not: Int, + "Filter by the media id" + mediaId_not_in: [Int], + "Filter by popularity" + popularity: Int, + "Filter by popularity" + popularity_greater: Int, + "Filter by popularity" + popularity_lesser: Int, + "Filter by popularity" + popularity_not: Int, + "Filter to stats recorded while the media was releasing" + releasing: Boolean, + "The order the results will be returned in" + sort: [MediaTrendSort], + "Filter by trending amount" + trending: Int, + "Filter by trending amount" + trending_greater: Int, + "Filter by trending amount" + trending_lesser: Int, + "Filter by trending amount" + trending_not: Int + ): [MediaTrend] + notifications( + "Reset the unread notification count to 0 on load" + resetNotificationCount: Boolean, + "Filter by the type of notifications" + type: NotificationType, + "Filter by the type of notifications" + type_in: [NotificationType] + ): [NotificationUnion] + "The pagination information" + pageInfo: PageInfo + recommendations( + "Filter by recommendation id" + id: Int, + "Filter by media id" + mediaId: Int, + "Filter by media recommendation id" + mediaRecommendationId: Int, + "Filter by the media on the authenticated user's lists" + onList: Boolean, + "Filter by total rating of the recommendation" + rating: Int, + "Filter by total rating of the recommendation" + rating_greater: Int, + "Filter by total rating of the recommendation" + rating_lesser: Int, + "The order the results will be returned in" + sort: [RecommendationSort], + "Filter by user who created the recommendation" + userId: Int + ): [Recommendation] + reviews( + "Filter by Review id" + id: Int, + "Filter by media id" + mediaId: Int, + "Filter by media type" + mediaType: MediaType, + "The order the results will be returned in" + sort: [ReviewSort], + "Filter by user id" + userId: Int + ): [Review] + staff( + "Filter by the staff id" + id: Int, + "Filter by the staff id" + id_in: [Int], + "Filter by the staff id" + id_not: Int, + "Filter by the staff id" + id_not_in: [Int], + "Filter by staff by if its their birthday today" + isBirthday: Boolean, + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [StaffSort] + ): [Staff] + studios( + "Filter by the studio id" + id: Int, + "Filter by the studio id" + id_in: [Int], + "Filter by the studio id" + id_not: Int, + "Filter by the studio id" + id_not_in: [Int], + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [StudioSort] + ): [Studio] + threadComments( + "Filter by the comment id" + id: Int, + "The order the results will be returned in" + sort: [ThreadCommentSort], + "Filter by the thread id" + threadId: Int, + "Filter by the user id of the comment's creator" + userId: Int + ): [ThreadComment] + threads( + "Filter by thread category id" + categoryId: Int, + "Filter by the thread id" + id: Int, + "Filter by the thread id" + id_in: [Int], + "Filter by thread media id category" + mediaCategoryId: Int, + "Filter by the user id of the last user to comment on the thread" + replyUserId: Int, + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [ThreadSort], + "Filter by if the currently authenticated user's subscribed threads" + subscribed: Boolean, + "Filter by the user id of the thread's creator" + userId: Int + ): [Thread] + users( + "Filter by the user id" + id: Int, + "Filter to moderators only if true" + isModerator: Boolean, + "Filter by the name of the user" + name: String, + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [UserSort] + ): [User] } type PageInfo { - "The current page" - currentPage: Int - "If there is another page" - hasNextPage: Boolean - "The last page" - lastPage: Int - "The count on a page" - perPage: Int - "The total number of items" - total: Int + "The current page" + currentPage: Int + "If there is another page" + hasNextPage: Boolean + "The last page" + lastPage: Int + "The count on a page" + perPage: Int + "The total number of items. Note: This value is not guaranteed to be accurate, do not rely on this for logic" + total: Int } "Provides the parsed markdown as html" type ParsedMarkdown { - "The parsed markdown as html" - html: String + "The parsed markdown as html" + html: String } type Query { - "Activity query" - Activity( - "Filter by the time the activity was created" - createdAt: Int, - "Filter by the time the activity was created" - createdAt_greater: Int, - "Filter by the time the activity was created" - createdAt_lesser: Int, - "Filter activity to only activity with replies" - hasReplies: Boolean, - "Filter activity to only activity with replies or is of type text" - hasRepliesOrTypeText: Boolean, - "Filter by the activity id" - id: Int, - "Filter by the activity id" - id_in: [Int], - "Filter by the activity id" - id_not: Int, - "Filter by the activity id" - id_not_in: [Int], - "Filter activity to users who are being followed by the authenticated user" - isFollowing: Boolean, - "Filter by the associated media id of the activity" - mediaId: Int, - "Filter by the associated media id of the activity" - mediaId_in: [Int], - "Filter by the associated media id of the activity" - mediaId_not: Int, - "Filter by the associated media id of the activity" - mediaId_not_in: [Int], - "Filter by the id of the user who sent a message" - messengerId: Int, - "Filter by the id of the user who sent a message" - messengerId_in: [Int], - "Filter by the id of the user who sent a message" - messengerId_not: Int, - "Filter by the id of the user who sent a message" - messengerId_not_in: [Int], - "The order the results will be returned in" - sort: [ActivitySort], - "Filter by the type of activity" - type: ActivityType, - "Filter by the type of activity" - type_in: [ActivityType], - "Filter by the type of activity" - type_not: ActivityType, - "Filter by the type of activity" - type_not_in: [ActivityType], - "Filter by the owner user id" - userId: Int, - "Filter by the owner user id" - userId_in: [Int], - "Filter by the owner user id" - userId_not: Int, - "Filter by the owner user id" - userId_not_in: [Int] - ): ActivityUnion - "Activity reply query" - ActivityReply( - "Filter by the parent id" - activityId: Int, - "Filter by the reply id" - id: Int - ): ActivityReply - "Airing schedule query" - AiringSchedule( - "Filter by the time of airing" - airingAt: Int, - "Filter by the time of airing" - airingAt_greater: Int, - "Filter by the time of airing" - airingAt_lesser: Int, - "Filter by the airing episode number" - episode: Int, - "Filter by the airing episode number" - episode_greater: Int, - "Filter by the airing episode number" - episode_in: [Int], - "Filter by the airing episode number" - episode_lesser: Int, - "Filter by the airing episode number" - episode_not: Int, - "Filter by the airing episode number" - episode_not_in: [Int], - "Filter by the id of the airing schedule item" - id: Int, - "Filter by the id of the airing schedule item" - id_in: [Int], - "Filter by the id of the airing schedule item" - id_not: Int, - "Filter by the id of the airing schedule item" - id_not_in: [Int], - "Filter by the id of associated media" - mediaId: Int, - "Filter by the id of associated media" - mediaId_in: [Int], - "Filter by the id of associated media" - mediaId_not: Int, - "Filter by the id of associated media" - mediaId_not_in: [Int], - "Filter to episodes that haven't yet aired" - notYetAired: Boolean, - "The order the results will be returned in" - sort: [AiringSort] - ): AiringSchedule - AniChartUser: AniChartUser - "Character query" - Character( - "Filter by character id" - id: Int, - "Filter by character id" - id_in: [Int], - "Filter by character id" - id_not: Int, - "Filter by character id" - id_not_in: [Int], - "Filter by character by if its their birthday today" - isBirthday: Boolean, - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [CharacterSort] - ): Character - "Follow query" - Follower( - "The order the results will be returned in" - sort: [UserSort], - "User id of the follower/followed" - userId: Int! - ): User - "Follow query" - Following( - "The order the results will be returned in" - sort: [UserSort], - "User id of the follower/followed" - userId: Int! - ): User - "Collection of all the possible media genres" - GenreCollection: [String] - "Like query" - Like( - "The id of the likeable type" - likeableId: Int, - "The type of model the id applies to" - type: LikeableType - ): User - "Provide AniList markdown to be converted to html (Requires auth)" - Markdown( - "The markdown to be parsed to html" - markdown: String! - ): ParsedMarkdown - "Media query" - Media( - "Filter by the media's average score" - averageScore: Int, - "Filter by the media's average score" - averageScore_greater: Int, - "Filter by the media's average score" - averageScore_lesser: Int, - "Filter by the media's average score" - averageScore_not: Int, - "Filter by the media's chapter count" - chapters: Int, - "Filter by the media's chapter count" - chapters_greater: Int, - "Filter by the media's chapter count" - chapters_lesser: Int, - "Filter by the media's country of origin" - countryOfOrigin: CountryCode, - "Filter by the media's episode length" - duration: Int, - "Filter by the media's episode length" - duration_greater: Int, - "Filter by the media's episode length" - duration_lesser: Int, - "Filter by the end date of the media" - endDate: FuzzyDateInt, - "Filter by the end date of the media" - endDate_greater: FuzzyDateInt, - "Filter by the end date of the media" - endDate_lesser: FuzzyDateInt, - "Filter by the end date of the media" - endDate_like: String, - "Filter by amount of episodes the media has" - episodes: Int, - "Filter by amount of episodes the media has" - episodes_greater: Int, - "Filter by amount of episodes the media has" - episodes_lesser: Int, - "Filter by the media's format" - format: MediaFormat, - "Filter by the media's format" - format_in: [MediaFormat], - "Filter by the media's format" - format_not: MediaFormat, - "Filter by the media's format" - format_not_in: [MediaFormat], - "Filter by the media's genres" - genre: String, - "Filter by the media's genres" - genre_in: [String], - "Filter by the media's genres" - genre_not_in: [String], - "Filter by the media id" - id: Int, - "Filter by the media's MyAnimeList id" - idMal: Int, - "Filter by the media's MyAnimeList id" - idMal_in: [Int], - "Filter by the media's MyAnimeList id" - idMal_not: Int, - "Filter by the media's MyAnimeList id" - idMal_not_in: [Int], - "Filter by the media id" - id_in: [Int], - "Filter by the media id" - id_not: Int, - "Filter by the media id" - id_not_in: [Int], - "Filter by if the media's intended for 18+ adult audiences" - isAdult: Boolean, - "If the media is officially licensed or a self-published doujin release" - isLicensed: Boolean, - "Filter media by sites with a online streaming or reading license" - licensedBy: String, - "Filter media by sites with a online streaming or reading license" - licensedBy_in: [String], - "Only apply the tags filter argument to tags above this rank. Default: 18" - minimumTagRank: Int, - "Filter by the media on the authenticated user's lists" - onList: Boolean, - "Filter by the number of users with this media on their list" - popularity: Int, - "Filter by the number of users with this media on their list" - popularity_greater: Int, - "Filter by the number of users with this media on their list" - popularity_lesser: Int, - "Filter by the number of users with this media on their list" - popularity_not: Int, - "Filter by search query" - search: String, - "Filter by the season the media was released in" - season: MediaSeason, - "The year of the season (Winter 2017 would also include December 2016 releases). Requires season argument" - seasonYear: Int, - "The order the results will be returned in" - sort: [MediaSort], - "Filter by the source type of the media" - source: MediaSource, - "Filter by the source type of the media" - source_in: [MediaSource], - "Filter by the start date of the media" - startDate: FuzzyDateInt, - "Filter by the start date of the media" - startDate_greater: FuzzyDateInt, - "Filter by the start date of the media" - startDate_lesser: FuzzyDateInt, - "Filter by the start date of the media" - startDate_like: String, - "Filter by the media's current release status" - status: MediaStatus, - "Filter by the media's current release status" - status_in: [MediaStatus], - "Filter by the media's current release status" - status_not: MediaStatus, - "Filter by the media's current release status" - status_not_in: [MediaStatus], - "Filter by the media's tags" - tag: String, - "Filter by the media's tags with in a tag category" - tagCategory: String, - "Filter by the media's tags with in a tag category" - tagCategory_in: [String], - "Filter by the media's tags with in a tag category" - tagCategory_not_in: [String], - "Filter by the media's tags" - tag_in: [String], - "Filter by the media's tags" - tag_not_in: [String], - "Filter by the media's type" - type: MediaType, - "Filter by the media's volume count" - volumes: Int, - "Filter by the media's volume count" - volumes_greater: Int, - "Filter by the media's volume count" - volumes_lesser: Int - ): Media - "Media list query" - MediaList( - "Limit to only entries also on the auth user's list. Requires user id or name arguments." - compareWithAuthList: Boolean, - "Filter by the date the user completed the media" - completedAt: FuzzyDateInt, - "Filter by the date the user completed the media" - completedAt_greater: FuzzyDateInt, - "Filter by the date the user completed the media" - completedAt_lesser: FuzzyDateInt, - "Filter by the date the user completed the media" - completedAt_like: String, - "Filter by a list entry's id" - id: Int, - "Filter list entries to users who are being followed by the authenticated user" - isFollowing: Boolean, - "Filter by the media id of the list entry" - mediaId: Int, - "Filter by the media id of the list entry" - mediaId_in: [Int], - "Filter by the media id of the list entry" - mediaId_not_in: [Int], - "Filter by note words and #tags" - notes: String, - "Filter by note words and #tags" - notes_like: String, - "The order the results will be returned in" - sort: [MediaListSort], - "Filter by the date the user started the media" - startedAt: FuzzyDateInt, - "Filter by the date the user started the media" - startedAt_greater: FuzzyDateInt, - "Filter by the date the user started the media" - startedAt_lesser: FuzzyDateInt, - "Filter by the date the user started the media" - startedAt_like: String, - "Filter by the watching/reading status" - status: MediaListStatus, - "Filter by the watching/reading status" - status_in: [MediaListStatus], - "Filter by the watching/reading status" - status_not: MediaListStatus, - "Filter by the watching/reading status" - status_not_in: [MediaListStatus], - "Filter by the list entries media type" - type: MediaType, - "Filter by a user's id" - userId: Int, - "Filter by a user's id" - userId_in: [Int], - "Filter by a user's name" - userName: String - ): MediaList - "Media list collection query, provides list pre-grouped by status & custom lists. User ID and Media Type arguments required." - MediaListCollection( - "Which chunk of list entries to load" - chunk: Int, - "Filter by the date the user completed the media" - completedAt: FuzzyDateInt, - "Filter by the date the user completed the media" - completedAt_greater: FuzzyDateInt, - "Filter by the date the user completed the media" - completedAt_lesser: FuzzyDateInt, - "Filter by the date the user completed the media" - completedAt_like: String, - "Always return completed list entries in one group, overriding the user's split completed option." - forceSingleCompletedList: Boolean, - "Filter by note words and #tags" - notes: String, - "Filter by note words and #tags" - notes_like: String, - "The amount of entries per chunk, max 500" - perChunk: Int, - "The order the results will be returned in" - sort: [MediaListSort], - "Filter by the date the user started the media" - startedAt: FuzzyDateInt, - "Filter by the date the user started the media" - startedAt_greater: FuzzyDateInt, - "Filter by the date the user started the media" - startedAt_lesser: FuzzyDateInt, - "Filter by the date the user started the media" - startedAt_like: String, - "Filter by the watching/reading status" - status: MediaListStatus, - "Filter by the watching/reading status" - status_in: [MediaListStatus], - "Filter by the watching/reading status" - status_not: MediaListStatus, - "Filter by the watching/reading status" - status_not_in: [MediaListStatus], - "Filter by the list entries media type" - type: MediaType, - "Filter by a user's id" - userId: Int, - "Filter by a user's name" - userName: String - ): MediaListCollection - "Collection of all the possible media tags" - MediaTagCollection( - "Mod Only" - status: Int - ): [MediaTag] - "Media Trend query" - MediaTrend( - "Filter by score" - averageScore: Int, - "Filter by score" - averageScore_greater: Int, - "Filter by score" - averageScore_lesser: Int, - "Filter by score" - averageScore_not: Int, - "Filter by date" - date: Int, - "Filter by date" - date_greater: Int, - "Filter by date" - date_lesser: Int, - "Filter by episode number" - episode: Int, - "Filter by episode number" - episode_greater: Int, - "Filter by episode number" - episode_lesser: Int, - "Filter by episode number" - episode_not: Int, - "Filter by the media id" - mediaId: Int, - "Filter by the media id" - mediaId_in: [Int], - "Filter by the media id" - mediaId_not: Int, - "Filter by the media id" - mediaId_not_in: [Int], - "Filter by popularity" - popularity: Int, - "Filter by popularity" - popularity_greater: Int, - "Filter by popularity" - popularity_lesser: Int, - "Filter by popularity" - popularity_not: Int, - "Filter to stats recorded while the media was releasing" - releasing: Boolean, - "The order the results will be returned in" - sort: [MediaTrendSort], - "Filter by trending amount" - trending: Int, - "Filter by trending amount" - trending_greater: Int, - "Filter by trending amount" - trending_lesser: Int, - "Filter by trending amount" - trending_not: Int - ): MediaTrend - "Notification query" - Notification( - "Reset the unread notification count to 0 on load" - resetNotificationCount: Boolean, - "Filter by the type of notifications" - type: NotificationType, - "Filter by the type of notifications" - type_in: [NotificationType] - ): NotificationUnion - Page( - "The page number" - page: Int, - "The amount of entries per page, max 50" - perPage: Int - ): Page - "Recommendation query" - Recommendation( - "Filter by recommendation id" - id: Int, - "Filter by media id" - mediaId: Int, - "Filter by media recommendation id" - mediaRecommendationId: Int, - "Filter by the media on the authenticated user's lists" - onList: Boolean, - "Filter by total rating of the recommendation" - rating: Int, - "Filter by total rating of the recommendation" - rating_greater: Int, - "Filter by total rating of the recommendation" - rating_lesser: Int, - "The order the results will be returned in" - sort: [RecommendationSort], - "Filter by user who created the recommendation" - userId: Int - ): Recommendation - "Review query" - Review( - "Filter by Review id" - id: Int, - "Filter by media id" - mediaId: Int, - "Filter by media type" - mediaType: MediaType, - "The order the results will be returned in" - sort: [ReviewSort], - "Filter by user id" - userId: Int - ): Review - "Site statistics query" - SiteStatistics: SiteStatistics - "Staff query" - Staff( - "Filter by the staff id" - id: Int, - "Filter by the staff id" - id_in: [Int], - "Filter by the staff id" - id_not: Int, - "Filter by the staff id" - id_not_in: [Int], - "Filter by staff by if its their birthday today" - isBirthday: Boolean, - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [StaffSort] - ): Staff - "Studio query" - Studio( - "Filter by the studio id" - id: Int, - "Filter by the studio id" - id_in: [Int], - "Filter by the studio id" - id_not: Int, - "Filter by the studio id" - id_not_in: [Int], - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [StudioSort] - ): Studio - "Thread query" - Thread( - "Filter by thread category id" - categoryId: Int, - "Filter by the thread id" - id: Int, - "Filter by the thread id" - id_in: [Int], - "Filter by thread media id category" - mediaCategoryId: Int, - "Filter by the user id of the last user to comment on the thread" - replyUserId: Int, - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [ThreadSort], - "Filter by if the currently authenticated user's subscribed threads" - subscribed: Boolean, - "Filter by the user id of the thread's creator" - userId: Int - ): Thread - "Comment query" - ThreadComment( - "Filter by the comment id" - id: Int, - "The order the results will be returned in" - sort: [ThreadCommentSort], - "Filter by the thread id" - threadId: Int, - "Filter by the user id of the comment's creator" - userId: Int - ): [ThreadComment] - "User query" - User( - "Filter by the user id" - id: Int, - "Filter to moderators only if true" - isModerator: Boolean, - "Filter by the name of the user" - name: String, - "Filter by search query" - search: String, - "The order the results will be returned in" - sort: [UserSort] - ): User - "Get the currently authenticated user" - Viewer: User + "Activity query" + Activity( + "Filter by the time the activity was created" + createdAt: Int, + "Filter by the time the activity was created" + createdAt_greater: Int, + "Filter by the time the activity was created" + createdAt_lesser: Int, + "Filter activity to only activity with replies" + hasReplies: Boolean, + "Filter activity to only activity with replies or is of type text" + hasRepliesOrTypeText: Boolean, + "Filter by the activity id" + id: Int, + "Filter by the activity id" + id_in: [Int], + "Filter by the activity id" + id_not: Int, + "Filter by the activity id" + id_not_in: [Int], + "Filter activity to users who are being followed by the authenticated user" + isFollowing: Boolean, + "Filter by the associated media id of the activity" + mediaId: Int, + "Filter by the associated media id of the activity" + mediaId_in: [Int], + "Filter by the associated media id of the activity" + mediaId_not: Int, + "Filter by the associated media id of the activity" + mediaId_not_in: [Int], + "Filter by the id of the user who sent a message" + messengerId: Int, + "Filter by the id of the user who sent a message" + messengerId_in: [Int], + "Filter by the id of the user who sent a message" + messengerId_not: Int, + "Filter by the id of the user who sent a message" + messengerId_not_in: [Int], + "The order the results will be returned in" + sort: [ActivitySort], + "Filter by the type of activity" + type: ActivityType, + "Filter by the type of activity" + type_in: [ActivityType], + "Filter by the type of activity" + type_not: ActivityType, + "Filter by the type of activity" + type_not_in: [ActivityType], + "Filter by the owner user id" + userId: Int, + "Filter by the owner user id" + userId_in: [Int], + "Filter by the owner user id" + userId_not: Int, + "Filter by the owner user id" + userId_not_in: [Int] + ): ActivityUnion + "Activity reply query" + ActivityReply( + "Filter by the parent id" + activityId: Int, + "Filter by the reply id" + id: Int + ): ActivityReply + "Airing schedule query" + AiringSchedule( + "Filter by the time of airing" + airingAt: Int, + "Filter by the time of airing" + airingAt_greater: Int, + "Filter by the time of airing" + airingAt_lesser: Int, + "Filter by the airing episode number" + episode: Int, + "Filter by the airing episode number" + episode_greater: Int, + "Filter by the airing episode number" + episode_in: [Int], + "Filter by the airing episode number" + episode_lesser: Int, + "Filter by the airing episode number" + episode_not: Int, + "Filter by the airing episode number" + episode_not_in: [Int], + "Filter by the id of the airing schedule item" + id: Int, + "Filter by the id of the airing schedule item" + id_in: [Int], + "Filter by the id of the airing schedule item" + id_not: Int, + "Filter by the id of the airing schedule item" + id_not_in: [Int], + "Filter by the id of associated media" + mediaId: Int, + "Filter by the id of associated media" + mediaId_in: [Int], + "Filter by the id of associated media" + mediaId_not: Int, + "Filter by the id of associated media" + mediaId_not_in: [Int], + "Filter to episodes that haven't yet aired" + notYetAired: Boolean, + "The order the results will be returned in" + sort: [AiringSort] + ): AiringSchedule + AniChartUser: AniChartUser + "Character query" + Character( + "Filter by character id" + id: Int, + "Filter by character id" + id_in: [Int], + "Filter by character id" + id_not: Int, + "Filter by character id" + id_not_in: [Int], + "Filter by character by if its their birthday today" + isBirthday: Boolean, + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [CharacterSort] + ): Character + "ExternalLinkSource collection query" + ExternalLinkSourceCollection( + "Filter by the link id" + id: Int, + mediaType: ExternalLinkMediaType, + type: ExternalLinkType + ): [MediaExternalLink] + "Follow query" + Follower( + "The order the results will be returned in" + sort: [UserSort], + "User id of the follower/followed" + userId: Int! + ): User + "Follow query" + Following( + "The order the results will be returned in" + sort: [UserSort], + "User id of the follower/followed" + userId: Int! + ): User + "Collection of all the possible media genres" + GenreCollection: [String] + "Like query" + Like( + "The id of the likeable type" + likeableId: Int, + "The type of model the id applies to" + type: LikeableType + ): User + "Provide AniList markdown to be converted to html (Requires auth)" + Markdown( + "The markdown to be parsed to html" + markdown: String! + ): ParsedMarkdown + "Media query" + Media( + "Filter by the media's average score" + averageScore: Int, + "Filter by the media's average score" + averageScore_greater: Int, + "Filter by the media's average score" + averageScore_lesser: Int, + "Filter by the media's average score" + averageScore_not: Int, + "Filter by the media's chapter count" + chapters: Int, + "Filter by the media's chapter count" + chapters_greater: Int, + "Filter by the media's chapter count" + chapters_lesser: Int, + "Filter by the media's country of origin" + countryOfOrigin: CountryCode, + "Filter by the media's episode length" + duration: Int, + "Filter by the media's episode length" + duration_greater: Int, + "Filter by the media's episode length" + duration_lesser: Int, + "Filter by the end date of the media" + endDate: FuzzyDateInt, + "Filter by the end date of the media" + endDate_greater: FuzzyDateInt, + "Filter by the end date of the media" + endDate_lesser: FuzzyDateInt, + "Filter by the end date of the media" + endDate_like: String, + "Filter by amount of episodes the media has" + episodes: Int, + "Filter by amount of episodes the media has" + episodes_greater: Int, + "Filter by amount of episodes the media has" + episodes_lesser: Int, + "Filter by the media's format" + format: MediaFormat, + "Filter by the media's format" + format_in: [MediaFormat], + "Filter by the media's format" + format_not: MediaFormat, + "Filter by the media's format" + format_not_in: [MediaFormat], + "Filter by the media's genres" + genre: String, + "Filter by the media's genres" + genre_in: [String], + "Filter by the media's genres" + genre_not_in: [String], + "Filter by the media id" + id: Int, + "Filter by the media's MyAnimeList id" + idMal: Int, + "Filter by the media's MyAnimeList id" + idMal_in: [Int], + "Filter by the media's MyAnimeList id" + idMal_not: Int, + "Filter by the media's MyAnimeList id" + idMal_not_in: [Int], + "Filter by the media id" + id_in: [Int], + "Filter by the media id" + id_not: Int, + "Filter by the media id" + id_not_in: [Int], + "Filter by if the media's intended for 18+ adult audiences" + isAdult: Boolean, + "If the media is officially licensed or a self-published doujin release" + isLicensed: Boolean, + "Filter media by sites name with a online streaming or reading license" + licensedBy: String, + "Filter media by sites id with a online streaming or reading license" + licensedById: Int, + "Filter media by sites id with a online streaming or reading license" + licensedById_in: [Int], + "Filter media by sites name with a online streaming or reading license" + licensedBy_in: [String], + "Only apply the tags filter argument to tags above this rank. Default: 18" + minimumTagRank: Int, + "Filter by the media on the authenticated user's lists" + onList: Boolean, + "Filter by the number of users with this media on their list" + popularity: Int, + "Filter by the number of users with this media on their list" + popularity_greater: Int, + "Filter by the number of users with this media on their list" + popularity_lesser: Int, + "Filter by the number of users with this media on their list" + popularity_not: Int, + "Filter by search query" + search: String, + "Filter by the season the media was released in" + season: MediaSeason, + "The year of the season (Winter 2017 would also include December 2016 releases). Requires season argument" + seasonYear: Int, + "The order the results will be returned in" + sort: [MediaSort], + "Filter by the source type of the media" + source: MediaSource, + "Filter by the source type of the media" + source_in: [MediaSource], + "Filter by the start date of the media" + startDate: FuzzyDateInt, + "Filter by the start date of the media" + startDate_greater: FuzzyDateInt, + "Filter by the start date of the media" + startDate_lesser: FuzzyDateInt, + "Filter by the start date of the media" + startDate_like: String, + "Filter by the media's current release status" + status: MediaStatus, + "Filter by the media's current release status" + status_in: [MediaStatus], + "Filter by the media's current release status" + status_not: MediaStatus, + "Filter by the media's current release status" + status_not_in: [MediaStatus], + "Filter by the media's tags" + tag: String, + "Filter by the media's tags with in a tag category" + tagCategory: String, + "Filter by the media's tags with in a tag category" + tagCategory_in: [String], + "Filter by the media's tags with in a tag category" + tagCategory_not_in: [String], + "Filter by the media's tags" + tag_in: [String], + "Filter by the media's tags" + tag_not_in: [String], + "Filter by the media's type" + type: MediaType, + "Filter by the media's volume count" + volumes: Int, + "Filter by the media's volume count" + volumes_greater: Int, + "Filter by the media's volume count" + volumes_lesser: Int + ): Media + "Media list query" + MediaList( + "Limit to only entries also on the auth user's list. Requires user id or name arguments." + compareWithAuthList: Boolean, + "Filter by the date the user completed the media" + completedAt: FuzzyDateInt, + "Filter by the date the user completed the media" + completedAt_greater: FuzzyDateInt, + "Filter by the date the user completed the media" + completedAt_lesser: FuzzyDateInt, + "Filter by the date the user completed the media" + completedAt_like: String, + "Filter by a list entry's id" + id: Int, + "Filter list entries to users who are being followed by the authenticated user" + isFollowing: Boolean, + "Filter by the media id of the list entry" + mediaId: Int, + "Filter by the media id of the list entry" + mediaId_in: [Int], + "Filter by the media id of the list entry" + mediaId_not_in: [Int], + "Filter by note words and #tags" + notes: String, + "Filter by note words and #tags" + notes_like: String, + "The order the results will be returned in" + sort: [MediaListSort], + "Filter by the date the user started the media" + startedAt: FuzzyDateInt, + "Filter by the date the user started the media" + startedAt_greater: FuzzyDateInt, + "Filter by the date the user started the media" + startedAt_lesser: FuzzyDateInt, + "Filter by the date the user started the media" + startedAt_like: String, + "Filter by the watching/reading status" + status: MediaListStatus, + "Filter by the watching/reading status" + status_in: [MediaListStatus], + "Filter by the watching/reading status" + status_not: MediaListStatus, + "Filter by the watching/reading status" + status_not_in: [MediaListStatus], + "Filter by the list entries media type" + type: MediaType, + "Filter by a user's id" + userId: Int, + "Filter by a user's id" + userId_in: [Int], + "Filter by a user's name" + userName: String + ): MediaList + "Media list collection query, provides list pre-grouped by status & custom lists. User ID and Media Type arguments required." + MediaListCollection( + "Which chunk of list entries to load" + chunk: Int, + "Filter by the date the user completed the media" + completedAt: FuzzyDateInt, + "Filter by the date the user completed the media" + completedAt_greater: FuzzyDateInt, + "Filter by the date the user completed the media" + completedAt_lesser: FuzzyDateInt, + "Filter by the date the user completed the media" + completedAt_like: String, + "Always return completed list entries in one group, overriding the user's split completed option." + forceSingleCompletedList: Boolean, + "Filter by note words and #tags" + notes: String, + "Filter by note words and #tags" + notes_like: String, + "The amount of entries per chunk, max 500" + perChunk: Int, + "The order the results will be returned in" + sort: [MediaListSort], + "Filter by the date the user started the media" + startedAt: FuzzyDateInt, + "Filter by the date the user started the media" + startedAt_greater: FuzzyDateInt, + "Filter by the date the user started the media" + startedAt_lesser: FuzzyDateInt, + "Filter by the date the user started the media" + startedAt_like: String, + "Filter by the watching/reading status" + status: MediaListStatus, + "Filter by the watching/reading status" + status_in: [MediaListStatus], + "Filter by the watching/reading status" + status_not: MediaListStatus, + "Filter by the watching/reading status" + status_not_in: [MediaListStatus], + "Filter by the list entries media type" + type: MediaType, + "Filter by a user's id" + userId: Int, + "Filter by a user's name" + userName: String + ): MediaListCollection + "Collection of all the possible media tags" + MediaTagCollection( + "Mod Only" + status: Int + ): [MediaTag] + "Media Trend query" + MediaTrend( + "Filter by score" + averageScore: Int, + "Filter by score" + averageScore_greater: Int, + "Filter by score" + averageScore_lesser: Int, + "Filter by score" + averageScore_not: Int, + "Filter by date" + date: Int, + "Filter by date" + date_greater: Int, + "Filter by date" + date_lesser: Int, + "Filter by episode number" + episode: Int, + "Filter by episode number" + episode_greater: Int, + "Filter by episode number" + episode_lesser: Int, + "Filter by episode number" + episode_not: Int, + "Filter by the media id" + mediaId: Int, + "Filter by the media id" + mediaId_in: [Int], + "Filter by the media id" + mediaId_not: Int, + "Filter by the media id" + mediaId_not_in: [Int], + "Filter by popularity" + popularity: Int, + "Filter by popularity" + popularity_greater: Int, + "Filter by popularity" + popularity_lesser: Int, + "Filter by popularity" + popularity_not: Int, + "Filter to stats recorded while the media was releasing" + releasing: Boolean, + "The order the results will be returned in" + sort: [MediaTrendSort], + "Filter by trending amount" + trending: Int, + "Filter by trending amount" + trending_greater: Int, + "Filter by trending amount" + trending_lesser: Int, + "Filter by trending amount" + trending_not: Int + ): MediaTrend + "Notification query" + Notification( + "Reset the unread notification count to 0 on load" + resetNotificationCount: Boolean, + "Filter by the type of notifications" + type: NotificationType, + "Filter by the type of notifications" + type_in: [NotificationType] + ): NotificationUnion + Page( + "The page number" + page: Int, + "The amount of entries per page, max 50" + perPage: Int + ): Page + "Recommendation query" + Recommendation( + "Filter by recommendation id" + id: Int, + "Filter by media id" + mediaId: Int, + "Filter by media recommendation id" + mediaRecommendationId: Int, + "Filter by the media on the authenticated user's lists" + onList: Boolean, + "Filter by total rating of the recommendation" + rating: Int, + "Filter by total rating of the recommendation" + rating_greater: Int, + "Filter by total rating of the recommendation" + rating_lesser: Int, + "The order the results will be returned in" + sort: [RecommendationSort], + "Filter by user who created the recommendation" + userId: Int + ): Recommendation + "Review query" + Review( + "Filter by Review id" + id: Int, + "Filter by media id" + mediaId: Int, + "Filter by media type" + mediaType: MediaType, + "The order the results will be returned in" + sort: [ReviewSort], + "Filter by user id" + userId: Int + ): Review + "Site statistics query" + SiteStatistics: SiteStatistics + "Staff query" + Staff( + "Filter by the staff id" + id: Int, + "Filter by the staff id" + id_in: [Int], + "Filter by the staff id" + id_not: Int, + "Filter by the staff id" + id_not_in: [Int], + "Filter by staff by if its their birthday today" + isBirthday: Boolean, + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [StaffSort] + ): Staff + "Studio query" + Studio( + "Filter by the studio id" + id: Int, + "Filter by the studio id" + id_in: [Int], + "Filter by the studio id" + id_not: Int, + "Filter by the studio id" + id_not_in: [Int], + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [StudioSort] + ): Studio + "Thread query" + Thread( + "Filter by thread category id" + categoryId: Int, + "Filter by the thread id" + id: Int, + "Filter by the thread id" + id_in: [Int], + "Filter by thread media id category" + mediaCategoryId: Int, + "Filter by the user id of the last user to comment on the thread" + replyUserId: Int, + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [ThreadSort], + "Filter by if the currently authenticated user's subscribed threads" + subscribed: Boolean, + "Filter by the user id of the thread's creator" + userId: Int + ): Thread + "Comment query" + ThreadComment( + "Filter by the comment id" + id: Int, + "The order the results will be returned in" + sort: [ThreadCommentSort], + "Filter by the thread id" + threadId: Int, + "Filter by the user id of the comment's creator" + userId: Int + ): [ThreadComment] + "User query" + User( + "Filter by the user id" + id: Int, + "Filter to moderators only if true" + isModerator: Boolean, + "Filter by the name of the user" + name: String, + "Filter by search query" + search: String, + "The order the results will be returned in" + sort: [UserSort] + ): User + "Get the currently authenticated user" + Viewer: User } "Media recommendation" type Recommendation { - "The id of the recommendation" - id: Int! - "The media the recommendation is from" - media: Media - "The recommended media" - mediaRecommendation: Media - "Users rating of the recommendation" - rating: Int - "The user that first created the recommendation" - user: User - "The rating of the recommendation by currently authenticated user" - userRating: RecommendationRating + "The id of the recommendation" + id: Int! + "The media the recommendation is from" + media: Media + "The recommended media" + mediaRecommendation: Media + "Users rating of the recommendation" + rating: Int + "The user that first created the recommendation" + user: User + "The rating of the recommendation by currently authenticated user" + userRating: RecommendationRating } type RecommendationConnection { - edges: [RecommendationEdge] - nodes: [Recommendation] - "The pagination information" - pageInfo: PageInfo + edges: [RecommendationEdge] + nodes: [Recommendation] + "The pagination information" + pageInfo: PageInfo } "Recommendation connection edge" type RecommendationEdge { - node: Recommendation + node: Recommendation } "Notification for when new media is added to the site" type RelatedMediaAdditionNotification { - "The notification context text" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The associated media of the airing schedule" - media: Media - "The id of the new media" - mediaId: Int! - "The type of notification" - type: NotificationType + "The notification context text" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The associated media of the airing schedule" + media: Media + "The id of the new media" + mediaId: Int! + "The type of notification" + type: NotificationType } type Report { - cleared: Boolean - "When the entry data was created" - createdAt: Int - id: Int! - reason: String - reported: User - reporter: User + cleared: Boolean + "When the entry data was created" + createdAt: Int + id: Int! + reason: String + reported: User + reporter: User } "A Review that features in an anime or manga" type Review { - "The main review body text" - body( - "Return the string in pre-parsed html instead of markdown" - asHtml: Boolean - ): String - "The time of the thread creation" - createdAt: Int! - "The id of the review" - id: Int! - "The media the review is of" - media: Media - "The id of the review's media" - mediaId: Int! - "For which type of media the review is for" - mediaType: MediaType - "If the review is not yet publicly published and is only viewable by creator" - private: Boolean - "The total user rating of the review" - rating: Int - "The amount of user ratings of the review" - ratingAmount: Int - "The review score of the media" - score: Int - "The url for the review page on the AniList website" - siteUrl: String - "A short summary of the review" - summary: String - "The time of the thread last update" - updatedAt: Int! - "The creator of the review" - user: User - "The id of the review's creator" - userId: Int! - "The rating of the review by currently authenticated user" - userRating: ReviewRating + "The main review body text" + body( + "Return the string in pre-parsed html instead of markdown" + asHtml: Boolean + ): String + "The time of the thread creation" + createdAt: Int! + "The id of the review" + id: Int! + "The media the review is of" + media: Media + "The id of the review's media" + mediaId: Int! + "For which type of media the review is for" + mediaType: MediaType + "If the review is not yet publicly published and is only viewable by creator" + private: Boolean + "The total user rating of the review" + rating: Int + "The amount of user ratings of the review" + ratingAmount: Int + "The review score of the media" + score: Int + "The url for the review page on the AniList website" + siteUrl: String + "A short summary of the review" + summary: String + "The time of the thread last update" + updatedAt: Int! + "The creator of the review" + user: User + "The id of the review's creator" + userId: Int! + "The rating of the review by currently authenticated user" + userRating: ReviewRating } type ReviewConnection { - edges: [ReviewEdge] - nodes: [Review] - "The pagination information" - pageInfo: PageInfo + edges: [ReviewEdge] + nodes: [Review] + "The pagination information" + pageInfo: PageInfo } "Review connection edge" type ReviewEdge { - node: Review + node: Review } "Feed of mod edit activity" type RevisionHistory { - "The action taken on the objects" - action: RevisionHistoryAction - "A JSON object of the fields that changed" - changes: Json - "The character the mod feed entry references" - character: Character - "When the mod feed entry was created" - createdAt: Int - "The id of the media" - id: Int! - "The media the mod feed entry references" - media: Media - "The staff member the mod feed entry references" - staff: Staff - "The studio the mod feed entry references" - studio: Studio - "The user who made the edit to the object" - user: User + "The action taken on the objects" + action: RevisionHistoryAction + "A JSON object of the fields that changed" + changes: Json + "The character the mod feed entry references" + character: Character + "When the mod feed entry was created" + createdAt: Int + "The external link source the mod feed entry references" + externalLink: MediaExternalLink + "The id of the media" + id: Int! + "The media the mod feed entry references" + media: Media + "The staff member the mod feed entry references" + staff: Staff + "The studio the mod feed entry references" + studio: Studio + "The user who made the edit to the object" + user: User } "A user's list score distribution." type ScoreDistribution { - "The amount of list entries with this score" - amount: Int - score: Int + "The amount of list entries with this score" + amount: Int + score: Int } type SiteStatistics { - anime( - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [SiteTrendSort] - ): SiteTrendConnection - characters( - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [SiteTrendSort] - ): SiteTrendConnection - manga( - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [SiteTrendSort] - ): SiteTrendConnection - reviews( - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [SiteTrendSort] - ): SiteTrendConnection - staff( - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [SiteTrendSort] - ): SiteTrendConnection - studios( - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [SiteTrendSort] - ): SiteTrendConnection - users( - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [SiteTrendSort] - ): SiteTrendConnection + anime( + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [SiteTrendSort] + ): SiteTrendConnection + characters( + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [SiteTrendSort] + ): SiteTrendConnection + manga( + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [SiteTrendSort] + ): SiteTrendConnection + reviews( + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [SiteTrendSort] + ): SiteTrendConnection + staff( + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [SiteTrendSort] + ): SiteTrendConnection + studios( + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [SiteTrendSort] + ): SiteTrendConnection + users( + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [SiteTrendSort] + ): SiteTrendConnection } "Daily site statistics" type SiteTrend { - "The change from yesterday" - change: Int! - count: Int! - "The day the data was recorded (timestamp)" - date: Int! + "The change from yesterday" + change: Int! + count: Int! + "The day the data was recorded (timestamp)" + date: Int! } type SiteTrendConnection { - edges: [SiteTrendEdge] - nodes: [SiteTrend] - "The pagination information" - pageInfo: PageInfo + edges: [SiteTrendEdge] + nodes: [SiteTrend] + "The pagination information" + pageInfo: PageInfo } "Site trend connection edge" type SiteTrendEdge { - node: SiteTrend + node: SiteTrend } "Voice actors or production staff" type Staff { - "The person's age in years" - age: Int - "The persons blood type" - bloodType: String - "Media the actor voiced characters in. (Same data as characters with media as node instead of characters)" - characterMedia( - onList: Boolean, - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [MediaSort] - ): MediaConnection - "Characters voiced by the actor" - characters( - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [CharacterSort] - ): CharacterConnection - dateOfBirth: FuzzyDate - dateOfDeath: FuzzyDate - "A general description of the staff member" - description( - "Return the string in pre-parsed html instead of markdown" - asHtml: Boolean - ): String - "The amount of user's who have favourited the staff member" - favourites: Int - "The staff's gender. Usually Male, Female, or Non-binary but can be any string." - gender: String - "The persons birthplace or hometown" - homeTown: String - "The id of the staff member" - id: Int! - "The staff images" - image: StaffImage - "If the staff member is marked as favourite by the currently authenticated user" - isFavourite: Boolean! - "If the staff member is blocked from being added to favourites" - isFavouriteBlocked: Boolean! - "The primary language the staff member dub's in" - language: StaffLanguage @deprecated(reason: "Replaced with languageV2") - "The primary language of the staff member. Current values: Japanese, English, Korean, Italian, Spanish, Portuguese, French, German, Hebrew, Hungarian, Chinese, Arabic, Filipino, Catalan" - languageV2: String - "Notes for site moderators" - modNotes: String - "The names of the staff member" - name: StaffName - "The person's primary occupations" - primaryOccupations: [String] - "The url for the staff page on the AniList website" - siteUrl: String - "Staff member that the submission is referencing" - staff: Staff - "Media where the staff member has a production role" - staffMedia( - onList: Boolean, - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - sort: [MediaSort], - type: MediaType - ): MediaConnection - "Inner details of submission status" - submissionNotes: String - "Status of the submission" - submissionStatus: Int - "Submitter for the submission" - submitter: User - updatedAt: Int @deprecated(reason: "No data available") - "[startYear, endYear] (If the 2nd value is not present staff is still active)" - yearsActive: [Int] + "The person's age in years" + age: Int + "The persons blood type" + bloodType: String + "Media the actor voiced characters in. (Same data as characters with media as node instead of characters)" + characterMedia( + onList: Boolean, + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [MediaSort] + ): MediaConnection + "Characters voiced by the actor" + characters( + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [CharacterSort] + ): CharacterConnection + dateOfBirth: FuzzyDate + dateOfDeath: FuzzyDate + "A general description of the staff member" + description( + "Return the string in pre-parsed html instead of markdown" + asHtml: Boolean + ): String + "The amount of user's who have favourited the staff member" + favourites: Int + "The staff's gender. Usually Male, Female, or Non-binary but can be any string." + gender: String + "The persons birthplace or hometown" + homeTown: String + "The id of the staff member" + id: Int! + "The staff images" + image: StaffImage + "If the staff member is marked as favourite by the currently authenticated user" + isFavourite: Boolean! + "If the staff member is blocked from being added to favourites" + isFavouriteBlocked: Boolean! + "The primary language the staff member dub's in" + language: StaffLanguage @deprecated(reason: "Replaced with languageV2") + "The primary language of the staff member. Current values: Japanese, English, Korean, Italian, Spanish, Portuguese, French, German, Hebrew, Hungarian, Chinese, Arabic, Filipino, Catalan, Finnish, Turkish, Dutch, Swedish, Thai, Tagalog, Malaysian, Indonesian, Vietnamese, Nepali, Hindi, Urdu" + languageV2: String + "Notes for site moderators" + modNotes: String + "The names of the staff member" + name: StaffName + "The person's primary occupations" + primaryOccupations: [String] + "The url for the staff page on the AniList website" + siteUrl: String + "Staff member that the submission is referencing" + staff: Staff + "Media where the staff member has a production role" + staffMedia( + onList: Boolean, + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + sort: [MediaSort], + type: MediaType + ): MediaConnection + "Inner details of submission status" + submissionNotes: String + "Status of the submission" + submissionStatus: Int + "Submitter for the submission" + submitter: User + updatedAt: Int @deprecated(reason: "No data available") + "[startYear, endYear] (If the 2nd value is not present staff is still active)" + yearsActive: [Int] } type StaffConnection { - edges: [StaffEdge] - nodes: [Staff] - "The pagination information" - pageInfo: PageInfo + edges: [StaffEdge] + nodes: [Staff] + "The pagination information" + pageInfo: PageInfo } "Staff connection edge" type StaffEdge { - "The order the staff should be displayed from the users favourites" - favouriteOrder: Int - "The id of the connection" - id: Int - node: Staff - "The role of the staff member in the production of the media" - role: String + "The order the staff should be displayed from the users favourites" + favouriteOrder: Int + "The id of the connection" + id: Int + node: Staff + "The role of the staff member in the production of the media" + role: String } type StaffImage { - "The person's image of media at its largest size" - large: String - "The person's image of media at medium size" - medium: String + "The person's image of media at its largest size" + large: String + "The person's image of media at medium size" + medium: String } "The names of the staff member" type StaffName { - "Other names the staff member might be referred to as (pen names)" - alternative: [String] - "The person's given name" - first: String - "The person's first and last name" - full: String - "The person's surname" - last: String - "The person's middle name" - middle: String - "The person's full name in their native language" - native: String - "The currently authenticated users preferred name language. Default romaji for non-authenticated" - userPreferred: String + "Other names the staff member might be referred to as (pen names)" + alternative: [String] + "The person's given name" + first: String + "The person's first and last name" + full: String + "The person's surname" + last: String + "The person's middle name" + middle: String + "The person's full name in their native language" + native: String + "The currently authenticated users preferred name language. Default romaji for non-authenticated" + userPreferred: String } "Voice actor role for a character" type StaffRoleType { - "Used for grouping roles where multiple dubs exist for the same language. Either dubbing company name or language variant." - dubGroup: String - "Notes regarding the VA's role for the character" - roleNotes: String - "The voice actors of the character" - voiceActor: Staff + "Used for grouping roles where multiple dubs exist for the same language. Either dubbing company name or language variant." + dubGroup: String + "Notes regarding the VA's role for the character" + roleNotes: String + "The voice actors of the character" + voiceActor: Staff } "User's staff statistics" type StaffStats { - amount: Int - meanScore: Int - staff: Staff - "The amount of time in minutes the staff member has been watched by the user" - timeWatched: Int + amount: Int + meanScore: Int + staff: Staff + "The amount of time in minutes the staff member has been watched by the user" + timeWatched: Int } "A submission for a staff that features in an anime or manga" type StaffSubmission { - "Data Mod assigned to handle the submission" - assignee: User - createdAt: Int - "The id of the submission" - id: Int! - "Whether the submission is locked" - locked: Boolean - "Inner details of submission status" - notes: String - source: String - "Staff that the submission is referencing" - staff: Staff - "Status of the submission" - status: SubmissionStatus - "The staff submission changes" - submission: Staff - "Submitter for the submission" - submitter: User + "Data Mod assigned to handle the submission" + assignee: User + createdAt: Int + "The id of the submission" + id: Int! + "Whether the submission is locked" + locked: Boolean + "Inner details of submission status" + notes: String + source: String + "Staff that the submission is referencing" + staff: Staff + "Status of the submission" + status: SubmissionStatus + "The staff submission changes" + submission: Staff + "Submitter for the submission" + submitter: User } "The distribution of the watching/reading status of media or a user's list" type StatusDistribution { - "The amount of entries with this status" - amount: Int - "The day the activity took place (Unix timestamp)" - status: MediaListStatus + "The amount of entries with this status" + amount: Int + "The day the activity took place (Unix timestamp)" + status: MediaListStatus } "Animation or production company" type Studio { - "The amount of user's who have favourited the studio" - favourites: Int - "The id of the studio" - id: Int! - "If the studio is an animation studio or a different kind of company" - isAnimationStudio: Boolean! - "If the studio is marked as favourite by the currently authenticated user" - isFavourite: Boolean! - "The media the studio has worked on" - media( - "If the studio was the primary animation studio of the media" - isMain: Boolean, - onList: Boolean, - "The page" - page: Int, - "The amount of entries per page, max 25" - perPage: Int, - "The order the results will be returned in" - sort: [MediaSort] - ): MediaConnection - "The name of the studio" - name: String! - "The url for the studio page on the AniList website" - siteUrl: String + "The amount of user's who have favourited the studio" + favourites: Int + "The id of the studio" + id: Int! + "If the studio is an animation studio or a different kind of company" + isAnimationStudio: Boolean! + "If the studio is marked as favourite by the currently authenticated user" + isFavourite: Boolean! + "The media the studio has worked on" + media( + "If the studio was the primary animation studio of the media" + isMain: Boolean, + onList: Boolean, + "The page" + page: Int, + "The amount of entries per page, max 25" + perPage: Int, + "The order the results will be returned in" + sort: [MediaSort] + ): MediaConnection + "The name of the studio" + name: String! + "The url for the studio page on the AniList website" + siteUrl: String } type StudioConnection { - edges: [StudioEdge] - nodes: [Studio] - "The pagination information" - pageInfo: PageInfo + edges: [StudioEdge] + nodes: [Studio] + "The pagination information" + pageInfo: PageInfo } "Studio connection edge" type StudioEdge { - "The order the character should be displayed from the users favourites" - favouriteOrder: Int - "The id of the connection" - id: Int - "If the studio is the main animation studio of the anime" - isMain: Boolean! - node: Studio + "The order the character should be displayed from the users favourites" + favouriteOrder: Int + "The id of the connection" + id: Int + "If the studio is the main animation studio of the anime" + isMain: Boolean! + node: Studio } "User's studio statistics" type StudioStats { - amount: Int - meanScore: Int - studio: Studio - "The amount of time in minutes the studio's works have been watched by the user" - timeWatched: Int + amount: Int + meanScore: Int + studio: Studio + "The amount of time in minutes the studio's works have been watched by the user" + timeWatched: Int } "User's tag statistics" type TagStats { - amount: Int - meanScore: Int - tag: MediaTag - "The amount of time in minutes the tag has been watched by the user" - timeWatched: Int + amount: Int + meanScore: Int + tag: MediaTag + "The amount of time in minutes the tag has been watched by the user" + timeWatched: Int } "User text activity" type TextActivity { - "The time the activity was created at" - createdAt: Int! - "The id of the activity" - id: Int! - "If the currently authenticated user liked the activity" - isLiked: Boolean - "If the activity is locked and can receive replies" - isLocked: Boolean - "If the currently authenticated user is subscribed to the activity" - isSubscribed: Boolean - "The amount of likes the activity has" - likeCount: Int! - "The users who liked the activity" - likes: [User] - "The written replies to the activity" - replies: [ActivityReply] - "The number of activity replies" - replyCount: Int! - "The url for the activity page on the AniList website" - siteUrl: String - "The status text (Markdown)" - text( - "Return the string in pre-parsed html instead of markdown" - asHtml: Boolean - ): String - "The type of activity" - type: ActivityType - "The user who created the activity" - user: User - "The user id of the activity's creator" - userId: Int + "The time the activity was created at" + createdAt: Int! + "The id of the activity" + id: Int! + "If the currently authenticated user liked the activity" + isLiked: Boolean + "If the activity is locked and can receive replies" + isLocked: Boolean + "If the activity is pinned to the top of the users activity feed" + isPinned: Boolean + "If the currently authenticated user is subscribed to the activity" + isSubscribed: Boolean + "The amount of likes the activity has" + likeCount: Int! + "The users who liked the activity" + likes: [User] + "The written replies to the activity" + replies: [ActivityReply] + "The number of activity replies" + replyCount: Int! + "The url for the activity page on the AniList website" + siteUrl: String + "The status text (Markdown)" + text( + "Return the string in pre-parsed html instead of markdown" + asHtml: Boolean + ): String + "The type of activity" + type: ActivityType + "The user who created the activity" + user: User + "The user id of the activity's creator" + userId: Int } "Forum Thread" type Thread { - "The text body of the thread (Markdown)" - body( - "Return the string in pre-parsed html instead of markdown" - asHtml: Boolean - ): String - "The categories of the thread" - categories: [ThreadCategory] - "The time of the thread creation" - createdAt: Int! - "The id of the thread" - id: Int! - "If the currently authenticated user liked the thread" - isLiked: Boolean - "If the thread is locked and can receive comments" - isLocked: Boolean - "If the thread is stickied and should be displayed at the top of the page" - isSticky: Boolean - "If the currently authenticated user is subscribed to the thread" - isSubscribed: Boolean - "The amount of likes the thread has" - likeCount: Int! - "The users who liked the thread" - likes: [User] - "The media categories of the thread" - mediaCategories: [Media] - "The time of the last reply" - repliedAt: Int - "The id of the most recent comment on the thread" - replyCommentId: Int - "The number of comments on the thread" - replyCount: Int - "The user to last reply to the thread" - replyUser: User - "The id of the user who most recently commented on the thread" - replyUserId: Int - "The url for the thread page on the AniList website" - siteUrl: String - "The title of the thread" - title: String - "The time of the thread last update" - updatedAt: Int! - "The owner of the thread" - user: User - "The id of the thread owner user" - userId: Int! - "The number of times users have viewed the thread" - viewCount: Int + "The text body of the thread (Markdown)" + body( + "Return the string in pre-parsed html instead of markdown" + asHtml: Boolean + ): String + "The categories of the thread" + categories: [ThreadCategory] + "The time of the thread creation" + createdAt: Int! + "The id of the thread" + id: Int! + "If the currently authenticated user liked the thread" + isLiked: Boolean + "If the thread is locked and can receive comments" + isLocked: Boolean + "If the thread is stickied and should be displayed at the top of the page" + isSticky: Boolean + "If the currently authenticated user is subscribed to the thread" + isSubscribed: Boolean + "The amount of likes the thread has" + likeCount: Int! + "The users who liked the thread" + likes: [User] + "The media categories of the thread" + mediaCategories: [Media] + "The time of the last reply" + repliedAt: Int + "The id of the most recent comment on the thread" + replyCommentId: Int + "The number of comments on the thread" + replyCount: Int + "The user to last reply to the thread" + replyUser: User + "The id of the user who most recently commented on the thread" + replyUserId: Int + "The url for the thread page on the AniList website" + siteUrl: String + "The title of the thread" + title: String + "The time of the thread last update" + updatedAt: Int! + "The owner of the thread" + user: User + "The id of the thread owner user" + userId: Int! + "The number of times users have viewed the thread" + viewCount: Int } "A forum thread category" type ThreadCategory { - "The id of the category" - id: Int! - "The name of the category" - name: String! + "The id of the category" + id: Int! + "The name of the category" + name: String! } "Forum Thread Comment" type ThreadComment { - "The comment's child reply comments" - childComments: Json - "The text content of the comment (Markdown)" - comment( - "Return the string in pre-parsed html instead of markdown" - asHtml: Boolean - ): String - "The time of the comments creation" - createdAt: Int! - "The id of the comment" - id: Int! - "If the currently authenticated user liked the comment" - isLiked: Boolean - "If the comment tree is locked and may not receive replies or edits" - isLocked: Boolean - "The amount of likes the comment has" - likeCount: Int! - "The users who liked the comment" - likes: [User] - "The url for the comment page on the AniList website" - siteUrl: String - "The thread the comment belongs to" - thread: Thread - "The id of thread the comment belongs to" - threadId: Int - "The time of the comments last update" - updatedAt: Int! - "The user who created the comment" - user: User - "The user id of the comment's owner" - userId: Int + "The comment's child reply comments" + childComments: Json + "The text content of the comment (Markdown)" + comment( + "Return the string in pre-parsed html instead of markdown" + asHtml: Boolean + ): String + "The time of the comments creation" + createdAt: Int! + "The id of the comment" + id: Int! + "If the currently authenticated user liked the comment" + isLiked: Boolean + "If the comment tree is locked and may not receive replies or edits" + isLocked: Boolean + "The amount of likes the comment has" + likeCount: Int! + "The users who liked the comment" + likes: [User] + "The url for the comment page on the AniList website" + siteUrl: String + "The thread the comment belongs to" + thread: Thread + "The id of thread the comment belongs to" + threadId: Int + "The time of the comments last update" + updatedAt: Int! + "The user who created the comment" + user: User + "The user id of the comment's owner" + userId: Int } "Notification for when a thread comment is liked" type ThreadCommentLikeNotification { - "The thread comment that was liked" - comment: ThreadComment - "The id of the activity which was liked" - commentId: Int! - "The notification context text" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The thread that the relevant comment belongs to" - thread: Thread - "The type of notification" - type: NotificationType - "The user who liked the activity" - user: User - "The id of the user who liked to the activity" - userId: Int! + "The thread comment that was liked" + comment: ThreadComment + "The id of the activity which was liked" + commentId: Int! + "The notification context text" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The thread that the relevant comment belongs to" + thread: Thread + "The type of notification" + type: NotificationType + "The user who liked the activity" + user: User + "The id of the user who liked to the activity" + userId: Int! } "Notification for when authenticated user is @ mentioned in a forum thread comment" type ThreadCommentMentionNotification { - "The thread comment that included the @ mention" - comment: ThreadComment - "The id of the comment where mentioned" - commentId: Int! - "The notification context text" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The thread that the relevant comment belongs to" - thread: Thread - "The type of notification" - type: NotificationType - "The user who mentioned the authenticated user" - user: User - "The id of the user who mentioned the authenticated user" - userId: Int! + "The thread comment that included the @ mention" + comment: ThreadComment + "The id of the comment where mentioned" + commentId: Int! + "The notification context text" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The thread that the relevant comment belongs to" + thread: Thread + "The type of notification" + type: NotificationType + "The user who mentioned the authenticated user" + user: User + "The id of the user who mentioned the authenticated user" + userId: Int! } "Notification for when a user replies to your forum thread comment" type ThreadCommentReplyNotification { - "The reply thread comment" - comment: ThreadComment - "The id of the reply comment" - commentId: Int! - "The notification context text" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The thread that the relevant comment belongs to" - thread: Thread - "The type of notification" - type: NotificationType - "The user who replied to the activity" - user: User - "The id of the user who create the comment reply" - userId: Int! + "The reply thread comment" + comment: ThreadComment + "The id of the reply comment" + commentId: Int! + "The notification context text" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The thread that the relevant comment belongs to" + thread: Thread + "The type of notification" + type: NotificationType + "The user who replied to the activity" + user: User + "The id of the user who create the comment reply" + userId: Int! } "Notification for when a user replies to a subscribed forum thread" type ThreadCommentSubscribedNotification { - "The reply thread comment" - comment: ThreadComment - "The id of the new comment in the subscribed thread" - commentId: Int! - "The notification context text" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The thread that the relevant comment belongs to" - thread: Thread - "The type of notification" - type: NotificationType - "The user who replied to the subscribed thread" - user: User - "The id of the user who commented on the thread" - userId: Int! + "The reply thread comment" + comment: ThreadComment + "The id of the new comment in the subscribed thread" + commentId: Int! + "The notification context text" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The thread that the relevant comment belongs to" + thread: Thread + "The type of notification" + type: NotificationType + "The user who replied to the subscribed thread" + user: User + "The id of the user who commented on the thread" + userId: Int! } "Notification for when a thread is liked" type ThreadLikeNotification { - "The liked thread comment" - comment: ThreadComment - "The notification context text" - context: String - "The time the notification was created at" - createdAt: Int - "The id of the Notification" - id: Int! - "The thread that the relevant comment belongs to" - thread: Thread - "The id of the thread which was liked" - threadId: Int! - "The type of notification" - type: NotificationType - "The user who liked the activity" - user: User - "The id of the user who liked to the activity" - userId: Int! + "The liked thread comment" + comment: ThreadComment + "The notification context text" + context: String + "The time the notification was created at" + createdAt: Int + "The id of the Notification" + id: Int! + "The thread that the relevant comment belongs to" + thread: Thread + "The id of the thread which was liked" + threadId: Int! + "The type of notification" + type: NotificationType + "The user who liked the activity" + user: User + "The id of the user who liked to the activity" + userId: Int! } "A user" type User { - "The bio written by user (Markdown)" - about( - "Return the string in pre-parsed html instead of markdown" - asHtml: Boolean - ): String - "The user's avatar images" - avatar: UserAvatar - "The user's banner images" - bannerImage: String - bans: Json - "When the user's account was created. (Does not exist for accounts created before 2020)" - createdAt: Int - "Custom donation badge text" - donatorBadge: String - "The donation tier of the user" - donatorTier: Int - "The users favourites" - favourites( - "Deprecated. Use page arguments on each favourite field instead." - page: Int - ): Favourites - "The id of the user" - id: Int! - "If the user is blocked by the authenticated user" - isBlocked: Boolean - "If this user if following the authenticated user" - isFollower: Boolean - "If the authenticated user if following this user" - isFollowing: Boolean - "The user's media list options" - mediaListOptions: MediaListOptions - "The user's moderator roles if they are a site moderator" - moderatorRoles: [ModRole] - "If the user is a moderator or data moderator" - moderatorStatus: String @deprecated(reason: "Deprecated. Replaced with moderatorRoles field.") - "The name of the user" - name: String! - "The user's general options" - options: UserOptions - "The user's previously used names." - previousNames: [UserPreviousName] - "The url for the user page on the AniList website" - siteUrl: String - "The users anime & manga list statistics" - statistics: UserStatisticTypes - "The user's statistics" - stats: UserStats @deprecated(reason: "Deprecated. Replaced with statistics field.") - "The number of unread notifications the user has" - unreadNotificationCount: Int - "When the user's data was last updated" - updatedAt: Int + "The bio written by user (Markdown)" + about( + "Return the string in pre-parsed html instead of markdown" + asHtml: Boolean + ): String + "The user's avatar images" + avatar: UserAvatar + "The user's banner images" + bannerImage: String + bans: Json + "When the user's account was created. (Does not exist for accounts created before 2020)" + createdAt: Int + "Custom donation badge text" + donatorBadge: String + "The donation tier of the user" + donatorTier: Int + "The users favourites" + favourites( + "Deprecated. Use page arguments on each favourite field instead." + page: Int + ): Favourites + "The id of the user" + id: Int! + "If the user is blocked by the authenticated user" + isBlocked: Boolean + "If this user if following the authenticated user" + isFollower: Boolean + "If the authenticated user if following this user" + isFollowing: Boolean + "The user's media list options" + mediaListOptions: MediaListOptions + "The user's moderator roles if they are a site moderator" + moderatorRoles: [ModRole] + "If the user is a moderator or data moderator" + moderatorStatus: String @deprecated(reason: "Deprecated. Replaced with moderatorRoles field.") + "The name of the user" + name: String! + "The user's general options" + options: UserOptions + "The user's previously used names." + previousNames: [UserPreviousName] + "The url for the user page on the AniList website" + siteUrl: String + "The users anime & manga list statistics" + statistics: UserStatisticTypes + "The user's statistics" + stats: UserStats @deprecated(reason: "Deprecated. Replaced with statistics field.") + "The number of unread notifications the user has" + unreadNotificationCount: Int + "When the user's data was last updated" + updatedAt: Int } "A user's activity history stats." type UserActivityHistory { - "The amount of activity on the day" - amount: Int - "The day the activity took place (Unix timestamp)" - date: Int - "The level of activity represented on a 1-10 scale" - level: Int + "The amount of activity on the day" + amount: Int + "The day the activity took place (Unix timestamp)" + date: Int + "The level of activity represented on a 1-10 scale" + level: Int } "A user's avatars" type UserAvatar { - "The avatar of user at its largest size" - large: String - "The avatar of user at medium size" - medium: String + "The avatar of user at its largest size" + large: String + "The avatar of user at medium size" + medium: String } type UserCountryStatistic { - chaptersRead: Int! - count: Int! - country: CountryCode - meanScore: Float! - mediaIds: [Int]! - minutesWatched: Int! + chaptersRead: Int! + count: Int! + country: CountryCode + meanScore: Float! + mediaIds: [Int]! + minutesWatched: Int! } type UserFormatStatistic { - chaptersRead: Int! - count: Int! - format: MediaFormat - meanScore: Float! - mediaIds: [Int]! - minutesWatched: Int! + chaptersRead: Int! + count: Int! + format: MediaFormat + meanScore: Float! + mediaIds: [Int]! + minutesWatched: Int! } type UserGenreStatistic { - chaptersRead: Int! - count: Int! - genre: String - meanScore: Float! - mediaIds: [Int]! - minutesWatched: Int! + chaptersRead: Int! + count: Int! + genre: String + meanScore: Float! + mediaIds: [Int]! + minutesWatched: Int! } type UserLengthStatistic { - chaptersRead: Int! - count: Int! - length: String - meanScore: Float! - mediaIds: [Int]! - minutesWatched: Int! + chaptersRead: Int! + count: Int! + length: String + meanScore: Float! + mediaIds: [Int]! + minutesWatched: Int! } "User data for moderators" type UserModData { - alts: [User] - bans: Json - counts: Json - email: String - ip: Json - privacy: Int + alts: [User] + bans: Json + counts: Json + email: String + ip: Json + privacy: Int } "A user's general options" type UserOptions { - "Minutes between activity for them to be merged together. 0 is Never, Above 2 weeks (20160 mins) is Always." - activityMergeTime: Int - "Whether the user receives notifications when a show they are watching aires" - airingNotifications: Boolean - "Whether the user has enabled viewing of 18+ content" - displayAdultContent: Boolean - "Notification options" - notificationOptions: [NotificationOption] - "Profile highlight color (blue, purple, pink, orange, red, green, gray)" - profileColor: String - "The language the user wants to see staff and character names in" - staffNameLanguage: UserStaffNameLanguage - "The user's timezone offset (Auth user only)" - timezone: String - "The language the user wants to see media titles in" - titleLanguage: UserTitleLanguage + "Minutes between activity for them to be merged together. 0 is Never, Above 2 weeks (20160 mins) is Always." + activityMergeTime: Int + "Whether the user receives notifications when a show they are watching aires" + airingNotifications: Boolean + "The list activity types the user has disabled from being created from list updates" + disabledListActivity: [ListActivityOption] + "Whether the user has enabled viewing of 18+ content" + displayAdultContent: Boolean + "Notification options" + notificationOptions: [NotificationOption] + "Profile highlight color (blue, purple, pink, orange, red, green, gray)" + profileColor: String + "Whether the user only allow messages from users they follow" + restrictMessagesToFollowing: Boolean + "The language the user wants to see staff and character names in" + staffNameLanguage: UserStaffNameLanguage + "The user's timezone offset (Auth user only)" + timezone: String + "The language the user wants to see media titles in" + titleLanguage: UserTitleLanguage } "A user's previous name" type UserPreviousName { - "When the user first changed from this name." - createdAt: Int - "A previous name of the user." - name: String - "When the user most recently changed from this name." - updatedAt: Int + "When the user first changed from this name." + createdAt: Int + "A previous name of the user." + name: String + "When the user most recently changed from this name." + updatedAt: Int } type UserReleaseYearStatistic { - chaptersRead: Int! - count: Int! - meanScore: Float! - mediaIds: [Int]! - minutesWatched: Int! - releaseYear: Int + chaptersRead: Int! + count: Int! + meanScore: Float! + mediaIds: [Int]! + minutesWatched: Int! + releaseYear: Int } type UserScoreStatistic { - chaptersRead: Int! - count: Int! - meanScore: Float! - mediaIds: [Int]! - minutesWatched: Int! - score: Int + chaptersRead: Int! + count: Int! + meanScore: Float! + mediaIds: [Int]! + minutesWatched: Int! + score: Int } type UserStaffStatistic { - chaptersRead: Int! - count: Int! - meanScore: Float! - mediaIds: [Int]! - minutesWatched: Int! - staff: Staff + chaptersRead: Int! + count: Int! + meanScore: Float! + mediaIds: [Int]! + minutesWatched: Int! + staff: Staff } type UserStartYearStatistic { - chaptersRead: Int! - count: Int! - meanScore: Float! - mediaIds: [Int]! - minutesWatched: Int! - startYear: Int + chaptersRead: Int! + count: Int! + meanScore: Float! + mediaIds: [Int]! + minutesWatched: Int! + startYear: Int } type UserStatisticTypes { - anime: UserStatistics - manga: UserStatistics + anime: UserStatistics + manga: UserStatistics } type UserStatistics { - chaptersRead: Int! - count: Int! - countries(limit: Int, sort: [UserStatisticsSort]): [UserCountryStatistic] - episodesWatched: Int! - formats(limit: Int, sort: [UserStatisticsSort]): [UserFormatStatistic] - genres(limit: Int, sort: [UserStatisticsSort]): [UserGenreStatistic] - lengths(limit: Int, sort: [UserStatisticsSort]): [UserLengthStatistic] - meanScore: Float! - minutesWatched: Int! - releaseYears(limit: Int, sort: [UserStatisticsSort]): [UserReleaseYearStatistic] - scores(limit: Int, sort: [UserStatisticsSort]): [UserScoreStatistic] - staff(limit: Int, sort: [UserStatisticsSort]): [UserStaffStatistic] - standardDeviation: Float! - startYears(limit: Int, sort: [UserStatisticsSort]): [UserStartYearStatistic] - statuses(limit: Int, sort: [UserStatisticsSort]): [UserStatusStatistic] - studios(limit: Int, sort: [UserStatisticsSort]): [UserStudioStatistic] - tags(limit: Int, sort: [UserStatisticsSort]): [UserTagStatistic] - voiceActors(limit: Int, sort: [UserStatisticsSort]): [UserVoiceActorStatistic] - volumesRead: Int! + chaptersRead: Int! + count: Int! + countries(limit: Int, sort: [UserStatisticsSort]): [UserCountryStatistic] + episodesWatched: Int! + formats(limit: Int, sort: [UserStatisticsSort]): [UserFormatStatistic] + genres(limit: Int, sort: [UserStatisticsSort]): [UserGenreStatistic] + lengths(limit: Int, sort: [UserStatisticsSort]): [UserLengthStatistic] + meanScore: Float! + minutesWatched: Int! + releaseYears(limit: Int, sort: [UserStatisticsSort]): [UserReleaseYearStatistic] + scores(limit: Int, sort: [UserStatisticsSort]): [UserScoreStatistic] + staff(limit: Int, sort: [UserStatisticsSort]): [UserStaffStatistic] + standardDeviation: Float! + startYears(limit: Int, sort: [UserStatisticsSort]): [UserStartYearStatistic] + statuses(limit: Int, sort: [UserStatisticsSort]): [UserStatusStatistic] + studios(limit: Int, sort: [UserStatisticsSort]): [UserStudioStatistic] + tags(limit: Int, sort: [UserStatisticsSort]): [UserTagStatistic] + voiceActors(limit: Int, sort: [UserStatisticsSort]): [UserVoiceActorStatistic] + volumesRead: Int! } "A user's statistics" type UserStats { - activityHistory: [UserActivityHistory] - animeListScores: ListScoreStats - animeScoreDistribution: [ScoreDistribution] - animeStatusDistribution: [StatusDistribution] - "The amount of manga chapters the user has read" - chaptersRead: Int - favouredActors: [StaffStats] - favouredFormats: [FormatStats] - favouredGenres: [GenreStats] - favouredGenresOverview: [GenreStats] - favouredStaff: [StaffStats] - favouredStudios: [StudioStats] - favouredTags: [TagStats] - favouredYears: [YearStats] - mangaListScores: ListScoreStats - mangaScoreDistribution: [ScoreDistribution] - mangaStatusDistribution: [StatusDistribution] - "The amount of anime the user has watched in minutes" - watchedTime: Int + activityHistory: [UserActivityHistory] + animeListScores: ListScoreStats + animeScoreDistribution: [ScoreDistribution] + animeStatusDistribution: [StatusDistribution] + "The amount of manga chapters the user has read" + chaptersRead: Int + favouredActors: [StaffStats] + favouredFormats: [FormatStats] + favouredGenres: [GenreStats] + favouredGenresOverview: [GenreStats] + favouredStaff: [StaffStats] + favouredStudios: [StudioStats] + favouredTags: [TagStats] + favouredYears: [YearStats] + mangaListScores: ListScoreStats + mangaScoreDistribution: [ScoreDistribution] + mangaStatusDistribution: [StatusDistribution] + "The amount of anime the user has watched in minutes" + watchedTime: Int } type UserStatusStatistic { - chaptersRead: Int! - count: Int! - meanScore: Float! - mediaIds: [Int]! - minutesWatched: Int! - status: MediaListStatus + chaptersRead: Int! + count: Int! + meanScore: Float! + mediaIds: [Int]! + minutesWatched: Int! + status: MediaListStatus } type UserStudioStatistic { - chaptersRead: Int! - count: Int! - meanScore: Float! - mediaIds: [Int]! - minutesWatched: Int! - studio: Studio + chaptersRead: Int! + count: Int! + meanScore: Float! + mediaIds: [Int]! + minutesWatched: Int! + studio: Studio } type UserTagStatistic { - chaptersRead: Int! - count: Int! - meanScore: Float! - mediaIds: [Int]! - minutesWatched: Int! - tag: MediaTag + chaptersRead: Int! + count: Int! + meanScore: Float! + mediaIds: [Int]! + minutesWatched: Int! + tag: MediaTag } type UserVoiceActorStatistic { - chaptersRead: Int! - characterIds: [Int]! - count: Int! - meanScore: Float! - mediaIds: [Int]! - minutesWatched: Int! - voiceActor: Staff + chaptersRead: Int! + characterIds: [Int]! + count: Int! + meanScore: Float! + mediaIds: [Int]! + minutesWatched: Int! + voiceActor: Staff } "User's year statistics" type YearStats { - amount: Int - meanScore: Int - year: Int + amount: Int + meanScore: Int + year: Int } "Activity sort enums" enum ActivitySort { - ID - ID_DESC + ID + ID_DESC + PINNED } "Activity type enum." enum ActivityType { - "A anime list update activity" - ANIME_LIST - "A manga list update activity" - MANGA_LIST - "Anime & Manga list update, only used in query arguments" - MEDIA_LIST - "A text message activity sent to another user" - MESSAGE - "A text activity" - TEXT + "A anime list update activity" + ANIME_LIST + "A manga list update activity" + MANGA_LIST + "Anime & Manga list update, only used in query arguments" + MEDIA_LIST + "A text message activity sent to another user" + MESSAGE + "A text activity" + TEXT } "Airing schedule sort enums" enum AiringSort { - EPISODE - EPISODE_DESC - ID - ID_DESC - MEDIA_ID - MEDIA_ID_DESC - TIME - TIME_DESC + EPISODE + EPISODE_DESC + ID + ID_DESC + MEDIA_ID + MEDIA_ID_DESC + TIME + TIME_DESC } "The role the character plays in the media" enum CharacterRole { - "A background character in the media" - BACKGROUND - "A primary character role in the media" - MAIN - "A supporting character role in the media" - SUPPORTING + "A background character in the media" + BACKGROUND + "A primary character role in the media" + MAIN + "A supporting character role in the media" + SUPPORTING } "Character sort enums" enum CharacterSort { - FAVOURITES - FAVOURITES_DESC - ID - ID_DESC - "Order manually decided by moderators" - RELEVANCE - ROLE - ROLE_DESC - SEARCH_MATCH + FAVOURITES + FAVOURITES_DESC + ID + ID_DESC + "Order manually decided by moderators" + RELEVANCE + ROLE + ROLE_DESC + SEARCH_MATCH +} + +enum ExternalLinkMediaType { + ANIME + MANGA + STAFF +} + +enum ExternalLinkType { + INFO + SOCIAL + STREAMING } "Types that can be liked" enum LikeableType { - ACTIVITY - ACTIVITY_REPLY - THREAD - THREAD_COMMENT + ACTIVITY + ACTIVITY_REPLY + THREAD + THREAD_COMMENT } "The format the media was released in" enum MediaFormat { - "Professionally published manga with more than one chapter" - MANGA - "Anime movies with a theatrical release" - MOVIE - "Short anime released as a music video" - MUSIC - "Written books released as a series of light novels" - NOVEL - "(Original Net Animation) Anime that have been originally released online or are only available through streaming services." - ONA - "Manga with just one chapter" - ONE_SHOT - "(Original Video Animation) Anime that have been released directly on DVD/Blu-ray without originally going through a theatrical release or television broadcast" - OVA - "Special episodes that have been included in DVD/Blu-ray releases, picture dramas, pilots, etc" - SPECIAL - "Anime broadcast on television" - TV - "Anime which are under 15 minutes in length and broadcast on television" - TV_SHORT + "Professionally published manga with more than one chapter" + MANGA + "Anime movies with a theatrical release" + MOVIE + "Short anime released as a music video" + MUSIC + "Written books released as a series of light novels" + NOVEL + "(Original Net Animation) Anime that have been originally released online or are only available through streaming services." + ONA + "Manga with just one chapter" + ONE_SHOT + "(Original Video Animation) Anime that have been released directly on DVD/Blu-ray without originally going through a theatrical release or television broadcast" + OVA + "Special episodes that have been included in DVD/Blu-ray releases, picture dramas, pilots, etc" + SPECIAL + "Anime broadcast on television" + TV + "Anime which are under 15 minutes in length and broadcast on television" + TV_SHORT } "Media list sort enums" enum MediaListSort { - ADDED_TIME - ADDED_TIME_DESC - FINISHED_ON - FINISHED_ON_DESC - MEDIA_ID - MEDIA_ID_DESC - MEDIA_POPULARITY - MEDIA_POPULARITY_DESC - MEDIA_TITLE_ENGLISH - MEDIA_TITLE_ENGLISH_DESC - MEDIA_TITLE_NATIVE - MEDIA_TITLE_NATIVE_DESC - MEDIA_TITLE_ROMAJI - MEDIA_TITLE_ROMAJI_DESC - PRIORITY - PRIORITY_DESC - PROGRESS - PROGRESS_DESC - PROGRESS_VOLUMES - PROGRESS_VOLUMES_DESC - REPEAT - REPEAT_DESC - SCORE - SCORE_DESC - STARTED_ON - STARTED_ON_DESC - STATUS - STATUS_DESC - UPDATED_TIME - UPDATED_TIME_DESC + ADDED_TIME + ADDED_TIME_DESC + FINISHED_ON + FINISHED_ON_DESC + MEDIA_ID + MEDIA_ID_DESC + MEDIA_POPULARITY + MEDIA_POPULARITY_DESC + MEDIA_TITLE_ENGLISH + MEDIA_TITLE_ENGLISH_DESC + MEDIA_TITLE_NATIVE + MEDIA_TITLE_NATIVE_DESC + MEDIA_TITLE_ROMAJI + MEDIA_TITLE_ROMAJI_DESC + PRIORITY + PRIORITY_DESC + PROGRESS + PROGRESS_DESC + PROGRESS_VOLUMES + PROGRESS_VOLUMES_DESC + REPEAT + REPEAT_DESC + SCORE + SCORE_DESC + STARTED_ON + STARTED_ON_DESC + STATUS + STATUS_DESC + UPDATED_TIME + UPDATED_TIME_DESC } "Media list watching/reading status enum." enum MediaListStatus { - "Finished watching/reading" - COMPLETED - "Currently watching/reading" - CURRENT - "Stopped watching/reading before completing" - DROPPED - "Paused watching/reading" - PAUSED - "Planning to watch/read" - PLANNING - "Re-watching/reading" - REPEATING + "Finished watching/reading" + COMPLETED + "Currently watching/reading" + CURRENT + "Stopped watching/reading before completing" + DROPPED + "Paused watching/reading" + PAUSED + "Planning to watch/read" + PLANNING + "Re-watching/reading" + REPEATING } "The type of ranking" enum MediaRankType { - "Ranking is based on the media's popularity" - POPULAR - "Ranking is based on the media's ratings/score" - RATED + "Ranking is based on the media's popularity" + POPULAR + "Ranking is based on the media's ratings/score" + RATED } "Type of relation media has to its parent." enum MediaRelation { - "An adaption of this media into a different format" - ADAPTATION - "An alternative version of the same media" - ALTERNATIVE - "Shares at least 1 character" - CHARACTER - "Version 2 only." - COMPILATION - "Version 2 only." - CONTAINS - "Other" - OTHER - "The media a side story is from" - PARENT - "Released before the relation" - PREQUEL - "Released after the relation" - SEQUEL - "A side story of the parent media" - SIDE_STORY - "Version 2 only. The source material the media was adapted from" - SOURCE - "An alternative version of the media with a different primary focus" - SPIN_OFF - "A shortened and summarized version" - SUMMARY + "An adaption of this media into a different format" + ADAPTATION + "An alternative version of the same media" + ALTERNATIVE + "Shares at least 1 character" + CHARACTER + "Version 2 only." + COMPILATION + "Version 2 only." + CONTAINS + "Other" + OTHER + "The media a side story is from" + PARENT + "Released before the relation" + PREQUEL + "Released after the relation" + SEQUEL + "A side story of the parent media" + SIDE_STORY + "Version 2 only. The source material the media was adapted from" + SOURCE + "An alternative version of the media with a different primary focus" + SPIN_OFF + "A shortened and summarized version" + SUMMARY } enum MediaSeason { - "Months September to November" - FALL - "Months March to May" - SPRING - "Months June to August" - SUMMER - "Months December to February" - WINTER + "Months September to November" + FALL + "Months March to May" + SPRING + "Months June to August" + SUMMER + "Months December to February" + WINTER } "Media sort enums" enum MediaSort { - CHAPTERS - CHAPTERS_DESC - DURATION - DURATION_DESC - END_DATE - END_DATE_DESC - EPISODES - EPISODES_DESC - FAVOURITES - FAVOURITES_DESC - FORMAT - FORMAT_DESC - ID - ID_DESC - POPULARITY - POPULARITY_DESC - SCORE - SCORE_DESC - SEARCH_MATCH - START_DATE - START_DATE_DESC - STATUS - STATUS_DESC - TITLE_ENGLISH - TITLE_ENGLISH_DESC - TITLE_NATIVE - TITLE_NATIVE_DESC - TITLE_ROMAJI - TITLE_ROMAJI_DESC - TRENDING - TRENDING_DESC - TYPE - TYPE_DESC - UPDATED_AT - UPDATED_AT_DESC - VOLUMES - VOLUMES_DESC + CHAPTERS + CHAPTERS_DESC + DURATION + DURATION_DESC + END_DATE + END_DATE_DESC + EPISODES + EPISODES_DESC + FAVOURITES + FAVOURITES_DESC + FORMAT + FORMAT_DESC + ID + ID_DESC + POPULARITY + POPULARITY_DESC + SCORE + SCORE_DESC + SEARCH_MATCH + START_DATE + START_DATE_DESC + STATUS + STATUS_DESC + TITLE_ENGLISH + TITLE_ENGLISH_DESC + TITLE_NATIVE + TITLE_NATIVE_DESC + TITLE_ROMAJI + TITLE_ROMAJI_DESC + TRENDING + TRENDING_DESC + TYPE + TYPE_DESC + UPDATED_AT + UPDATED_AT_DESC + VOLUMES + VOLUMES_DESC } "Source type the media was adapted from" enum MediaSource { - "Version 2+ only. Japanese Anime" - ANIME - "Version 3 only. Comics excluding manga" - COMIC - "Version 2+ only. Self-published works" - DOUJINSHI - "Version 3 only. Games excluding video games" - GAME - "Written work published in volumes" - LIGHT_NOVEL - "Version 3 only. Live action media such as movies or TV show" - LIVE_ACTION - "Asian comic book" - MANGA - "Version 3 only. Multimedia project" - MULTIMEDIA_PROJECT - "Version 2+ only. Written works not published in volumes" - NOVEL - "An original production not based of another work" - ORIGINAL - "Other" - OTHER - "Version 3 only. Picture book" - PICTURE_BOOK - "Video game" - VIDEO_GAME - "Video game driven primary by text and narrative" - VISUAL_NOVEL - "Version 3 only. Written works published online" - WEB_NOVEL + "Version 2+ only. Japanese Anime" + ANIME + "Version 3 only. Comics excluding manga" + COMIC + "Version 2+ only. Self-published works" + DOUJINSHI + "Version 3 only. Games excluding video games" + GAME + "Written work published in volumes" + LIGHT_NOVEL + "Version 3 only. Live action media such as movies or TV show" + LIVE_ACTION + "Asian comic book" + MANGA + "Version 3 only. Multimedia project" + MULTIMEDIA_PROJECT + "Version 2+ only. Written works not published in volumes" + NOVEL + "An original production not based of another work" + ORIGINAL + "Other" + OTHER + "Version 3 only. Picture book" + PICTURE_BOOK + "Video game" + VIDEO_GAME + "Video game driven primary by text and narrative" + VISUAL_NOVEL + "Version 3 only. Written works published online" + WEB_NOVEL } "The current releasing status of the media" enum MediaStatus { - "Ended before the work could be finished" - CANCELLED - "Has completed and is no longer being released" - FINISHED - "Version 2 only. Is currently paused from releasing and will resume at a later date" - HIATUS - "To be released at a later date" - NOT_YET_RELEASED - "Currently releasing" - RELEASING + "Ended before the work could be finished" + CANCELLED + "Has completed and is no longer being released" + FINISHED + "Version 2 only. Is currently paused from releasing and will resume at a later date" + HIATUS + "To be released at a later date" + NOT_YET_RELEASED + "Currently releasing" + RELEASING } "Media trend sort enums" enum MediaTrendSort { - DATE - DATE_DESC - EPISODE - EPISODE_DESC - ID - ID_DESC - MEDIA_ID - MEDIA_ID_DESC - POPULARITY - POPULARITY_DESC - SCORE - SCORE_DESC - TRENDING - TRENDING_DESC + DATE + DATE_DESC + EPISODE + EPISODE_DESC + ID + ID_DESC + MEDIA_ID + MEDIA_ID_DESC + POPULARITY + POPULARITY_DESC + SCORE + SCORE_DESC + TRENDING + TRENDING_DESC } "Media type enum, anime or manga." enum MediaType { - "Japanese Anime" - ANIME - "Asian comic" - MANGA + "Japanese Anime" + ANIME + "Asian comic" + MANGA } enum ModActionType { - ANON - BAN - DELETE - EDIT - EXPIRE - NOTE - REPORT - RESET + ANON + BAN + DELETE + EDIT + EXPIRE + NOTE + REPORT + RESET } "Mod role enums" enum ModRole { - "An AniList administrator" - ADMIN - "An anime data moderator" - ANIME_DATA - "A community moderator" - COMMUNITY - "An AniList developer" - DEVELOPER - "A discord community moderator" - DISCORD_COMMUNITY - "A lead anime data moderator" - LEAD_ANIME_DATA - "A lead community moderator" - LEAD_COMMUNITY - "A head developer of AniList" - LEAD_DEVELOPER - "A lead manga data moderator" - LEAD_MANGA_DATA - "A lead social media moderator" - LEAD_SOCIAL_MEDIA - "A manga data moderator" - MANGA_DATA - "A retired moderator" - RETIRED - "A social media moderator" - SOCIAL_MEDIA + "An AniList administrator" + ADMIN + "An anime data moderator" + ANIME_DATA + "A community moderator" + COMMUNITY + "An AniList developer" + DEVELOPER + "A discord community moderator" + DISCORD_COMMUNITY + "A lead anime data moderator" + LEAD_ANIME_DATA + "A lead community moderator" + LEAD_COMMUNITY + "A head developer of AniList" + LEAD_DEVELOPER + "A lead manga data moderator" + LEAD_MANGA_DATA + "A lead social media moderator" + LEAD_SOCIAL_MEDIA + "A manga data moderator" + MANGA_DATA + "A retired moderator" + RETIRED + "A social media moderator" + SOCIAL_MEDIA } "Notification type enum" enum NotificationType { - "A user has liked your activity" - ACTIVITY_LIKE - "A user has mentioned you in their activity" - ACTIVITY_MENTION - "A user has sent you message" - ACTIVITY_MESSAGE - "A user has replied to your activity" - ACTIVITY_REPLY - "A user has liked your activity reply" - ACTIVITY_REPLY_LIKE - "A user has replied to activity you have also replied to" - ACTIVITY_REPLY_SUBSCRIBED - "An anime you are currently watching has aired" - AIRING - "A user has followed you" - FOLLOWING - "An anime or manga has had a data change that affects how a user may track it in their lists" - MEDIA_DATA_CHANGE - "An anime or manga on the user's list has been deleted from the site" - MEDIA_DELETION - "Anime or manga entries on the user's list have been merged into a single entry" - MEDIA_MERGE - "A new anime or manga has been added to the site where its related media is on the user's list" - RELATED_MEDIA_ADDITION - "A user has liked your forum comment" - THREAD_COMMENT_LIKE - "A user has mentioned you in a forum comment" - THREAD_COMMENT_MENTION - "A user has replied to your forum comment" - THREAD_COMMENT_REPLY - "A user has liked your forum thread" - THREAD_LIKE - "A user has commented in one of your subscribed forum threads" - THREAD_SUBSCRIBED + "A user has liked your activity" + ACTIVITY_LIKE + "A user has mentioned you in their activity" + ACTIVITY_MENTION + "A user has sent you message" + ACTIVITY_MESSAGE + "A user has replied to your activity" + ACTIVITY_REPLY + "A user has liked your activity reply" + ACTIVITY_REPLY_LIKE + "A user has replied to activity you have also replied to" + ACTIVITY_REPLY_SUBSCRIBED + "An anime you are currently watching has aired" + AIRING + "A user has followed you" + FOLLOWING + "An anime or manga has had a data change that affects how a user may track it in their lists" + MEDIA_DATA_CHANGE + "An anime or manga on the user's list has been deleted from the site" + MEDIA_DELETION + "Anime or manga entries on the user's list have been merged into a single entry" + MEDIA_MERGE + "A new anime or manga has been added to the site where its related media is on the user's list" + RELATED_MEDIA_ADDITION + "A user has liked your forum comment" + THREAD_COMMENT_LIKE + "A user has mentioned you in a forum comment" + THREAD_COMMENT_MENTION + "A user has replied to your forum comment" + THREAD_COMMENT_REPLY + "A user has liked your forum thread" + THREAD_LIKE + "A user has commented in one of your subscribed forum threads" + THREAD_SUBSCRIBED } "Recommendation rating enums" enum RecommendationRating { - NO_RATING - RATE_DOWN - RATE_UP + NO_RATING + RATE_DOWN + RATE_UP } "Recommendation sort enums" enum RecommendationSort { - ID - ID_DESC - RATING - RATING_DESC + ID + ID_DESC + RATING + RATING_DESC } "Review rating enums" enum ReviewRating { - DOWN_VOTE - NO_VOTE - UP_VOTE + DOWN_VOTE + NO_VOTE + UP_VOTE } "Review sort enums" enum ReviewSort { - CREATED_AT - CREATED_AT_DESC - ID - ID_DESC - RATING - RATING_DESC - SCORE - SCORE_DESC - UPDATED_AT - UPDATED_AT_DESC + CREATED_AT + CREATED_AT_DESC + ID + ID_DESC + RATING + RATING_DESC + SCORE + SCORE_DESC + UPDATED_AT + UPDATED_AT_DESC } "Revision history actions" enum RevisionHistoryAction { - CREATE - EDIT + CREATE + EDIT } "Media list scoring type" enum ScoreFormat { - "An integer from 0-10" - POINT_10 - "An integer from 0-100" - POINT_100 - "A float from 0-10 with 1 decimal place" - POINT_10_DECIMAL - "An integer from 0-3. Should be represented in Smileys. 0 => No Score, 1 => :(, 2 => :|, 3 => :)" - POINT_3 - "An integer from 0-5. Should be represented in Stars" - POINT_5 + "An integer from 0-10" + POINT_10 + "An integer from 0-100" + POINT_100 + "A float from 0-10 with 1 decimal place" + POINT_10_DECIMAL + "An integer from 0-3. Should be represented in Smileys. 0 => No Score, 1 => :(, 2 => :|, 3 => :)" + POINT_3 + "An integer from 0-5. Should be represented in Stars" + POINT_5 } "Site trend sort enums" enum SiteTrendSort { - CHANGE - CHANGE_DESC - COUNT - COUNT_DESC - DATE - DATE_DESC + CHANGE + CHANGE_DESC + COUNT + COUNT_DESC + DATE + DATE_DESC } "The primary language of the voice actor" enum StaffLanguage { - "English" - ENGLISH - "French" - FRENCH - "German" - GERMAN - "Hebrew" - HEBREW - "Hungarian" - HUNGARIAN - "Italian" - ITALIAN - "Japanese" - JAPANESE - "Korean" - KOREAN - "Portuguese" - PORTUGUESE - "Spanish" - SPANISH + "English" + ENGLISH + "French" + FRENCH + "German" + GERMAN + "Hebrew" + HEBREW + "Hungarian" + HUNGARIAN + "Italian" + ITALIAN + "Japanese" + JAPANESE + "Korean" + KOREAN + "Portuguese" + PORTUGUESE + "Spanish" + SPANISH } "Staff sort enums" enum StaffSort { - FAVOURITES - FAVOURITES_DESC - ID - ID_DESC - LANGUAGE - LANGUAGE_DESC - "Order manually decided by moderators" - RELEVANCE - ROLE - ROLE_DESC - SEARCH_MATCH + FAVOURITES + FAVOURITES_DESC + ID + ID_DESC + LANGUAGE + LANGUAGE_DESC + "Order manually decided by moderators" + RELEVANCE + ROLE + ROLE_DESC + SEARCH_MATCH } "Studio sort enums" enum StudioSort { - FAVOURITES - FAVOURITES_DESC - ID - ID_DESC - NAME - NAME_DESC - SEARCH_MATCH + FAVOURITES + FAVOURITES_DESC + ID + ID_DESC + NAME + NAME_DESC + SEARCH_MATCH } "Submission sort enums" enum SubmissionSort { - ID - ID_DESC + ID + ID_DESC } "Submission status" enum SubmissionStatus { - ACCEPTED - PARTIALLY_ACCEPTED - PENDING - REJECTED + ACCEPTED + PARTIALLY_ACCEPTED + PENDING + REJECTED } "Thread comments sort enums" enum ThreadCommentSort { - ID - ID_DESC + ID + ID_DESC } "Thread sort enums" enum ThreadSort { - CREATED_AT - CREATED_AT_DESC - ID - ID_DESC - IS_STICKY - REPLIED_AT - REPLIED_AT_DESC - REPLY_COUNT - REPLY_COUNT_DESC - SEARCH_MATCH - TITLE - TITLE_DESC - UPDATED_AT - UPDATED_AT_DESC - VIEW_COUNT - VIEW_COUNT_DESC + CREATED_AT + CREATED_AT_DESC + ID + ID_DESC + IS_STICKY + REPLIED_AT + REPLIED_AT_DESC + REPLY_COUNT + REPLY_COUNT_DESC + SEARCH_MATCH + TITLE + TITLE_DESC + UPDATED_AT + UPDATED_AT_DESC + VIEW_COUNT + VIEW_COUNT_DESC } "User sort enums" enum UserSort { - CHAPTERS_READ - CHAPTERS_READ_DESC - ID - ID_DESC - SEARCH_MATCH - USERNAME - USERNAME_DESC - WATCHED_TIME - WATCHED_TIME_DESC + CHAPTERS_READ + CHAPTERS_READ_DESC + ID + ID_DESC + SEARCH_MATCH + USERNAME + USERNAME_DESC + WATCHED_TIME + WATCHED_TIME_DESC } "The language the user wants to see staff and character names in" enum UserStaffNameLanguage { - "The staff or character's name in their native language" - NATIVE - "The romanization of the staff or character's native name" - ROMAJI - "The romanization of the staff or character's native name, with western name ordering" - ROMAJI_WESTERN + "The staff or character's name in their native language" + NATIVE + "The romanization of the staff or character's native name" + ROMAJI + "The romanization of the staff or character's native name, with western name ordering" + ROMAJI_WESTERN } "User statistics sort enum" enum UserStatisticsSort { - COUNT - COUNT_DESC - ID - ID_DESC - MEAN_SCORE - MEAN_SCORE_DESC - PROGRESS - PROGRESS_DESC + COUNT + COUNT_DESC + ID + ID_DESC + MEAN_SCORE + MEAN_SCORE_DESC + PROGRESS + PROGRESS_DESC } "The language the user wants to see media titles in" enum UserTitleLanguage { - "The official english title" - ENGLISH - "The official english title, stylised by media creator" - ENGLISH_STYLISED - "Official title in it's native language" - NATIVE - "Official title in it's native language, stylised by media creator" - NATIVE_STYLISED - "The romanization of the native language title" - ROMAJI - "The romanization of the native language title, stylised by media creator" - ROMAJI_STYLISED + "The official english title" + ENGLISH + "The official english title, stylised by media creator" + ENGLISH_STYLISED + "Official title in it's native language" + NATIVE + "Official title in it's native language, stylised by media creator" + NATIVE_STYLISED + "The romanization of the native language title" + ROMAJI + "The romanization of the native language title, stylised by media creator" + ROMAJI_STYLISED } "ISO 3166-1 alpha-2 country code" @@ -4618,96 +4689,101 @@ scalar FuzzyDateInt scalar Json input AiringScheduleInput { - airingAt: Int - episode: Int - timeUntilAiring: Int + airingAt: Int + episode: Int + timeUntilAiring: Int } input AniChartHighlightInput { - highlight: String - mediaId: Int + highlight: String + mediaId: Int } "The names of the character" input CharacterNameInput { - "Other names the character might be referred by" - alternative: [String] - "Other names the character might be referred to as but are spoilers" - alternativeSpoiler: [String] - "The character's given name" - first: String - "The character's surname" - last: String - "The character's middle name" - middle: String - "The character's full name in their native language" - native: String + "Other names the character might be referred by" + alternative: [String] + "Other names the character might be referred to as but are spoilers" + alternativeSpoiler: [String] + "The character's given name" + first: String + "The character's surname" + last: String + "The character's middle name" + middle: String + "The character's full name in their native language" + native: String } "Date object that allows for incomplete date values (fuzzy)" input FuzzyDateInput { - "Numeric Day (24)" - day: Int - "Numeric Month (3)" - month: Int - "Numeric Year (2017)" - year: Int + "Numeric Day (24)" + day: Int + "Numeric Month (3)" + month: Int + "Numeric Year (2017)" + year: Int +} + +input ListActivityOptionInput { + disabled: Boolean + type: MediaListStatus } "An external link to another site related to the media" input MediaExternalLinkInput { - "The id of the external link" - id: Int! - "The site location of the external link" - site: String! - "The url of the external link" - url: String! + "The id of the external link" + id: Int! + "The site location of the external link" + site: String! + "The url of the external link" + url: String! } "A user's list options for anime or manga lists" input MediaListOptionsInput { - "The names of the user's advanced scoring sections" - advancedScoring: [String] - "If advanced scoring is enabled" - advancedScoringEnabled: Boolean - "The names of the user's custom lists" - customLists: [String] - "The order each list should be displayed in" - sectionOrder: [String] - "If the completed sections of the list should be separated by format" - splitCompletedSectionByFormat: Boolean - "list theme" - theme: String + "The names of the user's advanced scoring sections" + advancedScoring: [String] + "If advanced scoring is enabled" + advancedScoringEnabled: Boolean + "The names of the user's custom lists" + customLists: [String] + "The order each list should be displayed in" + sectionOrder: [String] + "If the completed sections of the list should be separated by format" + splitCompletedSectionByFormat: Boolean + "list theme" + theme: String } "The official titles of the media in various languages" input MediaTitleInput { - "The official english title" - english: String - "Official title in it's native language" - native: String - "The romanization of the native language title" - romaji: String + "The official english title" + english: String + "Official title in it's native language" + native: String + "The romanization of the native language title" + romaji: String } "Notification option input" input NotificationOptionInput { - "Whether this type of notification is enabled" - enabled: Boolean - "The type of notification" - type: NotificationType + "Whether this type of notification is enabled" + enabled: Boolean + "The type of notification" + type: NotificationType } "The names of the staff member" input StaffNameInput { - "Other names the character might be referred by" - alternative: [String] - "The person's given name" - first: String - "The person's surname" - last: String - "The person's middle name" - middle: String - "The person's full name in their native language" - native: String + "Other names the character might be referred by" + alternative: [String] + "The person's given name" + first: String + "The person's surname" + last: String + "The person's middle name" + middle: String + "The person's full name in their native language" + native: String } diff --git a/src/AnimeClient/API/Kitsu/schema.graphql b/src/AnimeClient/API/Kitsu/schema.graphql index 77e16525..be73ebee 100644 --- a/src/AnimeClient/API/Kitsu/schema.graphql +++ b/src/AnimeClient/API/Kitsu/schema.graphql @@ -1,235 +1,257 @@ # This file was generated based on ".graphqlconfig". Do not edit manually. schema { - query: Query - mutation: Mutation + query: Query + mutation: Mutation } "Generic Amount Consumed based on Media" interface AmountConsumed { - "Total media completed atleast once." - completed: Int! - id: ID! - "Total amount of media." - media: Int! - "The profile related to the user for this stat." - profile: Profile! - "Last time we fully recalculated this stat." - recalculatedAt: ISO8601Date! - "Total progress of library including reconsuming." - units: Int! + "Total media completed atleast once." + completed: Int! + id: ID! + "Total amount of media." + media: Int! + "The profile related to the user for this stat." + profile: Profile! + "Last time we fully recalculated this stat." + recalculatedAt: ISO8601Date! + "Total progress of library including reconsuming." + units: Int! } "Generic Category Breakdown based on Media" interface CategoryBreakdown { - "A Map of category_id -> count for all categories present on the library entries" - categories: Map! - id: ID! - "The profile related to the user for this stat." - profile: Profile! - "Last time we fully recalculated this stat." - recalculatedAt: ISO8601Date! - "The total amount of library entries." - total: Int! + "A Map of category_id -> count for all categories present on the library entries" + categories: Map! + id: ID! + "The profile related to the user for this stat." + profile: Profile! + "Last time we fully recalculated this stat." + recalculatedAt: ISO8601Date! + "The total amount of library entries." + total: Int! } "An episodic media in the Kitsu database" interface Episodic { - "The number of episodes in this series" - episodeCount: Int - "The general length (in seconds) of each episode" - episodeLength: Int - "Episodes for this media" - episodes( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [EpisodeSortOption] - ): EpisodeConnection! - "The total length (in seconds) of the entire series" - totalLength: Int + "The number of episodes in this series" + episodeCount: Int + "The general length (in seconds) of each episode" + episodeLength: Int + "Episodes for this media" + episodes( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [EpisodeSortOption] + ): EpisodeConnection! + "The total length (in seconds) of the entire series" + totalLength: Int } "Generic error fields used by all errors." interface Error { - "The error code." - code: String - "A description of the error" - message: String! - "Which input value this error came from" - path: [String!] + "The error code." + code: String + "A description of the error" + message: String! + "Which input value this error came from" + path: [String!] } "A media in the Kitsu database" interface Media { - "The recommended minimum age group for this media" - ageRating: AgeRatingEnum - "An explanation of why this received the age rating it did" - ageRatingGuide: String - "The average rating of this media amongst all Kitsu users" - averageRating: Float - "A large banner image for this media" - bannerImage: Image! - "A list of categories for this media" - categories( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [MediaCategorySortOption] - ): CategoryConnection! - "The characters who starred in this media" - characters( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [MediaCharacterSortOption] - ): MediaCharacterConnection! - "A brief (mostly spoiler free) summary or description of the media." - description(locales: [String!]): Map! - "the day that this media made its final release" - endDate: Date - "The number of users with this in their favorites" - favoritesCount: Int - id: ID! - "A list of mappings for this media" - mappings( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): MappingConnection! - "Your library entry related to this media." - myLibraryEntry: LibraryEntry - "A list of your wiki submissions for this media" - myWikiSubmissions( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [WikiSubmissionSortOption] - ): WikiSubmissionConnection! - "The time of the next release of this media" - nextRelease: ISO8601DateTime - "The country in which the media was primarily produced" - originalLocale: String - "The poster image of this media" - posterImage: Image! - "The companies which helped to produce this media" - productions( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): MediaProductionConnection! - "A list of quotes from this media" - quotes( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): QuoteConnection! - "A list of reactions for this media" - reactions( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [MediaReactionSortOption] - ): MediaReactionConnection! - "Whether the media is Safe-for-Work" - sfw: Boolean! - "The URL-friendly identifier of this media" - slug: String! - "The staff members who worked on this media" - staff( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): MediaStaffConnection! - "The day that this media first released" - startDate: Date - "The current releasing status of this media" - status: ReleaseStatusEnum! - "Description of when this media is expected to release" - tba: String - "The titles for this media in various locales" - titles: TitlesList! - "Anime or Manga." - type: String! - "The number of users with this in their library" - userCount: Int + "The recommended minimum age group for this media" + ageRating: AgeRatingEnum + "An explanation of why this received the age rating it did" + ageRatingGuide: String + "The average rating of this media amongst all Kitsu users" + averageRating: Float + "The rank of this media by rating" + averageRatingRank: Int + "A large banner image for this media" + bannerImage: Image + "A list of categories for this media" + categories( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [MediaCategorySortOption] + ): CategoryConnection! + "The characters who starred in this media" + characters( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [MediaCharacterSortOption] + ): MediaCharacterConnection! + "A brief (mostly spoiler free) summary or description of the media." + description(locales: [String!]): Map! + "the day that this media made its final release" + endDate: Date + "The number of users with this in their favorites" + favoritesCount: Int + id: ID! + "A list of mappings for this media" + mappings( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): MappingConnection! + "Your library entry related to this media." + myLibraryEntry: LibraryEntry + "A list of your wiki submissions for this media" + myWikiSubmissions( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [WikiSubmissionSortOption] + ): WikiSubmissionConnection! + "The time of the next release of this media" + nextRelease: ISO8601DateTime + "The countries in which the media was originally primarily produced" + originCountries: [String!]! + "The languages the media was originally produced in" + originLanguages: [String!]! + "The country in which the media was primarily produced" + originalLocale: String @deprecated(reason: "Replaced with originCountries and originLanguages") + "The poster image of this media" + posterImage: Image + "All posts that tag this media." + posts( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [PostSortOption] + ): PostConnection! + "The companies which helped to produce this media" + productions( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): MediaProductionConnection! + "A list of quotes from this media" + quotes( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): QuoteConnection! + "A list of reactions for this media" + reactions( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [MediaReactionSortOption] + ): MediaReactionConnection! + "Whether the media is Safe-for-Work" + sfw: Boolean! + "The URL-friendly identifier of this media" + slug: String! + "The staff members who worked on this media" + staff( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): MediaStaffConnection! + "The day that this media first released" + startDate: Date + "The current releasing status of this media" + status: ReleaseStatusEnum! + "Description of when this media is expected to release" + tba: String + "The titles for this media in various locales" + titles: TitlesList! + "Anime or Manga." + type: String! + "The number of users with this in their library" + userCount: Int + "The rank of this media by popularity" + userCountRank: Int } "Media that is streamable." interface Streamable { - "Spoken language is replaced by language of choice." - dubs: [String!]! - "Which regions this video is available in." - regions: [String!]! - "The site that is streaming this media." - streamer: Streamer! - "Languages this is translated to. Usually placed at bottom of media." - subs: [String!]! + "Spoken language is replaced by language of choice." + dubs: [String!]! + "Which regions this video is available in." + regions: [String!]! + "The site that is streaming this media." + streamer: Streamer! + "Languages this is translated to. Usually placed at bottom of media." + subs: [String!]! } "Media units such as episodes or chapters" interface Unit { - "A brief summary or description of the unit" - description(locales: [String!]): Map! - id: ID! - "The sequence number of this unit" - number: Int! - "A thumbnail image for the unit" - thumbnail: Image - "The titles for this unit in various locales" - titles: TitlesList! + "A brief summary or description of the unit" + description(locales: [String!]): Map! + id: ID! + "The sequence number of this unit" + number: Int! + "A thumbnail image for the unit" + thumbnail: Image + "The titles for this unit in various locales" + titles: TitlesList! } interface WithTimestamps { - createdAt: ISO8601DateTime! - updatedAt: ISO8601DateTime! + createdAt: ISO8601DateTime! + updatedAt: ISO8601DateTime! } +union AccountCreateErrorsUnion = ValidationError + "Objects which are Favoritable" union FavoriteItemUnion = Anime | Character | Manga | Person @@ -241,3140 +263,2977 @@ union ReportItemUnion = Comment | MediaReaction | Post | Review "A user account on Kitsu" type Account implements WithTimestamps { - "The country this user resides in" - country: String - createdAt: ISO8601DateTime! - "The email addresses associated with this account" - email: [String!]! - "The features this user has access to" - enabledFeatures: [String!]! - "Facebook account linked to the account" - facebookId: String - id: ID! - "Primary language for the account" - language: String - "Longest period an account has had a PRO subscription for in seconds" - maxProStreak: Int - "The PRO subscription for this account" - proSubscription: ProSubscription - "The profile for this account" - profile: Profile! - "Media rating system used for the account" - ratingSystem: RatingSystemEnum! - "Whether Not Safe For Work content is accessible" - sfwFilter: Boolean - "The site-wide permissions this user has access to" - sitePermissions: [SitePermissionEnum!]! - "Time zone of the account" - timeZone: String - "Preferred language for media titles" - titleLanguagePreference: TitleLanguagePreferenceEnum - "Twitter account linked to the account" - twitterId: String - updatedAt: ISO8601DateTime! + "The country this user resides in" + country: String + createdAt: ISO8601DateTime! + "The email addresses associated with this account" + email: [String!]! + "The features this user has access to" + enabledFeatures: [String!]! + "Facebook account linked to the account" + facebookId: String + id: ID! + "Primary language for the account" + language: String + "Longest period an account has had a PRO subscription for in seconds" + maxProStreak: Int + "The PRO subscription for this account" + proSubscription: ProSubscription + "The profile for this account" + profile: Profile! + "Media rating system used for the account" + ratingSystem: RatingSystemEnum! + "Whether Not Safe For Work content is accessible" + sfwFilter: Boolean + "The site-wide permissions this user has access to" + sitePermissions: [SitePermissionEnum!]! + "Time zone of the account" + timeZone: String + "Preferred language for media titles" + titleLanguagePreference: TitleLanguagePreferenceEnum + "Twitter account linked to the account" + twitterId: String + updatedAt: ISO8601DateTime! +} + +"Autogenerated return type of AccountCreate" +type AccountCreatePayload { + errors: [AccountCreateErrorsUnion!] + result: Account } type AccountMutations { - "Send a password reset email" - sendPasswordReset( - "The email address to reset the password for" - email: String! - ): AccountSendPasswordResetPayload + "Send a password reset email" + sendPasswordReset( + "The email address to reset the password for" + email: String! + ): AccountSendPasswordResetPayload } "Autogenerated return type of AccountSendPasswordReset" type AccountSendPasswordResetPayload { - email: String! + email: String! } type Anime implements Episodic & Media & WithTimestamps { - "The recommended minimum age group for this media" - ageRating: AgeRatingEnum - "An explanation of why this received the age rating it did" - ageRatingGuide: String - "The average rating of this media amongst all Kitsu users" - averageRating: Float - "A large banner image for this media" - bannerImage: Image! - "A list of categories for this media" - categories( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [MediaCategorySortOption] - ): CategoryConnection! - "The characters who starred in this media" - characters( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [MediaCharacterSortOption] - ): MediaCharacterConnection! - createdAt: ISO8601DateTime! - "A brief (mostly spoiler free) summary or description of the media." - description(locales: [String!]): Map! - "the day that this media made its final release" - endDate: Date - "The number of episodes in this series" - episodeCount: Int - "The general length (in seconds) of each episode" - episodeLength: Int - "Episodes for this media" - episodes( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [EpisodeSortOption] - ): EpisodeConnection! - "The number of users with this in their favorites" - favoritesCount: Int - id: ID! - "A list of mappings for this media" - mappings( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): MappingConnection! - "Your library entry related to this media." - myLibraryEntry: LibraryEntry - "A list of your wiki submissions for this media" - myWikiSubmissions( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [WikiSubmissionSortOption] - ): WikiSubmissionConnection! - "The time of the next release of this media" - nextRelease: ISO8601DateTime - "The country in which the media was primarily produced" - originalLocale: String - "The poster image of this media" - posterImage: Image! - "The companies which helped to produce this media" - productions( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): MediaProductionConnection! - "A list of quotes from this media" - quotes( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): QuoteConnection! - "A list of reactions for this media" - reactions( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [MediaReactionSortOption] - ): MediaReactionConnection! - "The season this was released in" - season: ReleaseSeasonEnum - "Whether the media is Safe-for-Work" - sfw: Boolean! - "The URL-friendly identifier of this media" - slug: String! - "The staff members who worked on this media" - staff( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): MediaStaffConnection! - "The day that this media first released" - startDate: Date - "The current releasing status of this media" - status: ReleaseStatusEnum! - "The stream links." - streamingLinks( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): StreamingLinkConnection! - "A secondary type for categorizing Anime." - subtype: AnimeSubtypeEnum! - "Description of when this media is expected to release" - tba: String - "The titles for this media in various locales" - titles: TitlesList! - "The total length (in seconds) of the entire series" - totalLength: Int - "Anime or Manga." - type: String! - updatedAt: ISO8601DateTime! - "The number of users with this in their library" - userCount: Int - "Video id for a trailer on YouTube" - youtubeTrailerVideoId: String + "The recommended minimum age group for this media" + ageRating: AgeRatingEnum + "An explanation of why this received the age rating it did" + ageRatingGuide: String + "The average rating of this media amongst all Kitsu users" + averageRating: Float + "The rank of this media by rating" + averageRatingRank: Int + "A large banner image for this media" + bannerImage: Image + "A list of categories for this media" + categories( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [MediaCategorySortOption] + ): CategoryConnection! + "The characters who starred in this media" + characters( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [MediaCharacterSortOption] + ): MediaCharacterConnection! + createdAt: ISO8601DateTime! + "A brief (mostly spoiler free) summary or description of the media." + description(locales: [String!]): Map! + "the day that this media made its final release" + endDate: Date + "The number of episodes in this series" + episodeCount: Int + "The general length (in seconds) of each episode" + episodeLength: Int + "Episodes for this media" + episodes( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [EpisodeSortOption] + ): EpisodeConnection! + "The number of users with this in their favorites" + favoritesCount: Int + id: ID! + "A list of mappings for this media" + mappings( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): MappingConnection! + "Your library entry related to this media." + myLibraryEntry: LibraryEntry + "A list of your wiki submissions for this media" + myWikiSubmissions( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [WikiSubmissionSortOption] + ): WikiSubmissionConnection! + "The time of the next release of this media" + nextRelease: ISO8601DateTime + "The countries in which the media was originally primarily produced" + originCountries: [String!]! + "The languages the media was originally produced in" + originLanguages: [String!]! + "The country in which the media was primarily produced" + originalLocale: String @deprecated(reason: "Replaced with originCountries and originLanguages") + "The poster image of this media" + posterImage: Image + "All posts that tag this media." + posts( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [PostSortOption] + ): PostConnection! + "The companies which helped to produce this media" + productions( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): MediaProductionConnection! + "A list of quotes from this media" + quotes( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): QuoteConnection! + "A list of reactions for this media" + reactions( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [MediaReactionSortOption] + ): MediaReactionConnection! + "The season this was released in" + season: ReleaseSeasonEnum + "Whether the media is Safe-for-Work" + sfw: Boolean! + "The URL-friendly identifier of this media" + slug: String! + "The staff members who worked on this media" + staff( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): MediaStaffConnection! + "The day that this media first released" + startDate: Date + "The current releasing status of this media" + status: ReleaseStatusEnum! + "The stream links." + streamingLinks( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): StreamingLinkConnection! + "A secondary type for categorizing Anime." + subtype: AnimeSubtypeEnum! + "Description of when this media is expected to release" + tba: String + "The titles for this media in various locales" + titles: TitlesList! + "The total length (in seconds) of the entire series" + totalLength: Int + "Anime or Manga." + type: String! + updatedAt: ISO8601DateTime! + "The number of users with this in their library" + userCount: Int + "The rank of this media by popularity" + userCountRank: Int + "Video id for a trailer on YouTube" + youtubeTrailerVideoId: String } type AnimeAmountConsumed implements AmountConsumed { - "Total media completed atleast once." - completed: Int! - id: ID! - "Total amount of media." - media: Int! - "The profile related to the user for this stat." - profile: Profile! - "Last time we fully recalculated this stat." - recalculatedAt: ISO8601Date! - "Total time spent in minutes." - time: Int! - "Total progress of library including reconsuming." - units: Int! + "Total media completed atleast once." + completed: Int! + id: ID! + "Total amount of media." + media: Int! + "The profile related to the user for this stat." + profile: Profile! + "Last time we fully recalculated this stat." + recalculatedAt: ISO8601Date! + "Total time spent in minutes." + time: Int! + "Total progress of library including reconsuming." + units: Int! } type AnimeCategoryBreakdown implements CategoryBreakdown { - "A Map of category_id -> count for all categories present on the library entries" - categories: Map! - id: ID! - "The profile related to the user for this stat." - profile: Profile! - "Last time we fully recalculated this stat." - recalculatedAt: ISO8601Date! - "The total amount of library entries." - total: Int! + "A Map of category_id -> count for all categories present on the library entries" + categories: Map! + id: ID! + "The profile related to the user for this stat." + profile: Profile! + "Last time we fully recalculated this stat." + recalculatedAt: ISO8601Date! + "The total amount of library entries." + total: Int! } "The connection type for Anime." type AnimeConnection { - "A list of edges." - edges: [AnimeEdge] - "A list of nodes." - nodes: [Anime] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [AnimeEdge] + "A list of nodes." + nodes: [Anime] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "Autogenerated return type of AnimeCreate" type AnimeCreatePayload { - anime: Anime - errors: [Error!] + anime: Anime + errors: [Error!] } "Autogenerated return type of AnimeDelete" type AnimeDeletePayload { - anime: GenericDelete - errors: [Error!] + anime: GenericDelete + errors: [Error!] } "An edge in a connection." type AnimeEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Anime + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Anime } type AnimeMutations { - "Create an Anime." - create( - "Create an Anime." - input: AnimeCreateInput! - ): AnimeCreatePayload - "Delete an Anime." - delete( - "Delete an Anime." - input: GenericDeleteInput! - ): AnimeDeletePayload - "Update an Anime." - update( - "Update an Anime." - input: AnimeUpdateInput! - ): AnimeUpdatePayload + "Create an Anime." + create( + "Create an Anime." + input: AnimeCreateInput! + ): AnimeCreatePayload + "Delete an Anime." + delete( + "Delete an Anime." + input: GenericDeleteInput! + ): AnimeDeletePayload + "Update an Anime." + update( + "Update an Anime." + input: AnimeUpdateInput! + ): AnimeUpdatePayload } "Autogenerated return type of AnimeUpdate" type AnimeUpdatePayload { - anime: Anime - errors: [Error!] + anime: Anime + errors: [Error!] } "Information about a specific Category" type Category implements WithTimestamps { - "The child categories." - children( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): CategoryConnection - createdAt: ISO8601DateTime! - "A brief summary or description of the catgory." - description(locales: [String!]): Map! - id: ID! - "Whether the category is Not-Safe-for-Work." - isNsfw: Boolean! - "The parent category. Each category can have one parent." - parent: Category - "The top-level ancestor category" - root: Category - "The URL-friendly identifier of this Category." - slug: String! - "The name of the category." - title(locales: [String!]): Map! - updatedAt: ISO8601DateTime! + "The child categories." + children( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): CategoryConnection + createdAt: ISO8601DateTime! + "A brief summary or description of the catgory." + description(locales: [String!]): Map! + id: ID! + "Whether the category is Not-Safe-for-Work." + isNsfw: Boolean! + "The parent category. Each category can have one parent." + parent: Category + "The top-level ancestor category" + root: Category + "The URL-friendly identifier of this Category." + slug: String! + "The name of the category." + title(locales: [String!]): Map! + updatedAt: ISO8601DateTime! } "The connection type for Category." type CategoryConnection { - "A list of edges." - edges: [CategoryEdge] - "A list of nodes." - nodes: [Category] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [CategoryEdge] + "A list of nodes." + nodes: [Category] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type CategoryEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Category + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Category } "A single chapter of a manga" type Chapter implements Unit & WithTimestamps { - createdAt: ISO8601DateTime! - "A brief summary or description of the unit" - description(locales: [String!]): Map! - id: ID! - "The manga this chapter is in." - manga: Manga! - "The sequence number of this unit" - number: Int! - "When this chapter was released" - releasedAt: ISO8601Date - "A thumbnail image for the unit" - thumbnail: Image - "The titles for this unit in various locales" - titles: TitlesList! - updatedAt: ISO8601DateTime! - "The volume this chapter is in." - volume: Volume + createdAt: ISO8601DateTime! + "A brief summary or description of the unit" + description(locales: [String!]): Map! + id: ID! + "The manga this chapter is in." + manga: Manga! + "The sequence number of this unit" + number: Int! + "When this chapter was released" + releasedAt: ISO8601Date + "A thumbnail image for the unit" + thumbnail: Image + "The titles for this unit in various locales" + titles: TitlesList! + updatedAt: ISO8601DateTime! + "The volume this chapter is in." + volume: Volume } "The connection type for Chapter." type ChapterConnection { - "A list of edges." - edges: [ChapterEdge] - "A list of nodes." - nodes: [Chapter] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [ChapterEdge] + "A list of nodes." + nodes: [Chapter] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type ChapterEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Chapter + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Chapter } "Information about a Character in the Kitsu database" type Character implements WithTimestamps { - createdAt: ISO8601DateTime! - "A brief summary or description of the character." - description(locales: [String!]): Map! - id: ID! - "An image of the character" - image: Image - "Media this character appears in." - media( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): MediaCharacterConnection - "The name for this character in various locales" - names: TitlesList - "The original media this character showed up in" - primaryMedia: Media - "The URL-friendly identifier of this character" - slug: String! - updatedAt: ISO8601DateTime! + createdAt: ISO8601DateTime! + "A brief summary or description of the character." + description(locales: [String!]): Map! + id: ID! + "An image of the character" + image: Image + "Media this character appears in." + media( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): MediaCharacterConnection + "The name for this character in various locales" + names: TitlesList + "The original media this character showed up in" + primaryMedia: Media + "The URL-friendly identifier of this character" + slug: String! + updatedAt: ISO8601DateTime! } "Information about a VA (Person) voicing a Character in a Media" type CharacterVoice implements WithTimestamps { - createdAt: ISO8601DateTime! - id: ID! - "The company who hired this voice actor to play this role" - licensor: Producer - "The BCP47 locale tag for the voice acting role" - locale: String! - "The MediaCharacter node" - mediaCharacter: MediaCharacter! - "The person who voice acted this role" - person: Person! - updatedAt: ISO8601DateTime! + createdAt: ISO8601DateTime! + id: ID! + "The company who hired this voice actor to play this role" + licensor: Producer + "The BCP47 locale tag for the voice acting role" + locale: String! + "The MediaCharacter node" + mediaCharacter: MediaCharacter! + "The person who voice acted this role" + person: Person! + updatedAt: ISO8601DateTime! } "The connection type for CharacterVoice." type CharacterVoiceConnection { - "A list of edges." - edges: [CharacterVoiceEdge] - "A list of nodes." - nodes: [CharacterVoice] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [CharacterVoiceEdge] + "A list of nodes." + nodes: [CharacterVoice] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type CharacterVoiceEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: CharacterVoice + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: CharacterVoice } "A comment on a post" type Comment implements WithTimestamps { - "The user who created this comment for the parent post." - author: Profile! - "Unmodified content." - content: String - "Html formatted content." - contentFormatted: String - createdAt: ISO8601DateTime! - id: ID! - "Users who liked this comment" - likes( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [CommentLikeSortOption] - ): ProfileConnection! - "The parent comment if this comment was a reply to another." - parent: Comment - "The post that this comment is attached to." - post: Post! - "Replies to this comment" - replies( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [CommentSortOption] - ): CommentConnection! - updatedAt: ISO8601DateTime! + "The user who created this comment for the parent post." + author: Profile! + "Unmodified content." + content: String + "Html formatted content." + contentFormatted: String + createdAt: ISO8601DateTime! + id: ID! + "Users who liked this comment" + likes( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [CommentLikeSortOption] + ): ProfileConnection! + "The parent comment if this comment was a reply to another." + parent: Comment + "The post that this comment is attached to." + post: Post! + "Replies to this comment" + replies( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [CommentSortOption] + ): CommentConnection! + updatedAt: ISO8601DateTime! } "The connection type for Comment." type CommentConnection { - "A list of edges." - edges: [CommentEdge] - "A list of nodes." - nodes: [Comment] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [CommentEdge] + "A list of nodes." + nodes: [Comment] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type CommentEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Comment + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Comment } "An Episode of a Media" type Episode implements Unit & WithTimestamps { - "The anime this episode is in" - anime: Anime! - createdAt: ISO8601DateTime! - "A brief summary or description of the unit" - description(locales: [String!]): Map! - id: ID! - "The length of the episode in seconds" - length: Int - "The sequence number of this unit" - number: Int! - "When this episode aired" - releasedAt: ISO8601DateTime - "A thumbnail image for the unit" - thumbnail: Image - "The titles for this unit in various locales" - titles: TitlesList! - updatedAt: ISO8601DateTime! + "The anime this episode is in" + anime: Anime! + createdAt: ISO8601DateTime! + "A brief summary or description of the unit" + description(locales: [String!]): Map! + id: ID! + "The length of the episode in seconds" + length: Int + "The sequence number of this unit" + number: Int! + "When this episode aired" + releasedAt: ISO8601DateTime + "A thumbnail image for the unit" + thumbnail: Image + "The titles for this unit in various locales" + titles: TitlesList! + updatedAt: ISO8601DateTime! } "The connection type for Episode." type EpisodeConnection { - "A list of edges." - edges: [EpisodeEdge] - "A list of nodes." - nodes: [Episode] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [EpisodeEdge] + "A list of nodes." + nodes: [Episode] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "Autogenerated return type of EpisodeCreate" type EpisodeCreatePayload { - episode: Episode - errors: [Error!] + episode: Episode + errors: [Error!] } "Autogenerated return type of EpisodeDelete" type EpisodeDeletePayload { - episode: GenericDelete - errors: [Error!] + episode: GenericDelete + errors: [Error!] } "An edge in a connection." type EpisodeEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Episode + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Episode } type EpisodeMutations { - "Create an Episode." - create( - "Create an Episode" - input: EpisodeCreateInput! - ): EpisodeCreatePayload - "Delete an Episode." - delete( - "Delete an Episode" - input: GenericDeleteInput! - ): EpisodeDeletePayload - "Update an Episode." - update( - "Update an Episode" - input: EpisodeUpdateInput! - ): EpisodeUpdatePayload + "Create an Episode." + create( + "Create an Episode" + input: EpisodeCreateInput! + ): EpisodeCreatePayload + "Delete an Episode." + delete( + "Delete an Episode" + input: GenericDeleteInput! + ): EpisodeDeletePayload + "Update an Episode." + update( + "Update an Episode" + input: EpisodeUpdateInput! + ): EpisodeUpdatePayload } "Autogenerated return type of EpisodeUpdate" type EpisodeUpdatePayload { - episode: Episode - errors: [Error!] + episode: Episode + errors: [Error!] } "Favorite media, characters, and people for a user" type Favorite implements WithTimestamps { - createdAt: ISO8601DateTime! - id: ID! - "The kitsu object that is mapped" - item: FavoriteItemUnion! - updatedAt: ISO8601DateTime! - "The user who favorited this item" - user: Profile! + createdAt: ISO8601DateTime! + id: ID! + "The kitsu object that is mapped" + item: FavoriteItemUnion! + updatedAt: ISO8601DateTime! + "The user who favorited this item" + user: Profile! } "The connection type for Favorite." type FavoriteConnection { - "A list of edges." - edges: [FavoriteEdge] - "A list of nodes." - nodes: [Favorite] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [FavoriteEdge] + "A list of nodes." + nodes: [Favorite] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type FavoriteEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Favorite + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Favorite } "Related media grouped together" type Franchise implements WithTimestamps { - createdAt: ISO8601DateTime! - id: ID! - "All media related to a franchise" - installments( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [InstallmentSortOption] - ): InstallmentConnection - "The name of this franchise in various languages" - titles: TitlesList! - updatedAt: ISO8601DateTime! + createdAt: ISO8601DateTime! + id: ID! + "All media related to a franchise" + installments( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [InstallmentSortOption] + ): InstallmentConnection + "The name of this franchise in various languages" + titles: TitlesList! + updatedAt: ISO8601DateTime! } "The connection type for Franchise." type FranchiseConnection { - "A list of edges." - edges: [FranchiseEdge] - "A list of nodes." - nodes: [Franchise] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [FranchiseEdge] + "A list of nodes." + nodes: [Franchise] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type FranchiseEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Franchise -} - -type Generic implements Error { - "The error code." - code: String - "A description of the error" - message: String! - "Which input value this error came from" - path: [String!] + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Franchise } type GenericDelete { - id: ID! + id: ID! +} + +type GenericError implements Error { + "The error code." + code: String + "A description of the error" + message: String! + "Which input value this error came from" + path: [String!] } type Image { - "A blurhash-encoded version of this image" - blurhash: String - "The original image" - original: ImageView! - "The various generated views of this image" - views(names: [String!]): [ImageView!]! + "A blurhash-encoded version of this image" + blurhash: String + "The original image" + original: ImageView! + "The various generated views of this image" + views(names: [String!]): [ImageView!]! } type ImageView { - "The height of the image" - height: Int - "The name of this view of the image" - name: String! - "The URL of this view of the image" - url: String! - "The width of the image" - width: Int + "The height of the image" + height: Int + "The name of this view of the image" + name: String! + "The URL of this view of the image" + url: String! + "The width of the image" + width: Int } "Individual media that belongs to a franchise" type Installment implements WithTimestamps { - "Order based chronologically" - alternativeOrder: Int - createdAt: ISO8601DateTime! - "The franchise related to this installment" - franchise: Franchise! - id: ID! - "The media related to this installment" - media: Media! - "Order based by date released" - releaseOrder: Int - "Further explains the media relationship corresponding to a franchise" - tag: InstallmentTagEnum - updatedAt: ISO8601DateTime! + "Order based chronologically" + alternativeOrder: Int + createdAt: ISO8601DateTime! + "The franchise related to this installment" + franchise: Franchise! + id: ID! + "The media related to this installment" + media: Media! + "Order based by date released" + releaseOrder: Int + "Further explains the media relationship corresponding to a franchise" + tag: InstallmentTagEnum + updatedAt: ISO8601DateTime! } "The connection type for Installment." type InstallmentConnection { - "A list of edges." - edges: [InstallmentEdge] - "A list of nodes." - nodes: [Installment] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [InstallmentEdge] + "A list of nodes." + nodes: [Installment] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type InstallmentEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Installment + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Installment } "The user library filterable by media_type and status" type Library { - "All Library Entries for a specific Media" - all( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - mediaType: MediaTypeEnum!, - status: [LibraryEntryStatusEnum!] - ): LibraryEntryConnection! - "Library Entries for a specific Media filtered by the completed status" - completed( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - mediaType: MediaTypeEnum! - ): LibraryEntryConnection! - "Library Entries for a specific Media filtered by the current status" - current( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - mediaType: MediaTypeEnum! - ): LibraryEntryConnection! - "Library Entries for a specific Media filtered by the dropped status" - dropped( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - mediaType: MediaTypeEnum! - ): LibraryEntryConnection! - "Library Entries for a specific Media filtered by the on_hold status" - onHold( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - mediaType: MediaTypeEnum! - ): LibraryEntryConnection! - "Library Entries for a specific Media filtered by the planned status" - planned( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - mediaType: MediaTypeEnum! - ): LibraryEntryConnection! - "Random anime or manga from this library" - randomMedia(mediaType: MediaTypeEnum!, status: [LibraryEntryStatusEnum!]!): Media + "All Library Entries for a specific Media" + all( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + mediaType: MediaTypeEnum!, + status: [LibraryEntryStatusEnum!] + ): LibraryEntryConnection! + "Library Entries for a specific Media filtered by the completed status" + completed( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + mediaType: MediaTypeEnum! + ): LibraryEntryConnection! + "Library Entries for a specific Media filtered by the current status" + current( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + mediaType: MediaTypeEnum! + ): LibraryEntryConnection! + "Library Entries for a specific Media filtered by the dropped status" + dropped( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + mediaType: MediaTypeEnum! + ): LibraryEntryConnection! + "Library Entries for a specific Media filtered by the on_hold status" + onHold( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + mediaType: MediaTypeEnum! + ): LibraryEntryConnection! + "Library Entries for a specific Media filtered by the planned status" + planned( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + mediaType: MediaTypeEnum! + ): LibraryEntryConnection! + "Random anime or manga from this library" + randomMedia(mediaType: MediaTypeEnum!, status: [LibraryEntryStatusEnum!]!): Media } "Information about a specific media entry for a user" type LibraryEntry implements WithTimestamps { - createdAt: ISO8601DateTime! - "History of user actions for this library entry." - events( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - mediaTypes: [MediaTypeEnum!] = [ANIME] - ): LibraryEventConnection - "When the user finished this media." - finishedAt: ISO8601DateTime - id: ID! - "The last unit consumed" - lastUnit: Unit - "The media related to this library entry." - media: Media! - "The next unit to be consumed" - nextUnit: Unit - "Notes left by the profile related to this library entry." - notes: String - "If the media related to the library entry is Not-Safe-for-Work." - nsfw: Boolean! - "If this library entry is publicly visibile from their profile, or hidden." - private: Boolean! - "The number of episodes/chapters this user has watched/read" - progress: Int! - "When the user last watched an episode or read a chapter of this media." - progressedAt: ISO8601DateTime - "How much you enjoyed this media (lower meaning not liking)." - rating: Int - "The reaction based on the media of this library entry." - reaction: MediaReaction - "Amount of times this media has been rewatched." - reconsumeCount: Int! - "If the profile is currently rewatching this media." - reconsuming: Boolean! - "When the user started this media." - startedAt: ISO8601DateTime - status: LibraryEntryStatusEnum! - updatedAt: ISO8601DateTime! - "The user who created this library entry." - user: Profile! - "Volumes that the profile owns (physically or digital)." - volumesOwned: Int! + createdAt: ISO8601DateTime! + "History of user actions for this library entry." + events( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + mediaTypes: [MediaTypeEnum!] = [ANIME] + ): LibraryEventConnection + "When the user finished this media." + finishedAt: ISO8601DateTime + id: ID! + "The last unit consumed" + lastUnit: Unit + "The media related to this library entry." + media: Media! + "The next unit to be consumed" + nextUnit: Unit + "Notes left by the profile related to this library entry." + notes: String + "If the media related to the library entry is Not-Safe-for-Work." + nsfw: Boolean! + "If this library entry is publicly visibile from their profile, or hidden." + private: Boolean! + "The number of episodes/chapters this user has watched/read" + progress: Int! + "When the user last watched an episode or read a chapter of this media." + progressedAt: ISO8601DateTime + "How much you enjoyed this media (lower meaning not liking)." + rating: Int + "The reaction based on the media of this library entry." + reaction: MediaReaction + "Amount of times this media has been rewatched." + reconsumeCount: Int! + "If the profile is currently rewatching this media." + reconsuming: Boolean! + "When the user started this media." + startedAt: ISO8601DateTime + status: LibraryEntryStatusEnum! + updatedAt: ISO8601DateTime! + "The user who created this library entry." + user: Profile! + "Volumes that the profile owns (physically or digital)." + volumesOwned: Int! } "The connection type for LibraryEntry." type LibraryEntryConnection { - "A list of edges." - edges: [LibraryEntryEdge] - "A list of nodes." - nodes: [LibraryEntry] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [LibraryEntryEdge] + "A list of nodes." + nodes: [LibraryEntry] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "Autogenerated return type of LibraryEntryCreate" type LibraryEntryCreatePayload { - errors: [Error!] - libraryEntry: LibraryEntry + errors: [Error!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryDelete" type LibraryEntryDeletePayload { - errors: [Error!] - libraryEntry: GenericDelete + errors: [Error!] + libraryEntry: GenericDelete } "An edge in a connection." type LibraryEntryEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: LibraryEntry + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: LibraryEntry } type LibraryEntryMutations { - "Create a library entry" - create( - "Create a Library Entry" - input: LibraryEntryCreateInput! - ): LibraryEntryCreatePayload - "Delete a library entry" - delete( - "Delete Library Entry" - input: GenericDeleteInput! - ): LibraryEntryDeletePayload - "Update a library entry" - update( - "Update Library Entry" - input: LibraryEntryUpdateInput! - ): LibraryEntryUpdatePayload - "Update library entry progress by id" - updateProgressById( - "Update library entry progress by id" - input: LibraryEntryUpdateProgressByIdInput! - ): LibraryEntryUpdateProgressByIdPayload - "Update library entry progress by media" - updateProgressByMedia( - "Update library entry progress by media" - input: LibraryEntryUpdateProgressByMediaInput! - ): LibraryEntryUpdateProgressByMediaPayload - "Update library entry rating by id" - updateRatingById( - "Update library entry rating by id" - input: LibraryEntryUpdateRatingByIdInput! - ): LibraryEntryUpdateRatingByIdPayload - "Update library entry rating by media" - updateRatingByMedia( - "Update library entry rating by media" - input: LibraryEntryUpdateRatingByMediaInput! - ): LibraryEntryUpdateRatingByMediaPayload - "Update library entry status by id" - updateStatusById( - "Update library entry status by id" - input: LibraryEntryUpdateStatusByIdInput! - ): LibraryEntryUpdateStatusByIdPayload - "Update library entry status by media" - updateStatusByMedia( - "Update library entry status by media" - input: LibraryEntryUpdateStatusByMediaInput! - ): LibraryEntryUpdateStatusByMediaPayload + "Create a library entry" + create( + "Create a Library Entry" + input: LibraryEntryCreateInput! + ): LibraryEntryCreatePayload + "Delete a library entry" + delete( + "Delete Library Entry" + input: GenericDeleteInput! + ): LibraryEntryDeletePayload + "Update a library entry" + update( + "Update Library Entry" + input: LibraryEntryUpdateInput! + ): LibraryEntryUpdatePayload + "Update library entry progress by id" + updateProgressById( + "Update library entry progress by id" + input: LibraryEntryUpdateProgressByIdInput! + ): LibraryEntryUpdateProgressByIdPayload + "Update library entry progress by media" + updateProgressByMedia( + "Update library entry progress by media" + input: LibraryEntryUpdateProgressByMediaInput! + ): LibraryEntryUpdateProgressByMediaPayload + "Update library entry rating by id" + updateRatingById( + "Update library entry rating by id" + input: LibraryEntryUpdateRatingByIdInput! + ): LibraryEntryUpdateRatingByIdPayload + "Update library entry rating by media" + updateRatingByMedia( + "Update library entry rating by media" + input: LibraryEntryUpdateRatingByMediaInput! + ): LibraryEntryUpdateRatingByMediaPayload + "Update library entry status by id" + updateStatusById( + "Update library entry status by id" + input: LibraryEntryUpdateStatusByIdInput! + ): LibraryEntryUpdateStatusByIdPayload + "Update library entry status by media" + updateStatusByMedia( + "Update library entry status by media" + input: LibraryEntryUpdateStatusByMediaInput! + ): LibraryEntryUpdateStatusByMediaPayload } "Autogenerated return type of LibraryEntryUpdate" type LibraryEntryUpdatePayload { - errors: [Error!] - libraryEntry: LibraryEntry + errors: [Error!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryUpdateProgressById" type LibraryEntryUpdateProgressByIdPayload { - errors: [Error!] - libraryEntry: LibraryEntry + errors: [Error!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryUpdateProgressByMedia" type LibraryEntryUpdateProgressByMediaPayload { - errors: [Error!] - libraryEntry: LibraryEntry + errors: [Error!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryUpdateRatingById" type LibraryEntryUpdateRatingByIdPayload { - errors: [Error!] - libraryEntry: LibraryEntry + errors: [Error!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryUpdateRatingByMedia" type LibraryEntryUpdateRatingByMediaPayload { - errors: [Error!] - libraryEntry: LibraryEntry + errors: [Error!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryUpdateStatusById" type LibraryEntryUpdateStatusByIdPayload { - errors: [Error!] - libraryEntry: LibraryEntry + errors: [Error!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryUpdateStatusByMedia" type LibraryEntryUpdateStatusByMediaPayload { - errors: [Error!] - libraryEntry: LibraryEntry + errors: [Error!] + libraryEntry: LibraryEntry } "History of user actions for a library entry." type LibraryEvent implements WithTimestamps { - "The data that was changed for this library event." - changedData: Map! - createdAt: ISO8601DateTime! - id: ID! - "The type of library event." - kind: LibraryEventKindEnum! - "The library entry related to this library event." - libraryEntry: LibraryEntry! - "The media related to this library event." - media: Media! - updatedAt: ISO8601DateTime! - "The user who created this library event" - user: Profile! + "The data that was changed for this library event." + changedData: Map! + createdAt: ISO8601DateTime! + id: ID! + "The type of library event." + kind: LibraryEventKindEnum! + "The library entry related to this library event." + libraryEntry: LibraryEntry! + "The media related to this library event." + media: Media! + updatedAt: ISO8601DateTime! + "The user who created this library event" + user: Profile! } "The connection type for LibraryEvent." type LibraryEventConnection { - "A list of edges." - edges: [LibraryEventEdge] - "A list of nodes." - nodes: [LibraryEvent] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [LibraryEventEdge] + "A list of nodes." + nodes: [LibraryEvent] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type LibraryEventEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: LibraryEvent + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: LibraryEvent } type Manga implements Media & WithTimestamps { - "The recommended minimum age group for this media" - ageRating: AgeRatingEnum - "An explanation of why this received the age rating it did" - ageRatingGuide: String - "The average rating of this media amongst all Kitsu users" - averageRating: Float - "A large banner image for this media" - bannerImage: Image! - "A list of categories for this media" - categories( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [MediaCategorySortOption] - ): CategoryConnection! - "The number of chapters in this manga." - chapterCount: Int - "The estimated number of chapters in this manga." - chapterCountGuess: Int - "The chapters in the manga." - chapters( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [CharacterVoiceSortOption] - ): ChapterConnection - "The characters who starred in this media" - characters( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [MediaCharacterSortOption] - ): MediaCharacterConnection! - createdAt: ISO8601DateTime! - "A brief (mostly spoiler free) summary or description of the media." - description(locales: [String!]): Map! - "the day that this media made its final release" - endDate: Date - "The number of users with this in their favorites" - favoritesCount: Int - id: ID! - "A list of mappings for this media" - mappings( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): MappingConnection! - "Your library entry related to this media." - myLibraryEntry: LibraryEntry - "A list of your wiki submissions for this media" - myWikiSubmissions( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [WikiSubmissionSortOption] - ): WikiSubmissionConnection! - "The time of the next release of this media" - nextRelease: ISO8601DateTime - "The country in which the media was primarily produced" - originalLocale: String - "The poster image of this media" - posterImage: Image! - "The companies which helped to produce this media" - productions( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): MediaProductionConnection! - "A list of quotes from this media" - quotes( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): QuoteConnection! - "A list of reactions for this media" - reactions( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [MediaReactionSortOption] - ): MediaReactionConnection! - "Whether the media is Safe-for-Work" - sfw: Boolean! - "The URL-friendly identifier of this media" - slug: String! - "The staff members who worked on this media" - staff( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): MediaStaffConnection! - "The day that this media first released" - startDate: Date - "The current releasing status of this media" - status: ReleaseStatusEnum! - "A secondary type for categorizing Manga." - subtype: MangaSubtypeEnum! - "Description of when this media is expected to release" - tba: String - "The titles for this media in various locales" - titles: TitlesList! - "Anime or Manga." - type: String! - updatedAt: ISO8601DateTime! - "The number of users with this in their library" - userCount: Int - "The number of volumes in this manga." - volumeCount: Int + "The recommended minimum age group for this media" + ageRating: AgeRatingEnum + "An explanation of why this received the age rating it did" + ageRatingGuide: String + "The average rating of this media amongst all Kitsu users" + averageRating: Float + "The rank of this media by rating" + averageRatingRank: Int + "A large banner image for this media" + bannerImage: Image + "A list of categories for this media" + categories( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [MediaCategorySortOption] + ): CategoryConnection! + "The number of chapters in this manga." + chapterCount: Int + "The estimated number of chapters in this manga." + chapterCountGuess: Int + "The chapters in the manga." + chapters( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [CharacterVoiceSortOption] + ): ChapterConnection + "The characters who starred in this media" + characters( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [MediaCharacterSortOption] + ): MediaCharacterConnection! + createdAt: ISO8601DateTime! + "A brief (mostly spoiler free) summary or description of the media." + description(locales: [String!]): Map! + "the day that this media made its final release" + endDate: Date + "The number of users with this in their favorites" + favoritesCount: Int + id: ID! + "A list of mappings for this media" + mappings( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): MappingConnection! + "Your library entry related to this media." + myLibraryEntry: LibraryEntry + "A list of your wiki submissions for this media" + myWikiSubmissions( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [WikiSubmissionSortOption] + ): WikiSubmissionConnection! + "The time of the next release of this media" + nextRelease: ISO8601DateTime + "The countries in which the media was originally primarily produced" + originCountries: [String!]! + "The languages the media was originally produced in" + originLanguages: [String!]! + "The country in which the media was primarily produced" + originalLocale: String @deprecated(reason: "Replaced with originCountries and originLanguages") + "The poster image of this media" + posterImage: Image + "All posts that tag this media." + posts( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [PostSortOption] + ): PostConnection! + "The companies which helped to produce this media" + productions( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): MediaProductionConnection! + "A list of quotes from this media" + quotes( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): QuoteConnection! + "A list of reactions for this media" + reactions( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [MediaReactionSortOption] + ): MediaReactionConnection! + "Whether the media is Safe-for-Work" + sfw: Boolean! + "The URL-friendly identifier of this media" + slug: String! + "The staff members who worked on this media" + staff( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): MediaStaffConnection! + "The day that this media first released" + startDate: Date + "The current releasing status of this media" + status: ReleaseStatusEnum! + "A secondary type for categorizing Manga." + subtype: MangaSubtypeEnum! + "Description of when this media is expected to release" + tba: String + "The titles for this media in various locales" + titles: TitlesList! + "Anime or Manga." + type: String! + updatedAt: ISO8601DateTime! + "The number of users with this in their library" + userCount: Int + "The rank of this media by popularity" + userCountRank: Int + "The number of volumes in this manga." + volumeCount: Int } type MangaAmountConsumed implements AmountConsumed { - "Total media completed atleast once." - completed: Int! - id: ID! - "Total amount of media." - media: Int! - "The profile related to the user for this stat." - profile: Profile! - "Last time we fully recalculated this stat." - recalculatedAt: ISO8601Date! - "Total progress of library including reconsuming." - units: Int! + "Total media completed atleast once." + completed: Int! + id: ID! + "Total amount of media." + media: Int! + "The profile related to the user for this stat." + profile: Profile! + "Last time we fully recalculated this stat." + recalculatedAt: ISO8601Date! + "Total progress of library including reconsuming." + units: Int! } type MangaCategoryBreakdown implements CategoryBreakdown { - "A Map of category_id -> count for all categories present on the library entries" - categories: Map! - id: ID! - "The profile related to the user for this stat." - profile: Profile! - "Last time we fully recalculated this stat." - recalculatedAt: ISO8601Date! - "The total amount of library entries." - total: Int! + "A Map of category_id -> count for all categories present on the library entries" + categories: Map! + id: ID! + "The profile related to the user for this stat." + profile: Profile! + "Last time we fully recalculated this stat." + recalculatedAt: ISO8601Date! + "The total amount of library entries." + total: Int! } "The connection type for Manga." type MangaConnection { - "A list of edges." - edges: [MangaEdge] - "A list of nodes." - nodes: [Manga] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [MangaEdge] + "A list of nodes." + nodes: [Manga] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type MangaEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Manga + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Manga } "Media Mappings from External Sites (MAL, Anilist, etc..) to Kitsu." type Mapping implements WithTimestamps { - createdAt: ISO8601DateTime! - "The ID of the media from the external site." - externalId: ID! - "The name of the site which kitsu media is being linked from." - externalSite: MappingExternalSiteEnum! - id: ID! - "The kitsu object that is mapped." - item: MappingItemUnion! - updatedAt: ISO8601DateTime! + createdAt: ISO8601DateTime! + "The ID of the media from the external site." + externalId: ID! + "The name of the site which kitsu media is being linked from." + externalSite: MappingExternalSiteEnum! + id: ID! + "The kitsu object that is mapped." + item: MappingItemUnion! + updatedAt: ISO8601DateTime! } "The connection type for Mapping." type MappingConnection { - "A list of edges." - edges: [MappingEdge] - "A list of nodes." - nodes: [Mapping] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [MappingEdge] + "A list of nodes." + nodes: [Mapping] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "Autogenerated return type of MappingCreate" type MappingCreatePayload { - errors: [Error!] - mapping: Mapping + errors: [Error!] + mapping: Mapping } "Autogenerated return type of MappingDelete" type MappingDeletePayload { - errors: [Error!] - mapping: GenericDelete + errors: [Error!] + mapping: GenericDelete } "An edge in a connection." type MappingEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Mapping + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Mapping } type MappingMutations { - "Create a Mapping" - create( - "Create a Mapping" - input: MappingCreateInput! - ): MappingCreatePayload - "Delete a Mapping" - delete( - "Delete a Mapping" - input: GenericDeleteInput! - ): MappingDeletePayload - "Update a Mapping" - update( - "Update a Mapping" - input: MappingUpdateInput! - ): MappingUpdatePayload + "Create a Mapping" + create( + "Create a Mapping" + input: MappingCreateInput! + ): MappingCreatePayload + "Delete a Mapping" + delete( + "Delete a Mapping" + input: GenericDeleteInput! + ): MappingDeletePayload + "Update a Mapping" + update( + "Update a Mapping" + input: MappingUpdateInput! + ): MappingUpdatePayload } "Autogenerated return type of MappingUpdate" type MappingUpdatePayload { - errors: [Error!] - mapping: Mapping + errors: [Error!] + mapping: Mapping } "Information about a Character starring in a Media" type MediaCharacter implements WithTimestamps { - "The character" - character: Character! - createdAt: ISO8601DateTime! - id: ID! - "The media" - media: Media! - "The role this character had in the media" - role: CharacterRoleEnum! - updatedAt: ISO8601DateTime! - "The voices of this character" - voices( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - locale: [String!], - sort: [CharacterVoiceSortOption] - ): CharacterVoiceConnection + "The character" + character: Character! + createdAt: ISO8601DateTime! + id: ID! + "The media" + media: Media! + "The role this character had in the media" + role: CharacterRoleEnum! + updatedAt: ISO8601DateTime! + "The voices of this character" + voices( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + locale: [String!], + sort: [CharacterVoiceSortOption] + ): CharacterVoiceConnection } "The connection type for MediaCharacter." type MediaCharacterConnection { - "A list of edges." - edges: [MediaCharacterEdge] - "A list of nodes." - nodes: [MediaCharacter] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [MediaCharacterEdge] + "A list of nodes." + nodes: [MediaCharacter] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type MediaCharacterEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: MediaCharacter + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: MediaCharacter } "The connection type for Media." type MediaConnection { - "A list of edges." - edges: [MediaEdge] - "A list of nodes." - nodes: [Media] - "Information to aid in pagination." - pageInfo: PageInfo! + "A list of edges." + edges: [MediaEdge] + "A list of nodes." + nodes: [Media] + "Information to aid in pagination." + pageInfo: PageInfo! } "An edge in a connection." type MediaEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Media + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Media } "The role a company played in the creation or localization of a media" type MediaProduction implements WithTimestamps { - "The production company" - company: Producer! - createdAt: ISO8601DateTime! - id: ID! - "The media" - media: Media! - "The role this company played" - role: MediaProductionRoleEnum! - updatedAt: ISO8601DateTime! + "The production company" + company: Producer! + createdAt: ISO8601DateTime! + id: ID! + "The media" + media: Media! + "The role this company played" + role: MediaProductionRoleEnum! + updatedAt: ISO8601DateTime! } "The connection type for MediaProduction." type MediaProductionConnection { - "A list of edges." - edges: [MediaProductionEdge] - "A list of nodes." - nodes: [MediaProduction] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [MediaProductionEdge] + "A list of nodes." + nodes: [MediaProduction] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type MediaProductionEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: MediaProduction + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: MediaProduction } "A simple review that is 140 characters long expressing how you felt about a media" type MediaReaction implements WithTimestamps { - "The author who wrote this reaction." - author: Profile! - createdAt: ISO8601DateTime! - id: ID! - "The library entry related to this reaction." - libraryEntry: LibraryEntry! - "Users that have liked this reaction" - likes( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [MediaReactionVoteSortOption] - ): ProfileConnection! - "The media related to this reaction." - media: Media! - "When this media reaction was written based on media progress." - progress: Int! - "The reaction text related to a media." - reaction: String! - updatedAt: ISO8601DateTime! + "The author who wrote this reaction." + author: Profile! + createdAt: ISO8601DateTime! + "Whether you have liked this media reaction" + hasLiked: Boolean! + id: ID! + "The library entry related to this reaction." + libraryEntry: LibraryEntry! + "Users that have liked this reaction" + likes( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [MediaReactionVoteSortOption] + ): ProfileConnection! + "The media related to this reaction." + media: Media! + "When this media reaction was written based on media progress." + progress: Int! + "The reaction text related to a media." + reaction: String! + updatedAt: ISO8601DateTime! } "The connection type for MediaReaction." type MediaReactionConnection { - "A list of edges." - edges: [MediaReactionEdge] - "A list of nodes." - nodes: [MediaReaction] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [MediaReactionEdge] + "A list of nodes." + nodes: [MediaReaction] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type MediaReactionEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: MediaReaction + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: MediaReaction } "Information about a person working on an anime" type MediaStaff implements WithTimestamps { - createdAt: ISO8601DateTime! - id: ID! - "The media" - media: Media! - "The person" - person: Person! - "The role this person had in the creation of this media" - role: String! - updatedAt: ISO8601DateTime! + createdAt: ISO8601DateTime! + id: ID! + "The media" + media: Media! + "The person" + person: Person! + "The role this person had in the creation of this media" + role: String! + updatedAt: ISO8601DateTime! } "The connection type for MediaStaff." type MediaStaffConnection { - "A list of edges." - edges: [MediaStaffEdge] - "A list of nodes." - nodes: [MediaStaff] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [MediaStaffEdge] + "A list of nodes." + nodes: [MediaStaff] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type MediaStaffEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: MediaStaff + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: MediaStaff } type Mutation { - account: AccountMutations! - anime: AnimeMutations! - episode: EpisodeMutations! - libraryEntry: LibraryEntryMutations! - mapping: MappingMutations! - post: PostMutations! - pro: ProMutations! - wikiSubmission: WikiSubmissionMutations! + account: AccountMutations! + "Create a new Kitsu account" + accountCreate(input: AccountCreateInput!): AccountCreatePayload + anime: AnimeMutations! + episode: EpisodeMutations! + libraryEntry: LibraryEntryMutations! + mapping: MappingMutations! + post: PostMutations! + pro: ProMutations! + wikiSubmission: WikiSubmissionMutations! } "Information about pagination in a connection." type PageInfo { - "When paginating forwards, the cursor to continue." - endCursor: String - "When paginating forwards, are there more items?" - hasNextPage: Boolean! - "When paginating backwards, are there more items?" - hasPreviousPage: Boolean! - "When paginating backwards, the cursor to continue." - startCursor: String + "When paginating forwards, the cursor to continue." + endCursor: String + "When paginating forwards, are there more items?" + hasNextPage: Boolean! + "When paginating backwards, are there more items?" + hasPreviousPage: Boolean! + "When paginating backwards, the cursor to continue." + startCursor: String } "A Voice Actor, Director, Animator, or other person who works in the creation and localization of media" type Person implements WithTimestamps { - "The day when this person was born" - birthday: Date - createdAt: ISO8601DateTime! - "A brief biography or description of the person." - description(locales: [String!]): Map! - id: ID! - "An image of the person" - image: Image - "Information about the person working on specific media" - mediaStaff( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): MediaStaffConnection - "The primary name of this person." - name: String! - "The name of this person in various languages" - names: TitlesList! - "The URL-friendly identifier of this person." - slug: String! - updatedAt: ISO8601DateTime! - "The voice-acting roles this person has had." - voices( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): CharacterVoiceConnection + "The day when this person was born" + birthday: Date + createdAt: ISO8601DateTime! + "A brief biography or description of the person." + description(locales: [String!]): Map! + id: ID! + "An image of the person" + image: Image + "Information about the person working on specific media" + mediaStaff( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): MediaStaffConnection + "The primary name of this person." + name: String! + "The name of this person in various languages" + names: TitlesList! + "The URL-friendly identifier of this person." + slug: String! + updatedAt: ISO8601DateTime! + "The voice-acting roles this person has had." + voices( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): CharacterVoiceConnection } "A post that is visible to your followers and globally in the news-feed." type Post implements WithTimestamps { - "The user who created this post." - author: Profile! - "All comments on this post" - comments( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [CommentSortOption] - ): CommentConnection! - "Unmodified content." - content: String - "Html formatted content." - contentFormatted: String - createdAt: ISO8601DateTime! - "Users that are watching this post" - follows( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): ProfileConnection! - id: ID! - "If a post is Not-Safe-for-Work." - isNsfw: Boolean! - "If this post spoils the tagged media." - isSpoiler: Boolean! - "Users that have liked this post" - likes( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [PostLikeSortOption] - ): ProfileConnection! - "When this post was locked." - lockedAt: ISO8601DateTime - "The user who locked this post." - lockedBy: Profile - "The reason why this post was locked." - lockedReason: LockedReasonEnum - "The media tagged in this post." - media: Media - updatedAt: ISO8601DateTime! + "The user who created this post." + author: Profile! + "All comments on this post" + comments( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [CommentSortOption] + ): CommentConnection! + "Unmodified content." + content: String + "Html formatted content." + contentFormatted: String + createdAt: ISO8601DateTime! + "Users that are watching this post" + follows( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): ProfileConnection! + id: ID! + "If a post is Not-Safe-for-Work." + isNsfw: Boolean! + "If this post spoils the tagged media." + isSpoiler: Boolean! + "Users that have liked this post" + likes( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [PostLikeSortOption] + ): ProfileConnection! + "When this post was locked." + lockedAt: ISO8601DateTime + "The user who locked this post." + lockedBy: Profile + "The reason why this post was locked." + lockedReason: LockedReasonEnum + "The media tagged in this post." + media: Media + updatedAt: ISO8601DateTime! } "The connection type for Post." type PostConnection { - "A list of edges." - edges: [PostEdge] - "A list of nodes." - nodes: [Post] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [PostEdge] + "A list of nodes." + nodes: [Post] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type PostEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Post + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Post } "Autogenerated return type of PostLock" type PostLockPayload { - errors: [Error!] - post: Post + errors: [Error!] + post: Post } type PostMutations { - "Lock a Post." - lock( - "Lock a Post." - input: PostLockInput! - ): PostLockPayload - "Unlock a Post." - unlock( - "Unlock a Post." - input: PostUnlockInput! - ): PostUnlockPayload + "Lock a Post." + lock( + "Lock a Post." + input: PostLockInput! + ): PostLockPayload + "Unlock a Post." + unlock( + "Unlock a Post." + input: PostUnlockInput! + ): PostUnlockPayload } "Autogenerated return type of PostUnlock" type PostUnlockPayload { - errors: [Error!] - post: Post + errors: [Error!] + post: Post } type ProMutations { - "Set the user's discord tag" - setDiscord( - "Your discord tag (Name#1234)" - discord: String! - ): ProSetDiscordPayload - "Set the user's Hall-of-Fame message" - setMessage( - "The message to set for your Hall of Fame entry" - message: String! - ): ProSetMessagePayload - "End the user's pro subscription" - unsubscribe: ProUnsubscribePayload + "Set the user's discord tag" + setDiscord( + "Your discord tag (Name#1234)" + discord: String! + ): ProSetDiscordPayload + "Set the user's Hall-of-Fame message" + setMessage( + "The message to set for your Hall of Fame entry" + message: String! + ): ProSetMessagePayload + "End the user's pro subscription" + unsubscribe: ProUnsubscribePayload } "Autogenerated return type of ProSetDiscord" type ProSetDiscordPayload { - discord: String! + discord: String! } "Autogenerated return type of ProSetMessage" type ProSetMessagePayload { - message: String! + message: String! } "A subscription to Kitsu PRO" type ProSubscription implements WithTimestamps { - "The account which is subscribed to Pro benefits" - account: Account! - "The billing service used for this subscription" - billingService: RecurringBillingServiceEnum! - createdAt: ISO8601DateTime! - "The tier of Pro the account is subscribed to" - tier: ProTierEnum! - updatedAt: ISO8601DateTime! + "The account which is subscribed to Pro benefits" + account: Account! + "The billing service used for this subscription" + billingService: RecurringBillingServiceEnum! + createdAt: ISO8601DateTime! + "The tier of Pro the account is subscribed to" + tier: ProTierEnum! + updatedAt: ISO8601DateTime! } "Autogenerated return type of ProUnsubscribe" type ProUnsubscribePayload { - expiresAt: ISO8601DateTime + expiresAt: ISO8601DateTime } "A company involved in the creation or localization of media" type Producer implements WithTimestamps { - createdAt: ISO8601DateTime! - id: ID! - "The name of this production company" - name: String! - updatedAt: ISO8601DateTime! + createdAt: ISO8601DateTime! + id: ID! + "The name of this production company" + name: String! + updatedAt: ISO8601DateTime! } "A user profile on Kitsu" type Profile implements WithTimestamps { - "A short biographical blurb about this profile" - about: String - "An avatar image to easily identify this profile" - avatarImage: Image - "A banner to display at the top of the profile" - bannerImage: Image - "When the user was born" - birthday: ISO8601Date - "All comments to any post this user has made." - comments( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): CommentConnection! - createdAt: ISO8601DateTime! - "Favorite media, characters, and people" - favorites( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): FavoriteConnection! - "People that follow the user" - followers( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [FollowSortOption] - ): ProfileConnection! - "People the user is following" - following( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [FollowSortOption] - ): ProfileConnection! - "What the user identifies as" - gender: String - id: ID! - "The user library of their media" - library: Library! - "A list of library events for this user" - libraryEvents( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Will return all if not supplied" - kind: [LibraryEventKindEnum!] = [PROGRESSED, UPDATED, REACTED, RATED, ANNOTATED], - "Returns the last _n_ elements from the list." - last: Int, - sort: [LibraryEventSortOption] - ): LibraryEventConnection! - "The user's general location" - location: String - "Media reactions written by this user." - mediaReactions( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [MediaReactionSortOption] - ): MediaReactionConnection! - "A non-unique publicly visible name for the profile. Minimum of 3 characters and any valid Unicode character" - name: String! - "Post pinned to the user profile" - pinnedPost: Post - "All posts this profile has made." - posts( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [PostSortOption] - ): PostConnection! - "The message this user has submitted to the Hall of Fame" - proMessage: String - "The PRO level the user currently has" - proTier: ProTierEnum - "Reviews created by this user" - reviews( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [WikiSubmissionSortOption] - ): ReviewConnection - "Links to the user on other (social media) sites." - siteLinks( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): SiteLinkConnection - "The URL-friendly identifier for this profile" - slug: String - "The different stats we calculate for this user." - stats: ProfileStats! - updatedAt: ISO8601DateTime! - "A fully qualified URL to the profile" - url: String - "The character this profile has declared as their waifu or husbando" - waifu: Character - "The properly-gendered term for the user's waifu. This should normally only be 'Waifu' or 'Husbando' but some people are jerks, including the person who wrote this..." - waifuOrHusbando: String - "Wiki submissions created by this user" - wikiSubmissions( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [WikiSubmissionSortOption], - "Will return all if not supplied" - statuses: [WikiSubmissionStatusEnum!] = [DRAFT, PENDING, APPROVED, REJECTED] - ): WikiSubmissionConnection! + "A short biographical blurb about this profile" + about: String + "An avatar image to easily identify this profile" + avatarImage: Image + "A banner to display at the top of the profile" + bannerImage: Image + "When the user was born" + birthday: ISO8601Date + "All comments to any post this user has made." + comments( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): CommentConnection! + createdAt: ISO8601DateTime! + "Favorite media, characters, and people" + favorites( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): FavoriteConnection! + "People that follow the user" + followers( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [FollowSortOption] + ): ProfileConnection! + "People the user is following" + following( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [FollowSortOption] + ): ProfileConnection! + "What the user identifies as" + gender: String + id: ID! + "The user library of their media" + library: Library! + "A list of library events for this user" + libraryEvents( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Will return all if not supplied" + kind: [LibraryEventKindEnum!] = [PROGRESSED, UPDATED, REACTED, RATED, ANNOTATED], + "Returns the last _n_ elements from the list." + last: Int, + sort: [LibraryEventSortOption] + ): LibraryEventConnection! + "The user's general location" + location: String + "Media reactions written by this user." + mediaReactions( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [MediaReactionSortOption] + ): MediaReactionConnection! + "A non-unique publicly visible name for the profile. Minimum of 3 characters and any valid Unicode character" + name: String! + "Post pinned to the user profile" + pinnedPost: Post + "All posts this profile has made." + posts( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [PostSortOption] + ): PostConnection! + "The message this user has submitted to the Hall of Fame" + proMessage: String + "The PRO level the user currently has" + proTier: ProTierEnum + "Reviews created by this user" + reviews( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [WikiSubmissionSortOption] + ): ReviewConnection + "Links to the user on other (social media) sites." + siteLinks( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): SiteLinkConnection + "The URL-friendly identifier for this profile" + slug: String + "The different stats we calculate for this user." + stats: ProfileStats! + updatedAt: ISO8601DateTime! + "A fully qualified URL to the profile" + url: String + "The character this profile has declared as their waifu or husbando" + waifu: Character + "The properly-gendered term for the user's waifu. This should normally only be 'Waifu' or 'Husbando' but some people are jerks, including the person who wrote this..." + waifuOrHusbando: String + "Wiki submissions created by this user" + wikiSubmissions( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [WikiSubmissionSortOption], + "Will return all if not supplied" + statuses: [WikiSubmissionStatusEnum!] = [DRAFT, PENDING, APPROVED, REJECTED] + ): WikiSubmissionConnection! } "The connection type for Profile." type ProfileConnection { - "A list of edges." - edges: [ProfileEdge] - "A list of nodes." - nodes: [Profile] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [ProfileEdge] + "A list of nodes." + nodes: [Profile] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type ProfileEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Profile + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Profile } "The different types of user stats that we calculate." type ProfileStats { - "The total amount of anime you have watched over your whole life." - animeAmountConsumed: AnimeAmountConsumed! - "The breakdown of the different categories related to the anime you have completed" - animeCategoryBreakdown: AnimeCategoryBreakdown! - "The total amount of manga you ahve read over your whole life." - mangaAmountConsumed: MangaAmountConsumed! - "The breakdown of the different categories related to the manga you have completed" - mangaCategoryBreakdown: MangaCategoryBreakdown! + "The total amount of anime you have watched over your whole life." + animeAmountConsumed: AnimeAmountConsumed! + "The breakdown of the different categories related to the anime you have completed" + animeCategoryBreakdown: AnimeCategoryBreakdown! + "The total amount of manga you ahve read over your whole life." + mangaAmountConsumed: MangaAmountConsumed! + "The breakdown of the different categories related to the manga you have completed" + mangaCategoryBreakdown: MangaCategoryBreakdown! } type Query { - "All Anime in the Kitsu database" - anime( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): AnimeConnection! - "All Anime with specific Status" - animeByStatus( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - status: ReleaseStatusEnum! - ): AnimeConnection - "All Categories in the Kitsu Database" - categories( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): CategoryConnection - "Kitsu account details. You must supply an Authorization token in header." - currentAccount: Account - "Find a single Anime by ID" - findAnimeById(id: ID!): Anime - "Find a single Anime by Slug" - findAnimeBySlug(slug: String!): Anime - "Find a single Category by ID" - findCategoryById(id: ID!): Category - "Find a single Category by Slug" - findCategoryBySlug(slug: String!): Category - "Find a single Character by ID" - findCharacterById(id: ID!): Character - "Find a single Character by Slug" - findCharacterBySlug(slug: String!): Character - "Find a single Library Entry by ID" - findLibraryEntryById(id: ID!): LibraryEntry - "Find a single Library Event by ID" - findLibraryEventById(id: ID!): LibraryEvent - "Find a single Manga by ID" - findMangaById(id: ID!): Manga - "Find a single Manga by Slug" - findMangaBySlug(slug: String!): Manga - "Find a single Person by ID" - findPersonById(id: ID!): Person - "Find a single Person by Slug" - findPersonBySlug(slug: String!): Person - "Find a single Post by ID" - findPostById(id: ID!): Post - "Find a single User by ID" - findProfileById(id: ID!): Profile - "Find a single User by Slug" - findProfileBySlug(slug: String!): Profile - "Find a single Report by ID" - findReportById(id: ID!): Report - "Find a single Wiki Submission by ID" - findWikiSubmissionById(id: ID!): WikiSubmission - "All Franchise in the Kitsu database" - franchises( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): FranchiseConnection - "List trending media on Kitsu" - globalTrending( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - mediaType: MediaTypeEnum! - ): MediaConnection! - "List of Library Entries by MediaType and MediaId" - libraryEntriesByMedia( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - mediaId: ID!, - mediaType: MediaTypeEnum! - ): LibraryEntryConnection - "List of Library Entries by MediaType" - libraryEntriesByMediaType( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - mediaType: MediaTypeEnum! - ): LibraryEntryConnection - "List trending media within your network" - localTrending( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - mediaType: MediaTypeEnum! - ): MediaConnection! - "Find a specific Mapping Item by External ID and External Site." - lookupMapping(externalId: ID!, externalSite: MappingExternalSiteEnum!): MappingItemUnion - "All Manga in the Kitsu database" - manga( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): MangaConnection! - "All Manga with specific Status" - mangaByStatus( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - status: ReleaseStatusEnum! - ): MangaConnection - "Patrons sorted by a Proprietary Magic Algorithm" - patrons( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): ProfileConnection! - "Random anime or manga" - randomMedia(ageRatings: [AgeRatingEnum!]!, mediaType: MediaTypeEnum!): Media! - "All Reports in the Kitsu database" - reports( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): ReportConnection - "Select all Reports that match with a supplied status." - reportsByStatus( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - "Will return all if not supplied" - statuses: [ReportStatusEnum!] = [REPORTED, RESOLVED, DECLINED] - ): ReportConnection - "Search for Anime by title using Algolia. The most relevant results will be at the top." - searchAnimeByTitle( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - title: String! - ): AnimeConnection! - "Search for Manga by title using Algolia. The most relevant results will be at the top." - searchMangaByTitle( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - title: String! - ): MangaConnection! - "Search for any media (Anime, Manga) by title using Algolia. If no media_type is supplied, it will search for both. The most relevant results will be at the top." - searchMediaByTitle( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - "Dynamically choose a specific media_type. If left blank, it will return results for both." - mediaType: MediaTypeEnum, - title: String! - ): MediaConnection! - "Search for User by username using Algolia. The most relevant results will be at the top." - searchProfileByUsername( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - username: String! - ): ProfileConnection - "Get your current session info" - session: Session! - "Select all Wiki Submissions that match with a supplied status." - wikiSubmissionsByStatuses( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int, - sort: [WikiSubmissionSortOption], - "Will return all if not supplied" - statuses: [WikiSubmissionStatusEnum!] = [DRAFT, PENDING, APPROVED, REJECTED] - ): WikiSubmissionConnection + "All Anime in the Kitsu database" + anime( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): AnimeConnection! + "All Anime with specific Status" + animeByStatus( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + status: ReleaseStatusEnum! + ): AnimeConnection + "All Categories in the Kitsu Database" + categories( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): CategoryConnection + "Kitsu account details. You must supply an Authorization token in header." + currentAccount: Account + "Find a single Anime by ID" + findAnimeById(id: ID!): Anime + "Find a single Anime by Slug" + findAnimeBySlug(slug: String!): Anime + "Find a single Category by ID" + findCategoryById(id: ID!): Category + "Find a single Category by Slug" + findCategoryBySlug(slug: String!): Category + "Find a single Character by ID" + findCharacterById(id: ID!): Character + "Find a single Character by Slug" + findCharacterBySlug(slug: String!): Character + "Find a single Library Entry by ID" + findLibraryEntryById(id: ID!): LibraryEntry + "Find a single Library Event by ID" + findLibraryEventById(id: ID!): LibraryEvent + "Find a single Manga by ID" + findMangaById(id: ID!): Manga + "Find a single Manga by Slug" + findMangaBySlug(slug: String!): Manga + "Find a single Person by ID" + findPersonById(id: ID!): Person + "Find a single Person by Slug" + findPersonBySlug(slug: String!): Person + "Find a single Post by ID" + findPostById(id: ID!): Post + "Find a single User by ID" + findProfileById(id: ID!): Profile + "Find a single User by Slug" + findProfileBySlug(slug: String!): Profile + "Find a single Report by ID" + findReportById(id: ID!): Report + "Find a single Wiki Submission by ID" + findWikiSubmissionById(id: ID!): WikiSubmission + "All Franchise in the Kitsu database" + franchises( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): FranchiseConnection + "List trending media on Kitsu" + globalTrending( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + mediaType: MediaTypeEnum! + ): MediaConnection! + "List of Library Entries by MediaType and MediaId" + libraryEntriesByMedia( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + mediaId: ID!, + mediaType: MediaTypeEnum! + ): LibraryEntryConnection + "List of Library Entries by MediaType" + libraryEntriesByMediaType( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + mediaType: MediaTypeEnum! + ): LibraryEntryConnection + "List trending media within your network" + localTrending( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + mediaType: MediaTypeEnum! + ): MediaConnection! + "Find a specific Mapping Item by External ID and External Site." + lookupMapping(externalId: ID!, externalSite: MappingExternalSiteEnum!): MappingItemUnion + "All Manga in the Kitsu database" + manga( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): MangaConnection! + "All Manga with specific Status" + mangaByStatus( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + status: ReleaseStatusEnum! + ): MangaConnection + "Patrons sorted by a Proprietary Magic Algorithm" + patrons( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): ProfileConnection! + "Random anime or manga" + randomMedia(ageRatings: [AgeRatingEnum!]!, mediaType: MediaTypeEnum!): Media! + "All Reports in the Kitsu database" + reports( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): ReportConnection + "Select all Reports that match with a supplied status." + reportsByStatus( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + "Will return all if not supplied" + statuses: [ReportStatusEnum!] = [REPORTED, RESOLVED, DECLINED] + ): ReportConnection + "Search for Anime by title using Algolia. The most relevant results will be at the top." + searchAnimeByTitle( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + title: String! + ): AnimeConnection! + "Search for Manga by title using Algolia. The most relevant results will be at the top." + searchMangaByTitle( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + title: String! + ): MangaConnection! + "Search for any media (Anime, Manga) by title using Algolia. If no media_type is supplied, it will search for both. The most relevant results will be at the top." + searchMediaByTitle( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + "Dynamically choose a specific media_type. If left blank, it will return results for both." + mediaType: MediaTypeEnum, + title: String! + ): MediaConnection! + "Search for User by username using Algolia. The most relevant results will be at the top." + searchProfileByUsername( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + username: String! + ): ProfileConnection + "Get your current session info" + session: Session! + "Select all Wiki Submissions that match with a supplied status." + wikiSubmissionsByStatuses( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int, + sort: [WikiSubmissionSortOption], + "Will return all if not supplied" + statuses: [WikiSubmissionStatusEnum!] = [DRAFT, PENDING, APPROVED, REJECTED] + ): WikiSubmissionConnection } "A quote from a media" type Quote implements WithTimestamps { - createdAt: ISO8601DateTime! - id: ID! - "The lines of the quote" - lines( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): QuoteLineConnection! - "The media this quote is excerpted from" - media: Media! - updatedAt: ISO8601DateTime! + createdAt: ISO8601DateTime! + id: ID! + "The lines of the quote" + lines( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): QuoteLineConnection! + "The media this quote is excerpted from" + media: Media! + updatedAt: ISO8601DateTime! } "The connection type for Quote." type QuoteConnection { - "A list of edges." - edges: [QuoteEdge] - "A list of nodes." - nodes: [Quote] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [QuoteEdge] + "A list of nodes." + nodes: [Quote] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type QuoteEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Quote + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Quote } "A line in a quote" type QuoteLine implements WithTimestamps { - "The character who said this line" - character: Character! - "The line that was spoken" - content: String! - createdAt: ISO8601DateTime! - id: ID! - "The quote this line is in" - quote: Quote! - updatedAt: ISO8601DateTime! + "The character who said this line" + character: Character! + "The line that was spoken" + content: String! + createdAt: ISO8601DateTime! + id: ID! + "The quote this line is in" + quote: Quote! + updatedAt: ISO8601DateTime! } "The connection type for QuoteLine." type QuoteLineConnection { - "A list of edges." - edges: [QuoteLineEdge] - "A list of nodes." - nodes: [QuoteLine] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [QuoteLineEdge] + "A list of nodes." + nodes: [QuoteLine] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type QuoteLineEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: QuoteLine + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: QuoteLine } "A report made by a user" type Report implements WithTimestamps { - createdAt: ISO8601DateTime! - "Additional information related to why the report was made" - explanation: String - id: ID! - "The moderator who responded to this report" - moderator: Profile - "The entity that the report is related to" - naughty: ReportItemUnion! - "The reason for why the report was made" - reason: ReportReasonEnum! - "The user who made this report" - reporter: Profile! - "The resolution status for this report" - status: ReportStatusEnum! - updatedAt: ISO8601DateTime! + createdAt: ISO8601DateTime! + "Additional information related to why the report was made" + explanation: String + id: ID! + "The moderator who responded to this report" + moderator: Profile + "The entity that the report is related to" + naughty: ReportItemUnion + "The reason for why the report was made" + reason: ReportReasonEnum! + "The user who made this report" + reporter: Profile! + "The resolution status for this report" + status: ReportStatusEnum! + updatedAt: ISO8601DateTime! } "The connection type for Report." type ReportConnection { - "A list of edges." - edges: [ReportEdge] - "A list of nodes." - nodes: [Report] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [ReportEdge] + "A list of nodes." + nodes: [Report] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type ReportEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Report + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Report } "A media review made by a user" type Review implements WithTimestamps { - "The author who wrote this review." - author: Profile! - "The review data" - content: String! - createdAt: ISO8601DateTime! - "The review data formatted" - formattedContent: String! - id: ID! - "Does this review contain spoilers from the media" - isSpoiler: Boolean! - "The library entry related to this review." - libraryEntry: LibraryEntry! - "Users who liked this review" - likes( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): ProfileConnection! - "The media related to this review." - media: Media! - "When this review was written based on media progress." - progress: Int! - "The user rating for this media" - rating: Int! - "Potentially migrated over from hummingbird." - source: String! - updatedAt: ISO8601DateTime! + "The author who wrote this review." + author: Profile! + "The review data" + content: String! + createdAt: ISO8601DateTime! + "The review data formatted" + formattedContent: String! + id: ID! + "Does this review contain spoilers from the media" + isSpoiler: Boolean! + "The library entry related to this review." + libraryEntry: LibraryEntry! + "Users who liked this review" + likes( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): ProfileConnection! + "The media related to this review." + media: Media! + "When this review was written based on media progress." + progress: Int! + "The user rating for this media" + rating: Int! + "Potentially migrated over from hummingbird." + source: String! + updatedAt: ISO8601DateTime! } "The connection type for Review." type ReviewConnection { - "A list of edges." - edges: [ReviewEdge] - "A list of nodes." - nodes: [Review] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [ReviewEdge] + "A list of nodes." + nodes: [Review] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type ReviewEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Review + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Review } "Information about a user session" type Session { - "The account associated with this session" - account: Account - "Single sign-on token for Nolt" - noltToken: String! - "The profile associated with this session" - profile: Profile + "The account associated with this session" + account: Account + "Single sign-on token for Nolt" + noltToken: String! + "The profile associated with this session" + profile: Profile } "A link to a user's profile on an external site." type SiteLink implements WithTimestamps { - "The user profile the site is linked to." - author: Profile! - createdAt: ISO8601DateTime! - id: ID! - updatedAt: ISO8601DateTime! - "A fully qualified URL of the user profile on an external site." - url: String! + "The user profile the site is linked to." + author: Profile! + createdAt: ISO8601DateTime! + id: ID! + updatedAt: ISO8601DateTime! + "A fully qualified URL of the user profile on an external site." + url: String! } "The connection type for SiteLink." type SiteLinkConnection { - "A list of edges." - edges: [SiteLinkEdge] - "A list of nodes." - nodes: [SiteLink] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [SiteLinkEdge] + "A list of nodes." + nodes: [SiteLink] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type SiteLinkEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: SiteLink + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: SiteLink } "The streaming company." type Streamer implements WithTimestamps { - createdAt: ISO8601DateTime! - id: ID! - "The name of the site that is streaming this media." - siteName: String! - "Additional media this site is streaming." - streamingLinks( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): StreamingLinkConnection! - updatedAt: ISO8601DateTime! - "Videos of the media being streamed." - videos( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): VideoConnection! + createdAt: ISO8601DateTime! + id: ID! + "The name of the site that is streaming this media." + siteName: String! + "Additional media this site is streaming." + streamingLinks( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): StreamingLinkConnection! + updatedAt: ISO8601DateTime! + "Videos of the media being streamed." + videos( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): VideoConnection! } "The stream link." type StreamingLink implements Streamable & WithTimestamps { - createdAt: ISO8601DateTime! - "Spoken language is replaced by language of choice." - dubs: [String!]! - id: ID! - "The media being streamed" - media: Media! - "Which regions this video is available in." - regions: [String!]! - "The site that is streaming this media." - streamer: Streamer! - "Languages this is translated to. Usually placed at bottom of media." - subs: [String!]! - updatedAt: ISO8601DateTime! - "Fully qualified URL for the streaming link." - url: String! + createdAt: ISO8601DateTime! + "Spoken language is replaced by language of choice." + dubs: [String!]! + id: ID! + "The media being streamed" + media: Media! + "Which regions this video is available in." + regions: [String!]! + "The site that is streaming this media." + streamer: Streamer! + "Languages this is translated to. Usually placed at bottom of media." + subs: [String!]! + updatedAt: ISO8601DateTime! + "Fully qualified URL for the streaming link." + url: String! } "The connection type for StreamingLink." type StreamingLinkConnection { - "A list of edges." - edges: [StreamingLinkEdge] - "A list of nodes." - nodes: [StreamingLink] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [StreamingLinkEdge] + "A list of nodes." + nodes: [StreamingLink] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type StreamingLinkEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: StreamingLink + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: StreamingLink } type TitlesList { - "A list of additional, alternative, abbreviated, or unofficial titles" - alternatives: [String!] - "The official or de facto international title" - canonical: String - "The locale code that identifies which title is used as the canonical title" - canonicalLocale: String - "The list of localized titles keyed by locale" - localized(locales: [String!]): Map! + "A list of additional, alternative, abbreviated, or unofficial titles" + alternatives: [String!] + "The official or de facto international title" + canonical: String! + "The locale code that identifies which title is used as the canonical title" + canonicalLocale: String + "The list of localized titles keyed by locale" + localized(locales: [String!]): Map! + "The original title of the media in the original language" + original: String + "The locale code that identifies which title is used as the original title" + originalLocale: String + "The title that best matches the user's preferred settings" + preferred: String! + "The original title, romanized into latin script" + romanized: String + "The locale code that identifies which title is used as the romanized title" + romanizedLocale: String + "The title translated into the user's locale" + translated: String + "The locale code that identifies which title is used as the translated title" + translatedLocale: String +} + +type ValidationError implements Error { + "The error code." + code: String + "A description of the error" + message: String! + "Which input value this error came from" + path: [String!] } "The media video." type Video implements Streamable & WithTimestamps { - createdAt: ISO8601DateTime! - "Spoken language is replaced by language of choice." - dubs: [String!]! - "The episode of this video" - episode: Episode! - id: ID! - "Which regions this video is available in." - regions: [String!]! - "The site that is streaming this media." - streamer: Streamer! - "Languages this is translated to. Usually placed at bottom of media." - subs: [String!]! - updatedAt: ISO8601DateTime! - "The url of the video." - url: String! + createdAt: ISO8601DateTime! + "Spoken language is replaced by language of choice." + dubs: [String!]! + "The episode of this video" + episode: Episode! + id: ID! + "Which regions this video is available in." + regions: [String!]! + "The site that is streaming this media." + streamer: Streamer! + "Languages this is translated to. Usually placed at bottom of media." + subs: [String!]! + updatedAt: ISO8601DateTime! + "The url of the video." + url: String! } "The connection type for Video." type VideoConnection { - "A list of edges." - edges: [VideoEdge] - "A list of nodes." - nodes: [Video] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [VideoEdge] + "A list of nodes." + nodes: [Video] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "An edge in a connection." type VideoEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: Video + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: Video } "A manga volume which can contain multiple chapters." type Volume implements WithTimestamps { - "The chapters in this volume." - chapters( - "Returns the elements in the list that come after the specified cursor." - after: String, - "Returns the elements in the list that come before the specified cursor." - before: String, - "Returns the first _n_ elements from the list." - first: Int, - "Returns the last _n_ elements from the list." - last: Int - ): ChapterConnection - createdAt: ISO8601DateTime! - id: ID! - "The isbn number of this volume." - isbn: [String!]! - "The manga this volume is in." - manga: Manga! - "The volume number." - number: Int! - "The date when this chapter was released." - published: ISO8601Date - "The titles for this chapter in various locales" - titles: TitlesList! - updatedAt: ISO8601DateTime! + "The chapters in this volume." + chapters( + "Returns the elements in the list that come after the specified cursor." + after: String, + "Returns the elements in the list that come before the specified cursor." + before: String, + "Returns the first _n_ elements from the list." + first: Int, + "Returns the last _n_ elements from the list." + last: Int + ): ChapterConnection + createdAt: ISO8601DateTime! + id: ID! + "The isbn number of this volume." + isbn: [String!]! + "The manga this volume is in." + manga: Manga! + "The volume number." + number: Int! + "The date when this chapter was released." + published: ISO8601Date + "The titles for this chapter in various locales" + titles: TitlesList! + updatedAt: ISO8601DateTime! } "A Wiki Submission is used to either create or edit existing data in our database. This will allow a simple and convient way for users to submit issues/corrections without all the work being left to the mods." type WikiSubmission implements WithTimestamps { - "The user who created this draft" - author: Profile! - createdAt: ISO8601DateTime! - "The full object that holds all the details for any modifications/additions/deletions made to the entity you are editing. This will be validated using JSON Schema." - data: JSON - id: ID! - "Any additional information that may need to be provided related to the Wiki Submission" - notes: String - "The status of the Wiki Submission" - status: WikiSubmissionStatusEnum! - "The title given to the Wiki Submission. This will default to the title of what is being edited." - title: String - updatedAt: ISO8601DateTime! + "The user who created this draft" + author: Profile! + createdAt: ISO8601DateTime! + "The full object that holds all the details for any modifications/additions/deletions made to the entity you are editing. This will be validated using JSON Schema." + data: JSON + id: ID! + "Any additional information that may need to be provided related to the Wiki Submission" + notes: String + "The status of the Wiki Submission" + status: WikiSubmissionStatusEnum! + "The title given to the Wiki Submission. This will default to the title of what is being edited." + title: String + updatedAt: ISO8601DateTime! } "The connection type for WikiSubmission." type WikiSubmissionConnection { - "A list of edges." - edges: [WikiSubmissionEdge] - "A list of nodes." - nodes: [WikiSubmission] - "Information to aid in pagination." - pageInfo: PageInfo! - "The total amount of nodes." - totalCount: Int! + "A list of edges." + edges: [WikiSubmissionEdge] + "A list of nodes." + nodes: [WikiSubmission] + "Information to aid in pagination." + pageInfo: PageInfo! + "The total amount of nodes." + totalCount: Int! } "Autogenerated return type of WikiSubmissionCreateDraft" type WikiSubmissionCreateDraftPayload { - errors: [Error!] - wikiSubmission: WikiSubmission + errors: [Error!] + wikiSubmission: WikiSubmission } "An edge in a connection." type WikiSubmissionEdge { - "A cursor for use in pagination." - cursor: String! - "The item at the end of the edge." - node: WikiSubmission + "A cursor for use in pagination." + cursor: String! + "The item at the end of the edge." + node: WikiSubmission } type WikiSubmissionMutations { - "Create a wiki submission draft" - createDraft( - "Create a wiki submission draft." - input: WikiSubmissionCreateDraftInput! - ): WikiSubmissionCreateDraftPayload - "Submit a wiki submission draft" - submitDraft( - "Submit a wiki submission draft. This will change the status to pending." - input: WikiSubmissionSubmitDraftInput! - ): WikiSubmissionSubmitDraftPayload - "Update a wiki submission draft" - updateDraft( - "Update a wiki submission draft." - input: WikiSubmissionUpdateDraftInput! - ): WikiSubmissionUpdateDraftPayload + "Create a wiki submission draft" + createDraft( + "Create a wiki submission draft." + input: WikiSubmissionCreateDraftInput! + ): WikiSubmissionCreateDraftPayload + "Submit a wiki submission draft" + submitDraft( + "Submit a wiki submission draft. This will change the status to pending." + input: WikiSubmissionSubmitDraftInput! + ): WikiSubmissionSubmitDraftPayload + "Update a wiki submission draft" + updateDraft( + "Update a wiki submission draft." + input: WikiSubmissionUpdateDraftInput! + ): WikiSubmissionUpdateDraftPayload } "Autogenerated return type of WikiSubmissionSubmitDraft" type WikiSubmissionSubmitDraftPayload { - errors: [Error!] - wikiSubmission: WikiSubmission + errors: [Error!] + wikiSubmission: WikiSubmission } "Autogenerated return type of WikiSubmissionUpdateDraft" type WikiSubmissionUpdateDraftPayload { - errors: [Error!] - wikiSubmission: WikiSubmission + errors: [Error!] + wikiSubmission: WikiSubmission } enum AgeRatingEnum { - "Acceptable for all ages" - G - "Parental guidance suggested; should be safe for preteens and older" - PG - "Possible lewd or intense themes; should be safe for teens and older" - R - "Contains adult content or themes; should only be viewed by adults" - R18 + "Acceptable for all ages" + G + "Parental guidance suggested; should be safe for preteens and older" + PG + "Possible lewd or intense themes; should be safe for teens and older" + R + "Contains adult content or themes; should only be viewed by adults" + R18 } enum AnimeSubtypeEnum { - MOVIE - MUSIC - "Original Net Animation (Web Anime)." - ONA - "Original Video Animation. Anime directly released to video market." - OVA - "Spinoffs or Extras of the original." - SPECIAL - TV + MOVIE + MUSIC + "Original Net Animation (Web Anime)." + ONA + "Original Video Animation. Anime directly released to video market." + OVA + "Spinoffs or Extras of the original." + SPECIAL + TV } enum CharacterRoleEnum { - "A background character who generally only appears in a few episodes" - BACKGROUND - "A character from a different franchise making a (usually brief) appearance" - CAMEO - "A character who appears throughout a series and is a focal point of the media" - MAIN - "A character who appears in multiple episodes but is not a main character" - RECURRING + "A background character who generally only appears in a few episodes" + BACKGROUND + "A character from a different franchise making a (usually brief) appearance" + CAMEO + "A character who appears throughout a series and is a focal point of the media" + MAIN + "A character who appears in multiple episodes but is not a main character" + RECURRING } enum CharacterVoiceSortEnum { - CREATED_AT - UPDATED_AT + CREATED_AT + UPDATED_AT } enum CommentLikeSortEnum { - CREATED_AT - FOLLOWING + CREATED_AT + FOLLOWING } enum CommentSortEnum { - CREATED_AT - FOLLOWING - LIKES_COUNT + CREATED_AT + FOLLOWING + LIKES_COUNT } enum EpisodeSortEnum { - CREATED_AT - NUMBER - UPDATED_AT + CREATED_AT + NUMBER + UPDATED_AT +} + +enum ExternalIdentityProviderEnum { + "Facebook identity" + FACEBOOK } enum FollowSortEnum { - CREATED_AT - FOLLOWING_FOLLOWED - FOLLOWING_FOLLOWER + CREATED_AT + FOLLOWING_FOLLOWED + FOLLOWING_FOLLOWER } enum InstallmentSortEnum { - ALTERNATIVE_ORDER - RELEASE_ORDER + ALTERNATIVE_ORDER + RELEASE_ORDER } enum InstallmentTagEnum { - "Same universe/world/reality/timeline, completely different characters." - ALTERNATE_SETTING - "Same setting, same characters, story is told differently." - ALTERNATE_VERSION - "Characters from different media meet in the same story." - CROSSOVER - "The main story." - MAIN_STORY - "Takes place sometime during the main storyline." - SIDE_STORY - "Uses characters of a different series, but is not an alternate setting or story." - SPINOFF + "Same universe/world/reality/timeline, completely different characters." + ALTERNATE_SETTING + "Same setting, same characters, story is told differently." + ALTERNATE_VERSION + "Characters from different media meet in the same story." + CROSSOVER + "The main story." + MAIN_STORY + "Takes place sometime during the main storyline." + SIDE_STORY + "Uses characters of a different series, but is not an alternate setting or story." + SPINOFF } enum LibraryEntryStatusEnum { - "The user completed this media." - COMPLETED - "The user is currently reading or watching this media." - CURRENT - "The user started but chose not to finish this media." - DROPPED - "The user started but paused reading or watching this media." - ON_HOLD - "The user plans to read or watch this media in future." - PLANNED + "The user completed this media." + COMPLETED + "The user is currently reading or watching this media." + CURRENT + "The user started but chose not to finish this media." + DROPPED + "The user started but paused reading or watching this media." + ON_HOLD + "The user plans to read or watch this media in future." + PLANNED } enum LibraryEventKindEnum { - "Notes were added/updated." - ANNOTATED - "Progress or Time Spent was added/updated." - PROGRESSED - "Rating was added/updated." - RATED - "Reaction was added/updated." - REACTED - "Status or Reconsuming was added/updated." - UPDATED + "Notes were added/updated." + ANNOTATED + "Progress or Time Spent was added/updated." + PROGRESSED + "Rating was added/updated." + RATED + "Reaction was added/updated." + REACTED + "Status or Reconsuming was added/updated." + UPDATED } enum LibraryEventSortEnum { - CREATED_AT - UPDATED_AT + CREATED_AT + UPDATED_AT } enum LockedReasonEnum { - CLOSED - SPAM - TOO_HEATED + CLOSED + SPAM + TOO_HEATED } enum MangaSubtypeEnum { - "Self published work." - DOUJIN - MANGA - "Chinese comics produced in China and in the Greater China region." - MANHUA - "A style of South Korean comic books and graphic novels" - MANHWA - NOVEL - "Original English Language." - OEL - ONESHOT + "Self published work." + DOUJIN + MANGA + "Chinese comics produced in China and in the Greater China region." + MANHUA + "A style of South Korean comic books and graphic novels" + MANHWA + NOVEL + "Original English Language." + OEL + ONESHOT } enum MappingExternalSiteEnum { - ANIDB - ANILIST_ANIME - ANILIST_MANGA - ANIMENEWSNETWORK - AOZORA - HULU - IMDB_EPISODES - MANGAUPDATES - MYANIMELIST_ANIME - MYANIMELIST_CHARACTERS - MYANIMELIST_MANGA - MYANIMELIST_PEOPLE - MYANIMELIST_PRODUCERS - MYDRAMALIST - THETVDB - THETVDB_SEASON - THETVDB_SERIES - TRAKT + ANIDB + ANILIST_ANIME + ANILIST_MANGA + ANIMENEWSNETWORK + AOZORA + HULU + IMDB_EPISODES + MANGAUPDATES + MYANIMELIST_ANIME + MYANIMELIST_CHARACTERS + MYANIMELIST_MANGA + MYANIMELIST_PEOPLE + MYANIMELIST_PRODUCERS + MYDRAMALIST + THETVDB + THETVDB_SEASON + THETVDB_SERIES + TRAKT } enum MappingItemEnum { - ANIME - CATEGORY - CHARACTER - EPISODE - MANGA - PERSON - PRODUCER + ANIME + CATEGORY + CHARACTER + EPISODE + MANGA + PERSON + PRODUCER } enum MediaCategorySortEnum { - ANCESTRY - CREATED_AT + ANCESTRY + CREATED_AT } enum MediaCharacterSortEnum { - CREATED_AT - ROLE - UPDATED_AT + CREATED_AT + ROLE + UPDATED_AT } enum MediaProductionRoleEnum { - LICENSOR - PRODUCER - SERIALIZATION - STUDIO + LICENSOR + PRODUCER + SERIALIZATION + STUDIO } enum MediaReactionSortEnum { - CREATED_AT - UPDATED_AT - UP_VOTES_COUNT + CREATED_AT + UPDATED_AT + UP_VOTES_COUNT } enum MediaReactionVoteSortEnum { - CREATED_AT - FOLLOWING + CREATED_AT + FOLLOWING } "これはアニメやマンガです" enum MediaTypeEnum { - ANIME - MANGA + ANIME + MANGA } enum PostLikeSortEnum { - CREATED_AT - FOLLOWING + CREATED_AT + FOLLOWING } enum PostSortEnum { - CREATED_AT + CREATED_AT } enum ProTierEnum { - "Aozora Pro (only hides ads)" - AO_PRO @deprecated(reason : "No longer for sale") - "Aozora Pro+ (only hides ads)" - AO_PRO_PLUS @deprecated(reason : "No longer for sale") - "Top tier of Kitsu Pro" - PATRON - "Basic tier of Kitsu Pro" - PRO + "Aozora Pro (only hides ads)" + AO_PRO @deprecated(reason: "No longer for sale") + "Aozora Pro+ (only hides ads)" + AO_PRO_PLUS @deprecated(reason: "No longer for sale") + "Top tier of Kitsu Pro" + PATRON + "Basic tier of Kitsu Pro" + PRO } enum RatingSystemEnum { - "1-20 in increments of 1 displayed as 1-10 in 0.5 increments" - ADVANCED - "1-20 in increments of 2 displayed as 5 stars in 0.5 star increments" - REGULAR - "1-20 displayed as 4 smileys - Awful (1), Meh (8), Good (14) and Great (20)" - SIMPLE + "1-20 in increments of 1 displayed as 1-10 in 0.5 increments" + ADVANCED + "1-20 in increments of 2 displayed as 5 stars in 0.5 star increments" + REGULAR + "1-20 displayed as 4 smileys - Awful (1), Meh (8), Good (14) and Great (20)" + SIMPLE } enum RecurringBillingServiceEnum { - "Billed through Apple In-App Subscription" - APPLE - "Billed through Google Play Subscription" - GOOGLE_PLAY - "Bill a PayPal account" - PAYPAL - "Bill a credit card via Stripe" - STRIPE + "Billed through Apple In-App Subscription" + APPLE + "Billed through Google Play Subscription" + GOOGLE_PLAY + "Bill a PayPal account" + PAYPAL + "Bill a credit card via Stripe" + STRIPE } enum ReleaseSeasonEnum { - "Released during the Fall season" - FALL - "Released during the Spring season" - SPRING - "Released during the Summer season" - SUMMER - "Released during the Winter season" - WINTER + "Released during the Fall season" + FALL + "Released during the Spring season" + SPRING + "Released during the Summer season" + SUMMER + "Released during the Winter season" + WINTER } enum ReleaseStatusEnum { - "This media is currently releasing" - CURRENT - "This media is no longer releasing" - FINISHED - "The release date has not been announced yet" - TBA - "This media is not released yet" - UNRELEASED - "This media is releasing soon" - UPCOMING + "This media is currently releasing" + CURRENT + "This media is no longer releasing" + FINISHED + "The release date has not been announced yet" + TBA + "This media is not released yet" + UNRELEASED + "This media is releasing soon" + UPCOMING } enum ReportReasonEnum { - "No bulli!" - BULLYING - "Not Safe For Work" - NSFW - OFFENSIVE - OTHER - SPAM - SPOILER + "No bulli!" + BULLYING + "Not Safe For Work" + NSFW + OFFENSIVE + OTHER + SPAM + SPOILER } enum ReportStatusEnum { - DECLINED - REPORTED - RESOLVED + DECLINED + REPORTED + RESOLVED } enum SitePermissionEnum { - "Administrator/staff member of Kitsu" - ADMIN - "Moderator of community behavior" - COMMUNITY_MOD - "Maintainer of the Kitsu media database" - DATABASE_MOD + "Administrator/staff member of Kitsu" + ADMIN + "Moderator of community behavior" + COMMUNITY_MOD + "Maintainer of the Kitsu media database" + DATABASE_MOD } enum SortDirection { - ASCENDING - DESCENDING + ASCENDING + DESCENDING } enum TitleLanguagePreferenceEnum { - "Prefer the most commonly-used title for media" - CANONICAL - "Prefer the localized title for media" - LOCALIZED - "Prefer the romanized title for media" - ROMANIZED + "Prefer the most commonly-used title for media" + CANONICAL + "Prefer the localized title for media" + LOCALIZED + "Prefer the romanized title for media" + ROMANIZED } enum WikiSubmissionSortEnum { - CREATED_AT - UPDATED_AT + CREATED_AT + UPDATED_AT } enum WikiSubmissionStatusEnum { - APPROVED - DRAFT - PENDING - REJECTED + APPROVED + DRAFT + PENDING + REJECTED } -input AnimeCreateInput { - ageRating: AgeRatingEnum - ageRatingGuide: String - bannerImage: Upload - description: Map! - endDate: Date - episodeCount: Int - episodeLength: Int - posterImage: Upload - startDate: Date - tba: String - titles: TitlesListInput! - youtubeTrailerVideoId: String -} - -input AnimeUpdateInput { - ageRating: AgeRatingEnum - ageRatingGuide: String - bannerImage: Upload - description: Map - endDate: Date - episodeCount: Int - episodeLength: Int - id: ID! - posterImage: Upload - startDate: Date - tba: String - titles: TitlesListInput - youtubeTrailerVideoId: String -} - -input CharacterVoiceSortOption { - direction: SortDirection! - on: CharacterVoiceSortEnum! -} - -input CommentLikeSortOption { - direction: SortDirection! - on: CommentLikeSortEnum! -} - -input CommentSortOption { - direction: SortDirection! - on: CommentSortEnum! -} - -input EpisodeCreateInput { - description: Map - length: Int - mediaId: ID! - mediaType: MediaTypeEnum! - number: Int! - releasedAt: Date - thumbnailImage: Upload - titles: TitlesListInput! -} - -input EpisodeSortOption { - direction: SortDirection! - on: EpisodeSortEnum! -} - -input EpisodeUpdateInput { - description: Map - id: ID! - length: Int - number: Int - releasedAt: Date - thumbnailImage: Upload - titles: TitlesListInput -} - -input FollowSortOption { - direction: SortDirection! - on: FollowSortEnum! -} - -input GenericDeleteInput { - id: ID! -} - -input InstallmentSortOption { - direction: SortDirection! - on: InstallmentSortEnum! -} - -input LibraryEntryCreateInput { - finishedAt: ISO8601DateTime - mediaId: ID! - mediaType: MediaTypeEnum! - notes: String - private: Boolean = false - progress: Int = 0 - rating: Int - reconsumeCount: Int = 0 - reconsuming: Boolean = false - startedAt: ISO8601DateTime - status: LibraryEntryStatusEnum! - volumesOwned: Int = 0 -} - -input LibraryEntryUpdateInput { - finishedAt: ISO8601DateTime - id: ID! - notes: String - private: Boolean - progress: Int - rating: Int - reconsumeCount: Int - reconsuming: Boolean - startedAt: ISO8601DateTime - status: LibraryEntryStatusEnum - volumesOwned: Int -} - -input LibraryEntryUpdateProgressByIdInput { - id: ID! - progress: Int! -} - -input LibraryEntryUpdateProgressByMediaInput { - mediaId: ID! - mediaType: MediaTypeEnum! - progress: Int! -} - -input LibraryEntryUpdateRatingByIdInput { - id: ID! - "A number between 2 - 20" - rating: Int! -} - -input LibraryEntryUpdateRatingByMediaInput { - mediaId: ID! - mediaType: MediaTypeEnum! - "A number between 2 - 20" - rating: Int! -} - -input LibraryEntryUpdateStatusByIdInput { - id: ID! - status: LibraryEntryStatusEnum! -} - -input LibraryEntryUpdateStatusByMediaInput { - mediaId: ID! - mediaType: MediaTypeEnum! - status: LibraryEntryStatusEnum! -} - -input LibraryEventSortOption { - direction: SortDirection! - on: LibraryEventSortEnum! -} - -input MappingCreateInput { - externalId: ID! - externalSite: MappingExternalSiteEnum! - itemId: ID! - itemType: MappingItemEnum! -} - -input MappingUpdateInput { - externalId: ID - externalSite: MappingExternalSiteEnum - id: ID! - itemId: ID - itemType: MappingItemEnum -} - -input MediaCategorySortOption { - direction: SortDirection! - on: MediaCategorySortEnum! -} - -input MediaCharacterSortOption { - direction: SortDirection! - on: MediaCharacterSortEnum! -} - -input MediaReactionSortOption { - direction: SortDirection! - on: MediaReactionSortEnum! -} - -input MediaReactionVoteSortOption { - direction: SortDirection! - on: MediaReactionVoteSortEnum! -} - -input PostLikeSortOption { - direction: SortDirection! - on: PostLikeSortEnum! -} - -input PostLockInput { - id: ID! - lockedReason: LockedReasonEnum! -} - -input PostSortOption { - direction: SortDirection! - on: PostSortEnum! -} - -input PostUnlockInput { - id: ID! -} - -input TitlesListInput { - alternatives: [String!] - canonical: String - canonicalLocale: String - localized: Map -} - -input WikiSubmissionCreateDraftInput { - data: JSON! - notes: String - title: String -} - -input WikiSubmissionSortOption { - direction: SortDirection! - on: WikiSubmissionSortEnum! -} - -input WikiSubmissionSubmitDraftInput { - data: JSON! - id: ID! - notes: String - title: String -} - -input WikiSubmissionUpdateDraftInput { - data: JSON! - id: ID! - notes: String -} - - "A date, expressed as an ISO8601 string" scalar Date @@ -3390,4 +3249,260 @@ scalar JSON "A loose key-value map in GraphQL" scalar Map -scalar Upload \ No newline at end of file +scalar Upload + +input AccountCreateInput { + "The email address to reset the password for" + email: String! + "An external identity to associate with the account on creation" + externalIdentity: AccountExternalIdentityInput + "The name of the user" + name: String! + "The password for the user" + password: String! +} + +input AccountExternalIdentityInput { + id: String! + provider: ExternalIdentityProviderEnum! +} + +input AnimeCreateInput { + ageRating: AgeRatingEnum + ageRatingGuide: String + bannerImage: Upload + description: Map! + endDate: Date + episodeCount: Int + episodeLength: Int + posterImage: Upload + startDate: Date + tba: String + titles: TitlesListInput! + youtubeTrailerVideoId: String +} + +input AnimeUpdateInput { + ageRating: AgeRatingEnum + ageRatingGuide: String + bannerImage: Upload + description: Map + endDate: Date + episodeCount: Int + episodeLength: Int + id: ID! + posterImage: Upload + startDate: Date + tba: String + titles: TitlesListInput + youtubeTrailerVideoId: String +} + +input CharacterVoiceSortOption { + direction: SortDirection! + on: CharacterVoiceSortEnum! +} + +input CommentLikeSortOption { + direction: SortDirection! + on: CommentLikeSortEnum! +} + +input CommentSortOption { + direction: SortDirection! + on: CommentSortEnum! +} + +input EpisodeCreateInput { + description: Map + length: Int + mediaId: ID! + mediaType: MediaTypeEnum! + number: Int! + releasedAt: Date + thumbnailImage: Upload + titles: TitlesListInput! +} + +input EpisodeSortOption { + direction: SortDirection! + on: EpisodeSortEnum! +} + +input EpisodeUpdateInput { + description: Map + id: ID! + length: Int + number: Int + releasedAt: Date + thumbnailImage: Upload + titles: TitlesListInput +} + +input FollowSortOption { + direction: SortDirection! + on: FollowSortEnum! +} + +input GenericDeleteInput { + id: ID! +} + +input InstallmentSortOption { + direction: SortDirection! + on: InstallmentSortEnum! +} + +input LibraryEntryCreateInput { + finishedAt: ISO8601DateTime + mediaId: ID! + mediaType: MediaTypeEnum! + notes: String + private: Boolean = false + progress: Int = 0 + rating: Int + reconsumeCount: Int = 0 + reconsuming: Boolean = false + startedAt: ISO8601DateTime + status: LibraryEntryStatusEnum! + volumesOwned: Int = 0 +} + +input LibraryEntryUpdateInput { + finishedAt: ISO8601DateTime + id: ID! + notes: String + private: Boolean + progress: Int + rating: Int + reconsumeCount: Int + reconsuming: Boolean + startedAt: ISO8601DateTime + status: LibraryEntryStatusEnum + volumesOwned: Int +} + +input LibraryEntryUpdateProgressByIdInput { + id: ID! + progress: Int! +} + +input LibraryEntryUpdateProgressByMediaInput { + mediaId: ID! + mediaType: MediaTypeEnum! + progress: Int! +} + +input LibraryEntryUpdateRatingByIdInput { + id: ID! + "A number between 2 - 20" + rating: Int! +} + +input LibraryEntryUpdateRatingByMediaInput { + mediaId: ID! + mediaType: MediaTypeEnum! + "A number between 2 - 20" + rating: Int! +} + +input LibraryEntryUpdateStatusByIdInput { + id: ID! + status: LibraryEntryStatusEnum! +} + +input LibraryEntryUpdateStatusByMediaInput { + mediaId: ID! + mediaType: MediaTypeEnum! + status: LibraryEntryStatusEnum! +} + +input LibraryEventSortOption { + direction: SortDirection! + on: LibraryEventSortEnum! +} + +input MappingCreateInput { + externalId: ID! + externalSite: MappingExternalSiteEnum! + itemId: ID! + itemType: MappingItemEnum! +} + +input MappingUpdateInput { + externalId: ID + externalSite: MappingExternalSiteEnum + id: ID! + itemId: ID + itemType: MappingItemEnum +} + +input MediaCategorySortOption { + direction: SortDirection! + on: MediaCategorySortEnum! +} + +input MediaCharacterSortOption { + direction: SortDirection! + on: MediaCharacterSortEnum! +} + +input MediaReactionSortOption { + direction: SortDirection! + on: MediaReactionSortEnum! +} + +input MediaReactionVoteSortOption { + direction: SortDirection! + on: MediaReactionVoteSortEnum! +} + +input PostLikeSortOption { + direction: SortDirection! + on: PostLikeSortEnum! +} + +input PostLockInput { + id: ID! + lockedReason: LockedReasonEnum! +} + +input PostSortOption { + direction: SortDirection! + on: PostSortEnum! +} + +input PostUnlockInput { + id: ID! +} + +input TitlesListInput { + alternatives: [String!] + canonical: String + canonicalLocale: String + localized: Map +} + +input WikiSubmissionCreateDraftInput { + data: JSON! + notes: String + title: String +} + +input WikiSubmissionSortOption { + direction: SortDirection! + on: WikiSubmissionSortEnum! +} + +input WikiSubmissionSubmitDraftInput { + data: JSON! + id: ID! + notes: String + title: String +} + +input WikiSubmissionUpdateDraftInput { + data: JSON! + id: ID! + notes: String +}