Skip to main content
Version: 0.10

Class: Post

models.Post

Table of contents

Accessors

Methods

Accessors

approved

get approved(): boolean

Returns

boolean


archived

get archived(): boolean

Returns

boolean


authorId

get authorId(): undefined | `t2_${string}`

Returns

undefined | `t2_${string}`


authorName

get authorName(): string

Returns

string


body

get body(): undefined | string

Returns

undefined | string


bodyHtml

get bodyHtml(): undefined | string

Returns

undefined | string


comments

get comments(): Listing<Comment>

Returns

Listing<Comment>


createdAt

get createdAt(): Date

Returns

Date


distinguishedBy

get distinguishedBy(): undefined | string

Returns

undefined | string


edited

get edited(): boolean

Returns

boolean


flair

get flair(): undefined | LinkFlair

Returns

undefined | LinkFlair


hidden

get hidden(): boolean

Returns

boolean


id

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

Returns

`t3_${string}`


ignoringReports

get ignoringReports(): boolean

Returns

boolean


locked

get locked(): boolean

Returns

boolean


modReportReasons

get modReportReasons(): string[]

Returns

string[]


nsfw

get nsfw(): boolean

Returns

boolean


numberOfComments

get numberOfComments(): number

Returns

number


numberOfReports

get numberOfReports(): number

Returns

number


get permalink(): string

Returns

string


quarantined

get quarantined(): boolean

Returns

boolean


removed

get removed(): boolean

Returns

boolean


removedBy

get removedBy(): undefined | string

Who removed this object (username)

Returns

undefined | string


removedByCategory

get removedByCategory(): undefined | string

who/what removed this object. It will return one of the following:

  • "anti_evil_ops": object is removed by a aeops member
  • "author": object is removed by author of the post
  • "automod_filtered": object is filtered by automod
  • "community_ops": object is removed by a community team member
  • "content_takedown": object is removed due to content violation
  • "copyright_takedown": object is removed due to copyright violation
  • "deleted": object is deleted
  • "moderator": object is removed by a mod of the sub
  • "reddit": object is removed by anyone else
  • undefined: object is not removed

Returns

undefined | string


score

get score(): number

Returns

number


secureMedia

get secureMedia(): undefined | SecureMedia

Returns

undefined | SecureMedia


spam

get spam(): boolean

Returns

boolean


spoiler

get spoiler(): boolean

Returns

boolean


stickied

get stickied(): boolean

Returns

boolean


subredditId

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

Returns

`t5_${string}`


subredditName

get subredditName(): string

Returns

string


thumbnail

get thumbnail(): undefined | { height: number ; url: string ; width: number }

Returns

undefined | { height: number ; url: string ; width: number }


title

get title(): string

Returns

string


url

get url(): string

Returns

string


userReportReasons

get userReportReasons(): string[]

Returns

string[]

Methods

addComment

addComment(options): Promise<Comment>

Parameters

NameType
optionsCommentSubmissionOptions

Returns

Promise<Comment>


addRemovalNote

addRemovalNote(options): Promise<void>

Add a mod note for why the post was removed

Parameters

NameTypeDescription
optionsObject-
options.modNote?stringthe reason for removal (maximum 100 characters) (optional)
options.reasonIdstringid of a Removal Reason - you can leave this as an empty string if you don't have one

Returns

Promise<void>


approve

approve(): Promise<void>

Returns

Promise<void>


crosspost

crosspost(options): Promise<Post>

Parameters

NameType
optionsOmit<CrosspostOptions, "postId">

Returns

Promise<Post>


delete

delete(): Promise<void>

Returns

Promise<void>


distinguish

distinguish(): Promise<void>

Returns

Promise<void>


distinguishAsAdmin

distinguishAsAdmin(): Promise<void>

Returns

Promise<void>


edit

edit(options): Promise<void>

Parameters

NameType
optionsPostTextOptions

Returns

Promise<void>


getAuthor

getAuthor(): Promise<User>

Returns

Promise<User>


hide

hide(): Promise<void>

Returns

Promise<void>


ignoreReports

ignoreReports(): Promise<void>

Returns

Promise<void>


isApproved

isApproved(): boolean

Returns

boolean


isArchived

isArchived(): boolean

Returns

boolean


isDistinguishedBy

isDistinguishedBy(): undefined | string

