MediaResponse is an interface representing the response from a media query. It includes the media's id, idMal, title, type, format, status, description, startDate, endDate, season, seasonYear, seasonInt, episodes, duration, chapters, volumes, countryOfOrigin, isLicensed, source, hashtag, trailer, updatedAt, coverImage, bannerImage, genres, synonyms, averageScore, meanScore, popularity, isLocked, trending, favourites, tags, relations, characters, staff, studios, isFavourite, isAdult, nextAiringEpisode, externalLinks, streamingEpisodes, rankings, mediaListEntry, stats, siteUrl, autoCreateForumThread, isRecommendationBlocked, and modNotes.

interface MediaResponse {
    autoCreateForumThread: boolean;
    averageScore: number;
    bannerImage: string;
    chapters?: number;
    characters: {
        edges: {
            favouriteOrder: number;
            id: number;
            media: {
                coverImage: CoverImage;
                id: number;
                title: Title;
            };
            name: string;
            node: {
                id: number;
                image: Image;
                name: Name;
            };
            role: string;
            voiceActors: {
                id: number;
                image: Image;
                name: Name;
            }[];
        }[];
    };
    countryOfOrigin: string;
    coverImage: CoverImage;
    description: string;
    duration?: number;
    endDate: FuzzyDate;
    episodes?: number;
    externalLinks: ExternalLink[];
    favourites: number;
    format: string;
    genres: string[];
    hashtag: string;
    id: number;
    idMal: number;
    isAdult: boolean;
    isFavourite: boolean;
    isLicensed: boolean;
    isLocked: boolean;
    isRecommendationBlocked: boolean;
    meanScore: number;
    mediaListEntry: MediaListEntry;
    modNotes: string;
    nextAiringEpisode: NextAiringEpisode;
    popularity: number;
    rankings: Ranking[];
    relations: {
        edges: {
            characterName: string;
            characterRole: string;
            dubGroup: string;
            id: number;
            isMainStudio: boolean;
            node: {
                id: number;
                title: FuzzyDate;
            };
            relationType: string;
            roleNotes: string;
            staffRole: string;
        }[];
    };
    season: string;
    seasonInt: number;
    seasonYear: number;
    siteUrl: string;
    source: string;
    staff: {
        edges: {
            favouriteOrder: number;
            id: number;
            node: {
                id: number;
                image: Image;
                name: Name;
            };
            role: string;
        }[];
    };
    startDate: FuzzyDate;
    stats: MediaStats;
    status: string;
    streamingEpisodes: StreamingEpisode[];
    studios: {
        edges: {
            favouriteOrder: number;
            id: number;
            isMain: boolean;
            node: {
                id: number;
                isAnimationStudio: boolean;
                name: string;
                siteUrl: string;
            };
        }[];
    };
    synonyms: string[];
    tags: Tag[];
    title: Title;
    trailer: Trailer;
    trending: number;
    type: string;
    updatedAt: number;
    volumes?: number;
}

Properties

autoCreateForumThread: boolean

autoCreateForumThread is a boolean representing whether the media should auto create a forum thread.

averageScore: number

averageScore is a number representing the average score of the media.

bannerImage: string

bannerImage is a string representing the banner image URL of the media.

chapters?: number

chapters is a number representing the number of chapters of the media.

characters: {
    edges: {
        favouriteOrder: number;
        id: number;
        media: {
            coverImage: CoverImage;
            id: number;
            title: Title;
        };
        name: string;
        node: {
            id: number;
            image: Image;
            name: Name;
        };
        role: string;
        voiceActors: {
            id: number;
            image: Image;
            name: Name;
        }[];
    }[];
}

characters is an object representing the characters of the media.

Type declaration

  • edges: {
        favouriteOrder: number;
        id: number;
        media: {
            coverImage: CoverImage;
            id: number;
            title: Title;
        };
        name: string;
        node: {
            id: number;
            image: Image;
            name: Name;
        };
        role: string;
        voiceActors: {
            id: number;
            image: Image;
            name: Name;
        }[];
    }[]
countryOfOrigin: string

countryOfOrigin is a string representing the country of origin of the media.

coverImage: CoverImage

coverImage is an instance of CoverImage representing the cover image of the media.

description: string

description is a string representing the description of the media.

duration?: number

