Skip to main content
Version: 0.9

Class: Subreddit

A class representing a subreddit.

Table of contents

Accessors

Methods

Accessors

createdAt

get createdAt(): Date

The creation date of the subreddit.

Returns

Date


description

get description(): undefined | string

The description of the subreddit.

Returns

undefined | string


id

get id(): `t5_${string}`

The ID (starting with t5_) of the subreddit to retrieve. e.g. t5_2qjpg

Returns

`t5_${string}`


language

get language(): string

The language of the subreddit.

Returns

string


name

get name(): string

The name of a subreddit omitting the r/.

Returns

string


nsfw

get nsfw(): boolean

Whether the subreddit is marked as NSFW (Not Safe For Work).

Returns

boolean


numberOfActiveUsers

get numberOfActiveUsers(): number

The number of active users of the subreddit.

Returns

number


numberOfSubscribers

get numberOfSubscribers(): number

The number of subscribers of the subreddit.

Returns

number


postFlairsEnabled

get postFlairsEnabled(): boolean

Whether the post flairs are enabled for this subreddit.

Returns

boolean


settings

get settings(): SubredditSettings

The settings of the subreddit.

Returns

SubredditSettings


title

get title(): undefined | string

The title of the subreddit.

Returns

undefined | string


type

get type(): SubredditType

The type of subreddit (public, private, etc.).

Returns

SubredditType


userFlairsEnabled

get userFlairsEnabled(): boolean

Whether the user flairs are enabled for this subreddit.

Returns

boolean


usersCanAssignPostFlairs

get usersCanAssignPostFlairs(): boolean

Whether the user can assign post flairs. This is only true if the post flairs are enabled.

Returns

boolean


usersCanAssignUserFlairs

get usersCanAssignUserFlairs(): boolean

Whether the user can assign user flairs. This is only true if the user flairs are enabled.

Returns

boolean

Methods

addWikiContributor

addWikiContributor(username): Promise<void>

Parameters

NameType
usernamestring

Returns

Promise<void>


approveUser

approveUser(username): Promise<void>

Parameters

NameType
usernamestring

Returns

Promise<void>


banUser

banUser(options): Promise<void>

Parameters

NameType
optionsOmit<BanUserOptions, "subredditName">

Returns

Promise<void>


banWikiContributor

banWikiContributor(options): Promise<void>

Parameters

NameType
optionsOmit<BanWikiContributorOptions, "subredditName">

Returns

Promise<void>


createPostFlairTemplate

createPostFlairTemplate(options): Promise<FlairTemplate>

Parameters

NameType
optionsOmit<CreateFlairTemplateOptions, "subredditName">

Returns

Promise<FlairTemplate>


createUserFlairTemplate

createUserFlairTemplate(options): Promise<FlairTemplate>

Parameters

NameType
optionsOmit<CreateFlairTemplateOptions, "subredditName">

Returns

Promise<FlairTemplate>


getApprovedUsers

getApprovedUsers(options?): Listing<User>

Parameters

NameType
optionsGetUsersOptions

Returns

Listing<User>


getBannedUsers

getBannedUsers(options?): Listing<User>

Parameters

NameType
optionsGetUsersOptions

Returns

Listing<User>


getBannedWikiContributors

getBannedWikiContributors(options?): Listing<User>

Parameters

NameType
optionsGetUsersOptions

Returns

Listing<User>


getControversialPosts

getControversialPosts(options?): Listing<Post>

Parameters

NameType
optionsOmit<GetPostsOptionsWithTimeframe, "subredditName">

Returns

Listing<Post>


getModerationLog

getModerationLog(options): Listing<ModAction>

Parameters

NameType
optionsGetModerationLogOptions

Returns

Listing<ModAction>


getModerators

getModerators(options?): Listing<User>

Parameters

NameType
optionsGetUsersOptions

Returns

Listing<User>


getMutedUsers

getMutedUsers(options?): Listing<User>

Parameters

NameType
optionsGetUsersOptions

Returns

Listing<User>


getPostFlairTemplates

getPostFlairTemplates(): Promise<FlairTemplate[]>

Returns

Promise<FlairTemplate[]>


getTopPosts

getTopPosts(options?): Listing<Post>

Parameters

NameType
optionsOmit<GetPostsOptionsWithTimeframe, "subredditName">

Returns

Listing<Post>


getUserFlairTemplates

getUserFlairTemplates(): Promise<FlairTemplate[]>

Returns

Promise<FlairTemplate[]>


getWikiContributors

getWikiContributors(options?): Listing<User>

Parameters

NameType
optionsGetUsersOptions

Returns

Listing<User>


inviteModerator

inviteModerator(username, permissions?): Promise<void>

Parameters

NameType
usernamestring
permissions?ModeratorPermission[]

Returns

Promise<void>


muteUser

muteUser(username, note?): Promise<void>

Parameters

NameType
usernamestring
note?string

Returns

Promise<void>


removeModerator

removeModerator(username): Promise<void>

Parameters

NameType
usernamestring

Returns

Promise<void>


removeUser

removeUser(username): Promise<void>

Parameters

NameType
usernamestring

Returns

Promise<void>


removeWikiContributor

removeWikiContributor(username): Promise<void>

Parameters

NameType
usernamestring

Returns

Promise<void>


revokeModeratorInvite

revokeModeratorInvite(username): Promise<void>

Parameters

NameType
usernamestring

Returns

Promise<void>


setModeratorPermissions

setModeratorPermissions(username, permissions): Promise<void>

Parameters

NameType
usernamestring
permissionsModeratorPermission[]

Returns

Promise<void>


submitPost

submitPost(options, metadata?): Promise<Post>

Parameters

NameType
optionsSubmitLinkOptions | SubmitSelfPostOptions
metadata?Metadata

Returns

Promise<Post>


toJSON

toJSON(): Object

Returns

Object

NameType
createdAtDate
descriptionundefined | string
id`t5_${string}`
languagestring
namestring
nsfwboolean
numberOfActiveUsersnumber
numberOfSubscribersnumber
settingsSubredditSettings
titleundefined | string
typeSubredditType

unbanUser

unbanUser(username): Promise<void>

Parameters

NameType
usernamestring

Returns

Promise<void>


unbanWikiContributor

unbanWikiContributor(username): Promise<void>

Parameters

NameType
usernamestring

Returns

Promise<void>


unmuteUser

unmuteUser(username): Promise<void>

Parameters

NameType
usernamestring

Returns

Promise<void>


getById

Static getById(id, metadata?): Promise<Subreddit>

Parameters

NameType
id`t5_${string}`
metadata?Metadata

Returns

Promise<Subreddit>


getByName

Static getByName(subredditName, metadata?): Promise<Subreddit>

Parameters

NameType
subredditNamestring
metadata?Metadata

Returns

Promise<Subreddit>


getFromMetadata

Static getFromMetadata(metadata?): Promise<Subreddit>

Parameters

NameType
metadata?Metadata

Returns

Promise<Subreddit>