Skip to main content
Every reddit.api.* operation is listed below with parameter shapes and return types from the plugin Zod schemas.
New to Corsair? See API access, authentication, and error handling.

Feeds

getAll

feeds.getAll Get posts from /r/all feed Risk: read
await corsair.reddit.api.feeds.getAll({});
Input
NameTypeRequiredDescription
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
Output
NameTypeRequiredDescription
postsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  title: string,
  selftext: string | null,
  selftext_html: string | null,
  url: string,
  author: string | null,
  author_fullname?: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  subreddit_id?: string,
  score: number,
  ups: number,
  downs: number,
  upvote_ratio: number,
  num_comments: number,
  over_18: boolean,
  spoiler: boolean,
  stickied: boolean,
  archived?: boolean,
  locked?: boolean,
  hide_score?: boolean,
  created_utc: number,
  permalink: string,
  thumbnail: string,
  total_awards_received?: number
}[]

getPopular

feeds.getPopular Get posts from /r/popular feed Risk: read
await corsair.reddit.api.feeds.getPopular({});
Input
NameTypeRequiredDescription
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
Output
NameTypeRequiredDescription
postsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  title: string,
  selftext: string | null,
  selftext_html: string | null,
  url: string,
  author: string | null,
  author_fullname?: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  subreddit_id?: string,
  score: number,
  ups: number,
  downs: number,
  upvote_ratio: number,
  num_comments: number,
  over_18: boolean,
  spoiler: boolean,
  stickied: boolean,
  archived?: boolean,
  locked?: boolean,
  hide_score?: boolean,
  created_utc: number,
  permalink: string,
  thumbnail: string,
  total_awards_received?: number
}[]

Listings

subredditsNew

listings.subredditsNew Get new subreddit listings Risk: read
await corsair.reddit.api.listings.subredditsNew({});
Input
NameTypeRequiredDescription
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
Output
NameTypeRequiredDescription
subredditsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  display_name: string,
  display_name_prefixed: string,
  title: string,
  description: string | null,
  description_html: string | null,
  public_description: string | null,
  subscribers: number,
  active_user_count?: number | null,
  accounts_active?: number | null,
  over18: boolean,
  quarantine: boolean,
  restrict_posting?: boolean,
  restrict_commenting?: boolean,
  icon_img: string | null,
  banner_img: string | null,
  community_icon: string | null,
  primary_color: string | null,
  created_utc: number,
  created: number,
  lang: string,
  allow_discovery?: boolean,
  submit_text_label?: string | null,
  wiki_enabled?: boolean,
  subreddit_type?: string
}[]

subredditsPopular

listings.subredditsPopular Get popular subreddit listings Risk: read
await corsair.reddit.api.listings.subredditsPopular({});
Input
NameTypeRequiredDescription
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
Output
NameTypeRequiredDescription
subredditsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  display_name: string,
  display_name_prefixed: string,
  title: string,
  description: string | null,
  description_html: string | null,
  public_description: string | null,
  subscribers: number,
  active_user_count?: number | null,
  accounts_active?: number | null,
  over18: boolean,
  quarantine: boolean,
  restrict_posting?: boolean,
  restrict_commenting?: boolean,
  icon_img: string | null,
  banner_img: string | null,
  community_icon: string | null,
  primary_color: string | null,
  created_utc: number,
  created: number,
  lang: string,
  allow_discovery?: boolean,
  submit_text_label?: string | null,
  wiki_enabled?: boolean,
  subreddit_type?: string
}[]

Posts

getById

posts.getById Get posts by fullname IDs Risk: read
await corsair.reddit.api.posts.getById({});
Input
NameTypeRequiredDescription
namesstringYes
Output
NameTypeRequiredDescription
postsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  title: string,
  selftext: string | null,
  selftext_html: string | null,
  url: string,
  author: string | null,
  author_fullname?: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  subreddit_id?: string,
  score: number,
  ups: number,
  downs: number,
  upvote_ratio: number,
  num_comments: number,
  over_18: boolean,
  spoiler: boolean,
  stickied: boolean,
  archived?: boolean,
  locked?: boolean,
  hide_score?: boolean,
  created_utc: number,
  permalink: string,
  thumbnail: string,
  total_awards_received?: number
}[]

getComments