duration is a number representing the duration of the media.

endDate: FuzzyDate

endDate is an instance of FuzzyDate representing the end date of the media.

episodes?: number

episodes is a number representing the number of episodes of the media.

externalLinks: ExternalLink[]

externalLinks is an array of ExternalLink representing the external links of the media.

favourites: number

favourites is a number representing the number of favourites of the media.

format: string

format is a string representing the format of the media.

genres: string[]

genres is an array of strings representing the genres of the media.

hashtag: string

hashtag is a string representing the hashtag of the media.

id: number

id is a number representing the id of the media.

idMal: number

idMal is a number representing the MyAnimeList id of the media.

isAdult: boolean

isAdult is a boolean representing whether the media is for adults.

isFavourite: boolean

isFavourite is a boolean representing whether the media is a favourite.

isLicensed: boolean

isLicensed is a boolean representing whether the media is licensed.

isLocked: boolean

isLocked is a boolean representing whether the media is locked.

isRecommendationBlocked: boolean

isRecommendationBlocked is a boolean representing whether the media is blocked for recommendation.

meanScore: number

meanScore is a number representing the mean score of the media.

mediaListEntry: MediaListEntry

mediaListEntry is an instance of MediaListEntry representing the media list entry of the media.

modNotes: string

modNotes is a string representing the mod notes of the media.

nextAiringEpisode: NextAiringEpisode

nextAiringEpisode is an instance of NextAiringEpisode representing the next airing episode of the media.

popularity: number

popularity is a number representing the popularity of the media.

rankings: Ranking[]

rankings is an array of Ranking representing the rankings of the media.

relations: {
    edges: {
        characterName: string;
        characterRole: string;
        dubGroup: string;
        id: number;
        isMainStudio: boolean;
        node: {
            id: number;
            title: FuzzyDate;
        };
        relationType: string;
        roleNotes: string;
        staffRole: string;
    }[];
}

relations is an object representing the relations of the media.

Type declaration

  • edges: {
        characterName: string;
        characterRole: string;
        dubGroup: string;
        id: number;
        isMainStudio: boolean;
        node: {
            id: number;
            title: FuzzyDate;
        };
        relationType: string;
        roleNotes: string;
        staffRole: string;
    }[]
season: string

season is a string representing the season of the media.

seasonInt: number

seasonInt is a number representing the integer of the season of the media.

seasonYear: number

seasonYear is a number representing the year of the season of the media.

siteUrl: string

siteUrl is a string representing the site URL of the media.

source: string

source is a string representing the source of the media.

staff: {
    edges: {
        favouriteOrder: number;
        id: number;
        node: {
            id: number;
            image: Image;
            name: Name;
        };
        role: string;
    }[];
}

staff is an object representing the staff of the media.

Type declaration

  • edges: {
        favouriteOrder: number;
        id: number;
        node: {
            id: number;
            image: Image;
            name: Name;
        };
        role: string;
    }[]
startDate: FuzzyDate

startDate is an instance of FuzzyDate representing the start date of the media.

stats: MediaStats

stats is an instance of MediaStats representing the stats of the media.

status: string

status is a string representing the status of the media.

streamingEpisodes: StreamingEpisode[]

streamingEpisodes is an array of StreamingEpisode representing the streaming episodes of the media.

studios: {
    edges: {
        favouriteOrder: number;
        id: number;
        isMain: boolean;
        node: {
            id: number;
            isAnimationStudio: boolean;
            name: string;
            siteUrl: string;
        };
    }[];
}

studios is an object representing the studios of the media.

Type declaration

  • edges: {
        favouriteOrder: number;
        id: number;
        isMain: boolean;
        node: {
            id: number;
            isAnimationStudio: boolean;
            name: string;
            siteUrl: string;
        };
    }[]
synonyms: string[]

synonyms is an array of strings representing the synonyms of the media.

tags: Tag[]

tags is an array of Tag representing the tags of the media.

title: Title

title is an instance of Title representing the title of the media.

trailer: Trailer

trailer is an instance of Trailer representing the trailer of the media.

trending: number

trending is a number representing the trending status of the media.

type: string

type is a string representing the type of the media.

updatedAt: number

updatedAt is a number representing the timestamp when the media was last updated.

volumes?: number

volumes is a number representing the number of volumes of the media.