From 913f9082efcdc7fbb6e24a5c3ca3bd0ee09355a8 Mon Sep 17 00:00:00 2001 From: "Timothy J. Warren" Date: Tue, 15 Sep 2020 08:08:39 -0400 Subject: [PATCH] Update GraphQL queries to match API changes --- .../Kitsu/Mutations/CreateLibraryItem.graphql | 4 +- .../Kitsu/Mutations/UpdateLibraryItem.graphql | 2 +- .../API/Kitsu/Queries/GetLibrary.graphql | 4 +- .../API/Kitsu/Queries/GetLibraryCount.graphql | 2 +- src/AnimeClient/API/Kitsu/schema.graphql | 4117 +++++++++-------- 5 files changed, 2070 insertions(+), 2059 deletions(-) diff --git a/src/AnimeClient/API/Kitsu/Mutations/CreateLibraryItem.graphql b/src/AnimeClient/API/Kitsu/Mutations/CreateLibraryItem.graphql index 0aae7798..f8854259 100644 --- a/src/AnimeClient/API/Kitsu/Mutations/CreateLibraryItem.graphql +++ b/src/AnimeClient/API/Kitsu/Mutations/CreateLibraryItem.graphql @@ -4,8 +4,8 @@ mutation ( $userId: ID! $id: ID!, - $type: media_type!, - $status: LibraryEntryStatus!, + $type: MediaTypeEnum!, + $status: LibraryEntryStatusEnum!, ) { libraryEntry { create(input: { diff --git a/src/AnimeClient/API/Kitsu/Mutations/UpdateLibraryItem.graphql b/src/AnimeClient/API/Kitsu/Mutations/UpdateLibraryItem.graphql index 61f02f9c..286168be 100644 --- a/src/AnimeClient/API/Kitsu/Mutations/UpdateLibraryItem.graphql +++ b/src/AnimeClient/API/Kitsu/Mutations/UpdateLibraryItem.graphql @@ -6,7 +6,7 @@ mutation( $ratingTwenty: Int, $reconsumeCount: Int!, $reconsuming: Boolean, - $status: LibraryEntryStatus!, + $status: LibraryEntryStatusEnum!, ) { libraryEntry{ update(input: { diff --git a/src/AnimeClient/API/Kitsu/Queries/GetLibrary.graphql b/src/AnimeClient/API/Kitsu/Queries/GetLibrary.graphql index 32141f5f..cf87b320 100644 --- a/src/AnimeClient/API/Kitsu/Queries/GetLibrary.graphql +++ b/src/AnimeClient/API/Kitsu/Queries/GetLibrary.graphql @@ -1,7 +1,7 @@ query ( $slug: String!, - $type: media_type!, - $status: [LibraryEntryStatus!], + $type: MediaTypeEnum!, + $status: [LibraryEntryStatusEnum!], $after: String ) { findProfileBySlug(slug: $slug) { diff --git a/src/AnimeClient/API/Kitsu/Queries/GetLibraryCount.graphql b/src/AnimeClient/API/Kitsu/Queries/GetLibraryCount.graphql index b4de69b9..28dc53f9 100644 --- a/src/AnimeClient/API/Kitsu/Queries/GetLibraryCount.graphql +++ b/src/AnimeClient/API/Kitsu/Queries/GetLibraryCount.graphql @@ -1,4 +1,4 @@ -query ($slug: String!, $type: media_type!, $status: [LibraryEntryStatus!]) { +query ($slug: String!, $type: MediaTypeEnum!, $status: [LibraryEntryStatusEnum!]) { findProfileBySlug(slug: $slug) { library { all(first: 1, mediaType: $type, status: $status) { diff --git a/src/AnimeClient/API/Kitsu/schema.graphql b/src/AnimeClient/API/Kitsu/schema.graphql index 8a5ededa..da9bab43 100644 --- a/src/AnimeClient/API/Kitsu/schema.graphql +++ b/src/AnimeClient/API/Kitsu/schema.graphql @@ -1,2584 +1,2595 @@ # 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 error fields used by all errors." interface Base { - "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!] } "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, - number: [Int!] - ): 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, + number: [Int!] + ): EpisodeConnection! + "The total length (in seconds) of the entire series" + totalLength: Int } "A media in the Kitsu database" interface Media { - "The recommended minimum age group for this media" - ageRating: AgeRating - "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 - ): 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 - ): 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! - "The time of the next release of this media" - nextRelease: ISO8601DateTime - "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 - ): MediaReactionConnection! - "The season this was released in" - season: ReleaseSeason - "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: ReleaseStatus! - "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 + "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 + ): 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 + ): 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! + "The time of the next release of this media" + nextRelease: ISO8601DateTime + "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 + ): 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! + "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 } "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! } "Objects which are Favoritable" -union FavoriteItem = Anime | Character | Manga | Person +union FavoriteItemUnion = Anime | Character | Manga | Person "Objects which are Mappable" -union MappingItem = Anime | Category | Character | Episode | Manga | Person | Producer +union MappingItemUnion = Anime | Category | Character | Episode | Manga | Person | Producer "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!]! - "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: RatingSystem! - "Whether Not Safe For Work content is accessible" - sfwFilter: Boolean - "Time zone of the account" - timeZone: String - "Preferred language for media titles" - titleLanguagePreference: TitleLanguagePreference - "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!]! + "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 + "Time zone of the account" + timeZone: String + "Preferred language for media titles" + titleLanguagePreference: TitleLanguagePreferenceEnum + "Twitter account linked to the account" + twitterId: String + updatedAt: ISO8601DateTime! } type Anime implements Episodic & Media & WithTimestamps { - "The recommended minimum age group for this media" - ageRating: AgeRating - "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 - ): 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 - ): 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, - number: [Int!] - ): 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! - "The time of the next release of this media" - nextRelease: ISO8601DateTime - "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 - ): MediaReactionConnection! - "The season this was released in" - season: ReleaseSeason - "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: ReleaseStatus! - "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: AnimeSubtype! - "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 + "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 + ): 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 + ): 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, + number: [Int!] + ): 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! + "The time of the next release of this media" + nextRelease: ISO8601DateTime + "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 + ): 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 } 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 - "Graphql Errors" - errors: [Generic!] + anime: Anime + "Graphql Errors" + errors: [Generic!] } "Autogenerated return type of AnimeDelete" type AnimeDeletePayload { - anime: GenericDelete - "Graphql Errors" - errors: [Generic!] + anime: GenericDelete + "Graphql Errors" + errors: [Generic!] } "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 AnimeMutation { - "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 - "Graphql Errors" - errors: [Generic!] + anime: Anime + "Graphql Errors" + errors: [Generic!] } "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 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 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 - ): ProfileConnection! - "The parent comment if this comment was a reply to another." - parent: Comment - "The post that this comment is attached to." - post: Post! - "All replies to a specific 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 - ): 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 + ): ProfileConnection! + "The parent comment if this comment was a reply to another." + parent: Comment + "The post that this comment is attached to." + post: Post! + "All replies to a specific 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 + ): 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 - "Graphql Errors" - errors: [Generic!] + episode: Episode + "Graphql Errors" + errors: [Generic!] } "Autogenerated return type of EpisodeDelete" type EpisodeDeletePayload { - episode: GenericDelete - "Graphql Errors" - errors: [Generic!] + episode: GenericDelete + "Graphql Errors" + errors: [Generic!] } "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 EpisodeMutation { - "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 - "Graphql Errors" - errors: [Generic!] + episode: Episode + "Graphql Errors" + errors: [Generic!] } "Favorite media, characters, and people for a user" type Favorite implements WithTimestamps { - createdAt: ISO8601DateTime! - id: ID! - "The kitsu object that is mapped" - item: FavoriteItem! - 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 } type Generic implements Base { - "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!] } type GenericDelete { - id: ID! + id: ID! } 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 implements WithTimestamps { - createdAt: ISO8601DateTime! - "The height of the image" - height: Int - "The name of this view of the image" - name: String! - updatedAt: ISO8601DateTime! - "The URL of this view of the image" - url: String! - "The width of the image" - width: Int + createdAt: ISO8601DateTime! + "The height of the image" + height: Int + "The name of this view of the image" + name: String! + updatedAt: ISO8601DateTime! + "The URL of this view of the image" + url: String! + "The width of the image" + width: Int } "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: media_type!, - status: [LibraryEntryStatus!] - ): 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: media_type! - ): 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: media_type! - ): 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: media_type! - ): 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: media_type! - ): 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: media_type! - ): LibraryEntryConnection! + "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! } "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: [media_type!] = [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: LibraryEntryStatus! - 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 { - "Graphql Errors" - errors: [Generic!] - libraryEntry: LibraryEntry + "Graphql Errors" + errors: [Generic!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryDelete" type LibraryEntryDeletePayload { - "Graphql Errors" - errors: [Generic!] - libraryEntry: GenericDelete + "Graphql Errors" + errors: [Generic!] + 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 LibraryEntryMutation { - "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: UpdateProgressByIdInput! - ): LibraryEntryUpdateProgressByIdPayload - "Update library entry progress by media" - updateProgressByMedia( - "Update library entry progress by media" - input: UpdateProgressByMediaInput! - ): LibraryEntryUpdateProgressByMediaPayload - "Update library entry rating by id" - updateRatingById( - "Update library entry rating by id" - input: UpdateRatingByIdInput! - ): LibraryEntryUpdateRatingByIdPayload - "Update library entry rating by media" - updateRatingByMedia( - "Update library entry rating by media" - input: UpdateRatingByMediaInput! - ): LibraryEntryUpdateRatingByMediaPayload - "Update library entry status by id" - updateStatusById( - "Update library entry status by id" - input: UpdateStatusByIdInput! - ): LibraryEntryUpdateStatusByIdPayload - "Update library entry status by media" - updateStatusByMedia( - "Update library entry status by media" - input: UpdateStatusByMediaInput! - ): 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: UpdateProgressByIdInput! + ): LibraryEntryUpdateProgressByIdPayload + "Update library entry progress by media" + updateProgressByMedia( + "Update library entry progress by media" + input: UpdateProgressByMediaInput! + ): LibraryEntryUpdateProgressByMediaPayload + "Update library entry rating by id" + updateRatingById( + "Update library entry rating by id" + input: UpdateRatingByIdInput! + ): LibraryEntryUpdateRatingByIdPayload + "Update library entry rating by media" + updateRatingByMedia( + "Update library entry rating by media" + input: UpdateRatingByMediaInput! + ): LibraryEntryUpdateRatingByMediaPayload + "Update library entry status by id" + updateStatusById( + "Update library entry status by id" + input: UpdateStatusByIdInput! + ): LibraryEntryUpdateStatusByIdPayload + "Update library entry status by media" + updateStatusByMedia( + "Update library entry status by media" + input: UpdateStatusByMediaInput! + ): LibraryEntryUpdateStatusByMediaPayload } "Autogenerated return type of LibraryEntryUpdate" type LibraryEntryUpdatePayload { - "Graphql Errors" - errors: [Generic!] - libraryEntry: LibraryEntry + "Graphql Errors" + errors: [Generic!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryUpdateProgressById" type LibraryEntryUpdateProgressByIdPayload { - "Graphql Errors" - errors: [Generic!] - libraryEntry: LibraryEntry + "Graphql Errors" + errors: [Generic!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryUpdateProgressByMedia" type LibraryEntryUpdateProgressByMediaPayload { - "Graphql Errors" - errors: [Generic!] - libraryEntry: LibraryEntry + "Graphql Errors" + errors: [Generic!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryUpdateRatingById" type LibraryEntryUpdateRatingByIdPayload { - "Graphql Errors" - errors: [Generic!] - libraryEntry: LibraryEntry + "Graphql Errors" + errors: [Generic!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryUpdateRatingByMedia" type LibraryEntryUpdateRatingByMediaPayload { - "Graphql Errors" - errors: [Generic!] - libraryEntry: LibraryEntry + "Graphql Errors" + errors: [Generic!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryUpdateStatusById" type LibraryEntryUpdateStatusByIdPayload { - "Graphql Errors" - errors: [Generic!] - libraryEntry: LibraryEntry + "Graphql Errors" + errors: [Generic!] + libraryEntry: LibraryEntry } "Autogenerated return type of LibraryEntryUpdateStatusByMedia" type LibraryEntryUpdateStatusByMediaPayload { - "Graphql Errors" - errors: [Generic!] - libraryEntry: LibraryEntry + "Graphql Errors" + errors: [Generic!] + 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: LibraryEventKind! - "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: AgeRating - "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 - ): 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 - ): 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 - ): 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! - "The time of the next release of this media" - nextRelease: ISO8601DateTime - "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 - ): MediaReactionConnection! - "The season this was released in" - season: ReleaseSeason - "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: ReleaseStatus! - "A secondary type for categorizing Manga." - subtype: MangaSubtype! - "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 + "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 + ): 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 + ): 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 + ): 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! + "The time of the next release of this media" + nextRelease: ISO8601DateTime + "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 + ): 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! + "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 } 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: MappingExternalSite! - id: ID! - "The kitsu object that is mapped." - item: MappingItem! - 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! } "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 } "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: CharacterRole! - 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!] - ): 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!] + ): 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 { - createdAt: ISO8601DateTime! - id: ID! - "The media" - media: Media! - "The producer" - person: Producer! - "The role this company played" - role: String! - updatedAt: ISO8601DateTime! + createdAt: ISO8601DateTime! + id: ID! + "The media" + media: Media! + "The producer" + person: Producer! + "The role this company played" + role: String! + 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 who 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 - ): 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! + id: ID! + "The library entry related to this reaction." + libraryEntry: LibraryEntry! + "Users who 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 + ): 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 { - anime: AnimeMutation - episode: EpisodeMutation - libraryEntry: LibraryEntryMutation - pro: ProMutation! + anime: AnimeMutation + episode: EpisodeMutation + libraryEntry: LibraryEntryMutation + pro: ProMutation! } "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 related to 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 - ): 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 - ): ProfileConnection! - "The media tagged in this post." - media: Media - updatedAt: ISO8601DateTime! + "The user who created this post." + author: Profile! + "All comments related to 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 + ): 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 + ): ProfileConnection! + "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 } type ProMutation { - "Set the user's discord tag" - setDiscord( - "Your discord tag (Name#1234)" - discord: String! - ): SetDiscordPayload - "Set the user's Hall-of-Fame message" - setMessage( - "The message to set for your Hall of Fame entry" - message: String! - ): SetMessagePayload - "End the user's pro subscription" - unsubscribe: UnsubscribePayload + "Set the user's discord tag" + setDiscord( + "Your discord tag (Name#1234)" + discord: String! + ): SetDiscordPayload + "Set the user's Hall-of-Fame message" + setMessage( + "The message to set for your Hall of Fame entry" + message: String! + ): SetMessagePayload + "End the user's pro subscription" + unsubscribe: UnsubscribePayload } "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: RecurringBillingService! - createdAt: ISO8601DateTime! - "The tier of Pro the account is subscribed to" - tier: ProTier! - 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! } "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 - ): 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 - ): 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, - kind: [LibraryEventKind!], - "Returns the last _n_ elements from the list." - last: Int - ): 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 - ): 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 - ): PostConnection! - "The message this user has submitted to the Hall of Fame" - proMessage: String - "The PRO level the user currently has" - proTier: ProTier - "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 + "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 + ): 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 + ): 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, + kind: [LibraryEventKindEnum!], + "Returns the last _n_ elements from the list." + last: Int + ): 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 + ): 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 + ): PostConnection! + "The message this user has submitted to the Hall of Fame" + proMessage: String + "The PRO level the user currently has" + proTier: ProTierEnum + "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 } "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: ReleaseStatus! - ): AnimeConnection - "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 User by ID" - findProfileById(id: ID!): Profile - "Find a single User by Slug" - findProfileBySlug(slug: String!): Profile - "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, - medium: String! - ): 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: media_type! - ): 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: media_type! - ): 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, - medium: String! - ): MediaConnection! - "Find a specific Mapping Item by External ID and External Site." - lookupMapping(externalId: ID!, externalSite: MappingExternalSite!): MappingItem - "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: ReleaseStatus! - ): 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! - "Get your current session info" - session: Session! + "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 User by ID" + findProfileById(id: ID!): Profile + "Find a single User by Slug" + findProfileBySlug(slug: String!): Profile + "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, + medium: String! + ): 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, + medium: String! + ): 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! + "Get your current session info" + session: Session! } "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 } "Information about a user session" type Session { - "The account associated with this session" - account: Account - "The profile associated with this session" - profile: Profile + "The account associated with this session" + account: Account + "The profile associated with this session" + profile: Profile } "Autogenerated return type of SetDiscord" type SetDiscordPayload { - discord: String! - "Graphql Errors" - errors: [Generic!] + discord: String! + "Graphql Errors" + errors: [Generic!] } "Autogenerated return type of SetMessage" type SetMessagePayload { - "Graphql Errors" - errors: [Generic!] - message: String! + "Graphql Errors" + errors: [Generic!] + message: String! } "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! } "Autogenerated return type of Unsubscribe" type UnsubscribePayload { - "Graphql Errors" - errors: [Generic!] - expiresAt: ISO8601DateTime + "Graphql Errors" + errors: [Generic!] + expiresAt: ISO8601DateTime } "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! } -enum AgeRating { - "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 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 } -enum AnimeSubtype { - 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 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 } -enum CharacterRole { - "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 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 } -enum LibraryEntryStatus { - "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 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 } -enum LibraryEventKind { - "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 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 } -enum MangaSubtype { - "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 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 } -enum MappingExternalSite { - 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 ProTier { - "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 RatingSystem { - "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 RecurringBillingService { - "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 ReleaseSeason { - "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 ReleaseStatus { - "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 TitleLanguagePreference { - "Prefer the most commonly-used title for media" - CANONICAL - "Prefer the localized title for media" - LOCALIZED - "Prefer the romanized title for media" - ROMANIZED +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 } "これはアニメやマンガです" -enum media_type { - ANIME - MANGA +enum MediaTypeEnum { + ANIME + MANGA +} + +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 +} + +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 +} + +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 +} + +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 +} + +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 +} + +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 } input AnimeCreateInput { - ageRating: AgeRating - ageRatingGuide: String - bannerImage: Upload - description: Map! - endDate: Date - episodeCount: Int - episodeLength: Int - posterImage: Upload - startDate: Date - tba: String - titles: TitlesListInput! - youtubeTrailerVideoId: String + 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: AgeRating - ageRatingGuide: String - bannerImage: Upload - description: Map - endDate: Date - episodeCount: Int - episodeLength: Int - id: ID! - posterImage: Upload - startDate: Date - tba: String - titles: TitlesListInput - youtubeTrailerVideoId: String + 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 EpisodeCreateInput { - description: Map - length: Int - mediaId: ID! - mediaType: media_type! - number: Int! - releasedAt: Date - thumbnailImage: Upload - titles: TitlesListInput! + description: Map + length: Int + mediaId: ID! + mediaType: MediaTypeEnum! + number: Int! + releasedAt: Date + thumbnailImage: Upload + titles: TitlesListInput! } input EpisodeUpdateInput { - description: Map - id: ID! - length: Int - number: Int - releasedAt: Date - thumbnailImage: Upload - titles: TitlesListInput + description: Map + id: ID! + length: Int + number: Int + releasedAt: Date + thumbnailImage: Upload + titles: TitlesListInput } input GenericDeleteInput { - id: ID! + id: ID! } input LibraryEntryCreateInput { - finishedAt: ISO8601DateTime - mediaId: ID! - mediaType: media_type! - notes: String - private: Boolean = false - progress: Int = 0 - rating: Int - reconsumeCount: Int = 0 - reconsuming: Boolean = false - startedAt: ISO8601DateTime - status: LibraryEntryStatus! - userId: ID! - volumesOwned: Int = 0 + 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! + userId: ID! + volumesOwned: Int = 0 } input LibraryEntryUpdateInput { - finishedAt: ISO8601DateTime - id: ID! - notes: String - private: Boolean - progress: Int - rating: Int - reconsumeCount: Int - reconsuming: Boolean - startedAt: ISO8601DateTime - status: LibraryEntryStatus - volumesOwned: Int + finishedAt: ISO8601DateTime + id: ID! + notes: String + private: Boolean + progress: Int + rating: Int + reconsumeCount: Int + reconsuming: Boolean + startedAt: ISO8601DateTime + status: LibraryEntryStatusEnum + volumesOwned: Int } input TitlesListInput { - alternatives: [String!] - canonicalLocale: String - localized: Map + alternatives: [String!] + canonicalLocale: String + localized: Map } input UpdateProgressByIdInput { - id: ID! - progress: Int! + id: ID! + progress: Int! } input UpdateProgressByMediaInput { - mediaId: ID! - mediaType: media_type! - progress: Int! + mediaId: ID! + mediaType: MediaTypeEnum! + progress: Int! } input UpdateRatingByIdInput { - id: ID! - "A number between 2 - 20" - rating: Int! + id: ID! + "A number between 2 - 20" + rating: Int! } input UpdateRatingByMediaInput { - mediaId: ID! - mediaType: media_type! - "A number between 2 - 20" - rating: Int! + mediaId: ID! + mediaType: MediaTypeEnum! + "A number between 2 - 20" + rating: Int! } input UpdateStatusByIdInput { - id: ID! - status: LibraryEntryStatus! + id: ID! + status: LibraryEntryStatusEnum! } input UpdateStatusByMediaInput { - mediaId: ID! - mediaType: media_type! - status: LibraryEntryStatus! + mediaId: ID! + mediaType: MediaTypeEnum! + status: LibraryEntryStatusEnum! }