Returns

undefined | string


isEdited

isEdited(): boolean

Returns

boolean


isHidden

isHidden(): boolean

Returns

boolean


isIgnoringReports

isIgnoringReports(): boolean

Returns

boolean


isLocked

isLocked(): boolean

Returns

boolean


isNsfw

isNsfw(): boolean

Returns

boolean


isQuarantined

isQuarantined(): boolean

Returns

boolean


isRemoved

isRemoved(): boolean

Returns

boolean


isSpam

isSpam(): boolean

Returns

boolean


isSpoiler

isSpoiler(): boolean

Returns

boolean


isStickied

isStickied(): boolean

Returns

boolean


lock

lock(): Promise<void>

Returns

Promise<void>


markAsNsfw

markAsNsfw(): Promise<void>

Returns

Promise<void>


markAsSpoiler

markAsSpoiler(): Promise<void>

Returns

Promise<void>


remove

remove(isSpam?): Promise<void>

Parameters

NameTypeDefault value
isSpambooleanfalse

Returns

Promise<void>


sticky

sticky(position?): Promise<void>

Parameters

NameType
position?2 | 1 | 3 | 4

Returns

Promise<void>


toJSON

toJSON(): Pick<Post, "spoiler" | "subredditName" | "flair" | "id" | "score" | "title" | "url" | "subredditId" | "body" | "archived" | "nsfw" | "quarantined" | "spam" | "permalink" | "authorId" | "authorName" | "bodyHtml" | "thumbnail" | "numberOfComments" | "numberOfReports" | "createdAt" | "approved" | "stickied" | "removed" | "removedBy" | "removedByCategory" | "edited" | "locked" | "hidden" | "ignoringReports" | "distinguishedBy" | "secureMedia" | "userReportReasons" | "modReportReasons">

Returns

Pick<Post, "spoiler" | "subredditName" | "flair" | "id" | "score" | "title" | "url" | "subredditId" | "body" | "archived" | "nsfw" | "quarantined" | "spam" | "permalink" | "authorId" | "authorName" | "bodyHtml" | "thumbnail" | "numberOfComments" | "numberOfReports" | "createdAt" | "approved" | "stickied" | "removed" | "removedBy" | "removedByCategory" | "edited" | "locked" | "hidden" | "ignoringReports" | "distinguishedBy" | "secureMedia" | "userReportReasons" | "modReportReasons">


undistinguish

undistinguish(): Promise<void>

Returns

Promise<void>


unhide

unhide(): Promise<void>

Returns

Promise<void>


unignoreReports

unignoreReports(): Promise<void>

Returns

Promise<void>


unlock

unlock(): Promise<void>

Returns

Promise<void>


unmarkAsNsfw

unmarkAsNsfw(): Promise<void>

Returns

Promise<void>


unmarkAsSpoiler

unmarkAsSpoiler(): Promise<void>

Returns

Promise<void>


unsticky

unsticky(): Promise<void>

Returns

Promise<void>

  • Table of contents
  • Accessors
    • approved
    • archived
    • authorId
    • authorName
    • body
    • bodyHtml
    • comments
    • createdAt
    • distinguishedBy
    • edited
    • flair
    • hidden
    • id
    • ignoringReports
    • locked
    • modReportReasons
    • nsfw
    • numberOfComments
    • numberOfReports
    • permalink
    • quarantined
    • removed
    • removedBy
    • removedByCategory
    • score
    • secureMedia
    • spam
    • spoiler
    • stickied
    • subredditId
    • subredditName
    • thumbnail
    • title
    • url
    • userReportReasons
  • Methods
    • addComment
    • addRemovalNote
    • approve
    • crosspost
    • delete
    • distinguish
    • distinguishAsAdmin
    • edit
    • getAuthor
    • hide
    • ignoreReports
    • isApproved
    • isArchived
    • isDistinguishedBy
    • isEdited
    • isHidden
    • isIgnoringReports
    • isLocked
    • isNsfw
    • isQuarantined
    • isRemoved
    • isSpam
    • isSpoiler
    • isStickied
    • lock
    • markAsNsfw
    • markAsSpoiler
    • remove
    • sticky
    • toJSON
    • undistinguish
    • unhide
    • unignoreReports
    • unlock
    • unmarkAsNsfw
    • unmarkAsSpoiler
    • unsticky