posts.getComments Get a post and its comments Risk: read
await corsair.reddit.api.posts.getComments({});
Input
NameTypeRequiredDescription
post_idstringYes
limitnumberNo
depthnumberNo
contextnumberNo
sortconfidence | top | new | controversial | old | random | qaNo
Output
NameTypeRequiredDescription
postobjectYes
commentsobject[]Yes
afterstringNo
beforestringNo
{
  id: string,
  name: string,
  title: string,
  selftext: string | null,
  selftext_html: string | null,
  url: string,
  author: string | null,
  author_fullname?: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  subreddit_id?: string,
  score: number,
  ups: number,
  downs: number,
  upvote_ratio: number,
  num_comments: number,
  over_18: boolean,
  spoiler: boolean,
  stickied: boolean,
  archived?: boolean,
  locked?: boolean,
  hide_score?: boolean,
  created_utc: number,
  permalink: string,
  thumbnail: string,
  total_awards_received?: number
}
{
  id: string,
  name: string,
  body: string,
  body_html: string,
  author: string | null,
  author_fullname?: string,
  score: number,
  ups: number,
  downs: number,
  depth?: number,
  parent_id: string,
  link_id: string,
  created_utc: number,
  controversiality: number,
  gilded?: number,
  edited: boolean | number,
  score_hidden?: boolean,
  collapsed?: boolean,
  archived?: boolean,
  locked?: boolean,
  stickied?: boolean,
  permalink: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  over_18?: boolean
}[]

global

search.global Search all of Reddit Risk: read
await corsair.reddit.api.search.global({});
Input
NameTypeRequiredDescription
qstringYes
sortrelevance | hot | top | new | commentsNo
thour | day | week | month | year | allNo
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
restrict_srbooleanNo
sr_namestringNo
typelink | sr | userNo
Output
NameTypeRequiredDescription
postsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  title: string,
  selftext: string | null,
  selftext_html: string | null,
  url: string,
  author: string | null,
  author_fullname?: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  subreddit_id?: string,
  score: number,
  ups: number,
  downs: number,
  upvote_ratio: number,
  num_comments: number,
  over_18: boolean,
  spoiler: boolean,
  stickied: boolean,
  archived?: boolean,
  locked?: boolean,
  hide_score?: boolean,
  created_utc: number,
  permalink: string,
  thumbnail: string,
  total_awards_received?: number
}[]

subreddit

search.subreddit Search within a subreddit Risk: read
await corsair.reddit.api.search.subreddit({});
Input
NameTypeRequiredDescription
subredditstringYes
qstringYes
sortrelevance | hot | top | new | commentsNo
thour | day | week | month | year | allNo
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
Output
NameTypeRequiredDescription
postsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  title: string,
  selftext: string | null,
  selftext_html: string | null,
  url: string,
  author: string | null,
  author_fullname?: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  subreddit_id?: string,
  score: number,
  ups: number,
  downs: number,
  upvote_ratio: number,
  num_comments: number,
  over_18: boolean,
  spoiler: boolean,
  stickied: boolean,
  archived?: boolean,
  locked?: boolean,
  hide_score?: boolean,
  created_utc: number,
  permalink: string,
  thumbnail: string,
  total_awards_received?: number
}[]

subreddits

search.subreddits Search for subreddits by name Risk: read
await corsair.reddit.api.search.subreddits({});
Input
NameTypeRequiredDescription
qstringYes
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
Output
NameTypeRequiredDescription
subredditsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  display_name: string,
  display_name_prefixed: string,
  title: string,
  description: string | null,
  description_html: string | null,
  public_description: string | null,
  subscribers: number,
  active_user_count?: number | null,
  accounts_active?: number | null,
  over18: boolean,
  quarantine: boolean,
  restrict_posting?: boolean,
  restrict_commenting?: boolean,
  icon_img: string | null,
  banner_img: string | null,
  community_icon: string | null,
  primary_color: string | null,
  created_utc: number,
  created: number,
  lang: string,
  allow_discovery?: boolean,
  submit_text_label?: string | null,
  wiki_enabled?: boolean,
  subreddit_type?: string
}[]

Subreddits

getAbout

