Function client

  • A Shikimori API wrapper that provides methods for interacting with various endpoints

    Parameters

    • options: ClientOptions = {}

      The options to configure the client, including the base URL, OAuth2 credentials, etc.

    Returns {
        abuseRequests: {
            abuse: ((params) => Promise<void>);
            offtopic: ((params) => Promise<AbuseRequest>);
            review: ((params) => Promise<void>);
            spoiler: ((params) => Promise<void>);
        };
        achievements: {
            list: ((params) => Promise<Achievement[]>);
        };
        animes: {
            byId: ((params) => Promise<Anime>);
            externalLinks: ((params) => Promise<ExternalLink[]>);
            franchise: ((params) => Promise<Franchise>);
            list: ((params) => Promise<AnimeBasic[]>);
            related: ((params) => Promise<AnimeRelation[]>);
            roles: ((params) => Promise<Role[]>);
            screenshots: ((params) => Promise<Screenshot[]>);
            similar: ((params) => Promise<AnimeBasic[]>);
            topics: ((params) => Promise<Topic<AnimeBasic>[]>);
        };
        appears: {
            markAsRead: ((params) => Promise<null>);
        };
        bans: {
            list: (() => Promise<Ban[]>);
        };
        calendars: {
            list: ((params) => Promise<Episode[]>);
        };
        characters: {
            byId: ((params) => Promise<Character>);
            search: ((params) => Promise<CharacterBasic[]>);
        };
        clubs: {
            animes: ((params) => Promise<AnimeBasic[]>);
            byId: ((params) => Promise<Club>);
            characters: ((params) => Promise<CharacterBasic[]>);
            clubs: ((params) => Promise<ClubBasic[]>);
            collections: ((params) => Promise<Topic<Linkable>[]>);
            images: ((params) => Promise<Image[]>);
            join: ((params) => Promise<void>);
            leave: ((params) => Promise<void>);
            list: ((params) => Promise<ClubBasic[]>);
            mangas: ((params) => Promise<MangaBasic[]>);
            members: ((params) => Promise<UserBasic[]>);
            ranobe: ((params) => Promise<RanobeBasic[]>);
            update: ((params) => Promise<Club>);
        };
        comments: {
            byId: ((params) => Promise<Comment>);
            create: ((params) => Promise<Comment>);
            destroy: ((params) => Promise<Notice>);
            list: ((params) => Promise<Comment[]>);
            update: ((params) => Promise<Comment>);
        };
        constants: {
            anime: (() => Promise<ContentConstants>);
            club: (() => Promise<ContentConstants>);
            manga: (() => Promise<ContentConstants>);
            smileys: (() => Promise<ContentConstants>);
            userRate: (() => Promise<UserRateConstants>);
        };
        dialogs: {
            byId: ((params) => Promise<Message<Linkable>[]>);
            destroy: ((params) => Promise<Notice>);
            list: (() => Promise<Dialog[]>);
        };
        episodeNotifications: {
            list: ((params) => Promise<EpisodeNotification>);
        };
        favorites: {
            create: ((params) => Promise<NoticeSuccess>);
            destroy: ((params) => Promise<NoticeSuccess>);
            reorder: ((params) => Promise<void>);
        };
        forums: {
            list: (() => Promise<Forum[]>);
        };
        friends: {
            create: ((params) => Promise<Notice[]>);
            destroy: ((params) => Promise<Notice>);
        };
        genres: {
            list: (() => Promise<Genre<GenreEntryType>[]>);
        };
        mangas: {
            byId: ((params) => Promise<Manga>);
            externalLinks: ((params) => Promise<ExternalLink[]>);
            franchise: ((params) => Promise<Franchise>);
            list: ((params) => Promise<MangaBasic[]>);
            related: ((params) => Promise<MangaRelation[]>);
            roles: ((params) => Promise<Role[]>);
            similar: ((params) => Promise<MangaBasic[]>);
            topics: ((params) => Promise<Topic<MangaBasic>[]>);
        };
        people: {
            byId: ((params) => Promise<Person>);
            search: ((params) => Promise<PersonBasic[]>);
        };
        publishers: {
            list: (() => Promise<Publisher[]>);
        };
        ranobe: {
            byId: ((params) => Promise<Ranobe>);
            externalLinks: ((params) => Promise<ExternalLink[]>);
            franchise: ((params) => Promise<Franchise>);
            list: ((params) => Promise<RanobeBasic[]>);
            related: ((params) => Promise<RanobeRelation[]>);
            roles: ((params) => Promise<Role[]>);
            similar: ((params) => Promise<RanobeBasic[]>);
            topics: ((params) => Promise<Topic<RanobeBasic>[]>);
        };
        reviews: {
            create: ((params) => Promise<Review>);
            destroy: ((params) => Promise<Notice>);
            update: ((params) => Promise<Review>);
        };
        setAccessToken: ((token) => void);
        stats: {
            activeUsers: (() => Promise<UserId[]>);
        };
        studios: {
            list: (() => Promise<Studio[]>);
        };
        styles: {
            byId: ((params) => Promise<Style>);
            create: ((params) => Promise<Style>);
            preview: ((params) => Promise<Style>);
            update: ((params) => Promise<Style>);
        };
        topicIgnores: {
            ignore: ((params) => Promise<TopicIgnore>);
            unignore: ((params) => Promise<TopicIgnore>);
        };
        topics: {
            byId: ((params) => Promise<Topic<Linkable>>);
            create: ((params) => Promise<Topic<Linkable>>);
            destroy: ((params) => Promise<Notice>);
            hot: ((params) => Promise<Topic<Linkable>[]>);
            list: ((params) => Promise<Topic<Linkable>[]>);
            update: ((params) => Promise<Topic<Linkable>>);
            updates: ((params) => Promise<TopicBasic[]>);
        };
        userIgnores: {
            ignore: ((params) => Promise<UserIgnore>);
            unignore: ((params) => Promise<UserIgnore>);
        };
        userImages: {
            create: ((params) => Promise<UserImage>);
        };
        userRates: {
            byId: ((params) => Promise<UserRateBasic>);
            create: ((params) => Promise<UserRateBasic>);
            destroy: ((params) => Promise<UserRateBasic>);
            increment: ((params) => Promise<UserRateBasic>);
            list: ((params) => Promise<UserRateBasic[]>);
            update: ((params) => Promise<UserRateBasic>);
        };
        users: {
            animeRates: ((params) => Promise<UserRateExtended<AnimeBasic>>);
            bans: ((params) => Promise<Ban[]>);
            byId: ((params) => Promise<User>);
            clubs: ((params) => Promise<ClubBasic[]>);
            favourites: ((params) => Promise<UserFavourites>);
            friends: ((params) => Promise<UserBasic[]>);
            history: ((params) => Promise<UserHistoryRecord[]>);
            info: ((params) => Promise<User>);
            list: ((params) => Promise<UserBasic[]>);
            mangaRates: ((params) => Promise<UserRateExtended<MangaBasic>>);
            messages: ((params) => Promise<Message<Linkable>[]>);
            signOut: (() => Promise<string>);
            unreadMessages: ((params) => Promise<UserUnreadMessages>);
            whoami: (() => Promise<User>);
        };
        videos: {
            byId: ((params) => Promise<Video[]>);
            create: ((params) => Promise<Video>);
            destroy: ((params) => Promise<void>);
        };
    }

    An object containing methods for interacting with various endpoints, as well as a function for setting the access token

Generated using TypeDoc