subreddits.getAbout Get subreddit metadata and info Risk: read
await corsair.reddit.api.subreddits.getAbout({});
Input
NameTypeRequiredDescription
subredditstringYes
Output
NameTypeRequiredDescription
idstringYes
namestringYes
display_namestringYes
display_name_prefixedstringYes
titlestringYes
descriptionstring | nullYes
description_htmlstring | nullYes
public_descriptionstring | nullYes
subscribersnumberYes
active_user_countnumberNo
accounts_activenumberNo
over18booleanYes
quarantinebooleanYes
restrict_postingbooleanNo
restrict_commentingbooleanNo
icon_imgstring | nullYes
banner_imgstring | nullYes
community_iconstring | nullYes
primary_colorstring | nullYes
created_utcnumberYes
creatednumberYes
langstringYes
allow_discoverybooleanNo
submit_text_labelstring | nullNo
wiki_enabledbooleanNo
subreddit_typestringNo

getControversial

subreddits.getControversial Get controversial posts from a subreddit Risk: read
await corsair.reddit.api.subreddits.getControversial({});
Input
NameTypeRequiredDescription
subredditstringYes
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
thour | day | week | month | year | allNo
Output
NameTypeRequiredDescription
postsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  title: string,
  selftext: string | null,
  selftext_html: string | null,
  url: string,
  author: string | null,
  author_fullname?: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  subreddit_id?: string,
  score: number,
  ups: number,
  downs: number,
  upvote_ratio: number,
  num_comments: number,
  over_18: boolean,
  spoiler: boolean,
  stickied: boolean,
  archived?: boolean,
  locked?: boolean,
  hide_score?: boolean,
  created_utc: number,
  permalink: string,
  thumbnail: string,
  total_awards_received?: number
}[]

getHot

subreddits.getHot Get hot posts from a subreddit Risk: read
await corsair.reddit.api.subreddits.getHot({});
Input
NameTypeRequiredDescription
subredditstringYes
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
Output
NameTypeRequiredDescription
postsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  title: string,
  selftext: string | null,
  selftext_html: string | null,
  url: string,
  author: string | null,
  author_fullname?: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  subreddit_id?: string,
  score: number,
  ups: number,
  downs: number,
  upvote_ratio: number,
  num_comments: number,
  over_18: boolean,
  spoiler: boolean,
  stickied: boolean,
  archived?: boolean,
  locked?: boolean,
  hide_score?: boolean,
  created_utc: number,
  permalink: string,
  thumbnail: string,
  total_awards_received?: number
}[]

getNew

subreddits.getNew Get new posts from a subreddit Risk: read
await corsair.reddit.api.subreddits.getNew({});
Input
NameTypeRequiredDescription
subredditstringYes
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
Output
NameTypeRequiredDescription
postsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  title: string,
  selftext: string | null,
  selftext_html: string | null,
  url: string,
  author: string | null,
  author_fullname?: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  subreddit_id?: string,
  score: number,
  ups: number,
  downs: number,
  upvote_ratio: number,
  num_comments: number,
  over_18: boolean,
  spoiler: boolean,
  stickied: boolean,
  archived?: boolean,
  locked?: boolean,
  hide_score?: boolean,
  created_utc: number,
  permalink: string,
  thumbnail: string,
  total_awards_received?: number
}[]

getRising

subreddits.getRising Get rising posts from a subreddit Risk: read
await corsair.reddit.api.subreddits.getRising({});
Input
NameTypeRequiredDescription
subredditstringYes
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
Output
NameTypeRequiredDescription
postsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  title: string,
  selftext: string | null,
  selftext_html: string | null,
  url: string,
  author: string | null,
  author_fullname?: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  subreddit_id?: string,
  score: number,
  ups: number,
  downs: number,
  upvote_ratio: number,
  num_comments: number,
  over_18: boolean,
  spoiler: boolean,
  stickied: boolean,
  archived?: boolean,
  locked?: boolean,
  hide_score?: boolean,
  created_utc: number,
  permalink: string,
  thumbnail: string,
  total_awards_received?: number
}[]

getTop

subreddits.getTop Get top posts from a subreddit with time filter Risk: read
await corsair.reddit.api.subreddits.getTop({});
Input
NameTypeRequiredDescription
subredditstringYes
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
thour | day | week | month | year | allNo
Output
NameTypeRequiredDescription
postsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  title: string,
  selftext: string | null,
  selftext_html: string | null,
  url: string,
  author: string | null,
  author_fullname?: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  subreddit_id?: string,
  score: number,
  ups: number,
  downs: number,
  upvote_ratio: number,
  num_comments: number,
  over_18: boolean,
  spoiler: boolean,
  stickied: boolean,
  archived?: boolean,
  locked?: boolean,
  hide_score?: boolean,
  created_utc: number,
  permalink: string,
  thumbnail: string,
  total_awards_received?: number
}[]

Users

getAbout

users.getAbout Get user profile information Risk: read
await corsair.reddit.api.users.getAbout({});
Input
NameTypeRequiredDescription
usernamestringYes
Output
NameTypeRequiredDescription
idstringYes
namestringYes
link_karmanumberYes
comment_karmanumberYes
total_karmanumberYes
is_employeebooleanNo
is_modbooleanNo
is_goldbooleanNo
created_utcnumberYes
has_verified_emailbooleanYes
verifiedbooleanNo
icon_imgstring | nullYes
is_suspendedbooleanNo
pref_show_snoovatarbooleanNo
accept_followersbooleanNo

getComments

users.getComments Get a user’s comments Risk: read
await corsair.reddit.api.users.getComments({});
Input
NameTypeRequiredDescription
usernamestringYes
sortnew | hot | topNo
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
thour | day | week | month | year | allNo
Output
NameTypeRequiredDescription
commentsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  body: string,
  body_html: string,
  author: string | null,
  author_fullname?: string,
  score: number,
  ups: number,
  downs: number,
  depth?: number,
  parent_id: string,
  link_id: string,
  created_utc: number,
  controversiality: number,
  gilded?: number,
  edited: boolean | number,
  score_hidden?: boolean,
  collapsed?: boolean,
  archived?: boolean,
  locked?: boolean,
  stickied?: boolean,
  permalink: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  over_18?: boolean
}[]

getOverview

users.getOverview Get a user’s mixed posts and comments Risk: read
await corsair.reddit.api.users.getOverview({});
Input
NameTypeRequiredDescription
usernamestringYes
sortnew | hot | topNo
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
thour | day | week | month | year | allNo
Output
NameTypeRequiredDescription
itemsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
(
  {
    id: string,
    name: string,
    title: string,
    selftext: string | null,
    selftext_html: string | null,
    url: string,
    author: string | null,
    author_fullname?: string,
    subreddit: string,
    subreddit_name_prefixed: string,
    subreddit_id?: string,
    score: number,
    ups: number,
    downs: number,
    upvote_ratio: number,
    num_comments: number,
    over_18: boolean,
    spoiler: boolean,
    stickied: boolean,
    archived?: boolean,
    locked?: boolean,
    hide_score?: boolean,
    created_utc: number,
    permalink: string,
    thumbnail: string,
    total_awards_received?: number
  } | {
    id: string,
    name: string,
    body: string,
    body_html: string,
    author: string | null,
    author_fullname?: string,
    score: number,
    ups: number,
    downs: number,
    depth?: number,
    parent_id: string,
    link_id: string,
    created_utc: number,
    controversiality: number,
    gilded?: number,
    edited: boolean | number,
    score_hidden?: boolean,
    collapsed?: boolean,
    archived?: boolean,
    locked?: boolean,
    stickied?: boolean,
    permalink: string,
    subreddit: string,
    subreddit_name_prefixed: string,
    over_18?: boolean
  }
)[]

getSubmitted

users.getSubmitted Get a user’s submitted posts Risk: read
await corsair.reddit.api.users.getSubmitted({});
Input
NameTypeRequiredDescription
usernamestringYes
sortnew | hot | topNo
limitnumberNo
afterstringNo
beforestringNo
countnumberNo
thour | day | week | month | year | allNo
Output
NameTypeRequiredDescription
postsobject[]Yes
afterstringNo
beforestringNo
distnumberYes
{
  id: string,
  name: string,
  title: string,
  selftext: string | null,
  selftext_html: string | null,
  url: string,
  author: string | null,
  author_fullname?: string,
  subreddit: string,
  subreddit_name_prefixed: string,
  subreddit_id?: string,
  score: number,
  ups: number,
  downs: number,
  upvote_ratio: number,
  num_comments: number,
  over_18: boolean,
  spoiler: boolean,
  stickied: boolean,
  archived?: boolean,
  locked?: boolean,
  hide_score?: boolean,
  created_utc: number,
  permalink: string,
  thumbnail: string,
  total_awards_received?: number
}[]