---
title: Reddit
description: Access Reddit data and content
---

import { BlockInfoCard } from "@/components/ui/block-info-card"

<BlockInfoCard 
  type="reddit"
  color="#FF5700"
/>

{/* MANUAL-CONTENT-START:intro */}
[Reddit](https://www.reddit.com/) is a social platform where users share and discuss content in topic-based communities called subreddits.

In Sim, you can use the Reddit integration to:

- **Get Posts**: Retrieve posts from any subreddit, with options to sort (Hot, New, Top, Rising) and filter Top posts by time (Day, Week, Month, Year, All Time).
- **Get Comments**: Fetch comments from a specific post, with options to sort and set the number of comments.

These operations let your agents access and analyze Reddit content as part of your automated workflows.
{/* MANUAL-CONTENT-END */}


## Usage Instructions

Integrate Reddit into workflows. Read posts, comments, and search content. Submit posts, vote, reply, edit, manage messages, and access user and subreddit info.



## Actions

### `reddit_get_posts`

Fetch posts from a subreddit with different sorting options

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `subreddit` | string | Yes | The subreddit to fetch posts from \(e.g., "technology", "news"\) |
| `sort` | string | No | Sort method for posts \(e.g., "hot", "new", "top", "rising", "controversial"\). Default: "hot" |
| `limit` | number | No | Maximum number of posts to return \(e.g., 25\). Default: 10, max: 100 |
| `time` | string | No | Time filter for "top" sorted posts: "day", "week", "month", "year", or "all" \(default: "all"\) |
| `after` | string | No | Fullname of a thing to fetch items after \(for pagination\) |
| `before` | string | No | Fullname of a thing to fetch items before \(for pagination\) |
| `count` | number | No | A count of items already seen in the listing \(used for numbering\) |
| `show` | string | No | Show items that would normally be filtered \(e.g., "all"\) |
| `sr_detail` | boolean | No | Expand subreddit details in the response |
| `g` | string | No | Geo filter for posts \(e.g., "GLOBAL", "US", "AR", etc.\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `subreddit` | string | Name of the subreddit where posts were fetched from |
| `posts` | array | Array of posts with title, author, URL, score, comments count, and metadata |
|   ↳ `id` | string | Post ID |
|   ↳ `name` | string | Thing fullname \(t3_xxxxx\) |
|   ↳ `title` | string | Post title |
|   ↳ `author` | string | Author username |
|   ↳ `url` | string | Post URL |
|   ↳ `permalink` | string | Reddit permalink |
|   ↳ `score` | number | Post score \(upvotes - downvotes\) |
|   ↳ `num_comments` | number | Number of comments |
|   ↳ `created_utc` | number | Creation timestamp \(UTC\) |
|   ↳ `is_self` | boolean | Whether this is a text post |
|   ↳ `selftext` | string | Text content for self posts |
|   ↳ `thumbnail` | string | Thumbnail URL |
|   ↳ `subreddit` | string | Subreddit name |
| `after` | string | Fullname of the last item for forward pagination |
| `before` | string | Fullname of the first item for backward pagination |

### `reddit_get_comments`

Fetch comments from a specific Reddit post

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `postId` | string | Yes | The ID of the Reddit post to fetch comments from \(e.g., "abc123"\) |
| `subreddit` | string | Yes | The subreddit where the post is located \(e.g., "technology", "programming"\) |
| `sort` | string | No | Sort method for comments: "confidence", "top", "new", "controversial", "old", "random", "qa" \(default: "confidence"\) |
| `limit` | number | No | Maximum number of comments to return \(e.g., 25\). Default: 50, max: 100 |
| `depth` | number | No | Maximum depth of subtrees in the thread \(controls nested comment levels\) |
| `context` | number | No | Number of parent comments to include |
| `showedits` | boolean | No | Show edit information for comments |
| `showmore` | boolean | No | Include "load more comments" elements in the response |
| `threaded` | boolean | No | Return comments in threaded/nested format |
| `truncate` | number | No | Integer to truncate comment depth |
| `comment` | string | No | ID36 of a comment to focus on \(returns that comment thread\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `post` | object | Post information including ID, title, author, content, and metadata |
|   ↳ `id` | string | Post ID |
|   ↳ `name` | string | Thing fullname \(t3_xxxxx\) |
|   ↳ `title` | string | Post title |
|   ↳ `author` | string | Post author |
|   ↳ `selftext` | string | Post text content |
|   ↳ `score` | number | Post score |
|   ↳ `created_utc` | number | Creation timestamp |
|   ↳ `permalink` | string | Reddit permalink |
| `comments` | array | Nested comments with author, body, score, timestamps, and replies |
|   ↳ `id` | string | Comment ID |
|   ↳ `name` | string | Thing fullname \(t1_xxxxx\) |
|   ↳ `author` | string | Comment author |
|   ↳ `body` | string | Comment text |
|   ↳ `score` | number | Comment score |
|   ↳ `created_utc` | number | Creation timestamp |
|   ↳ `permalink` | string | Comment permalink |
|   ↳ `replies` | array | Nested reply comments |

### `reddit_get_controversial`

Fetch controversial posts from a subreddit

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `subreddit` | string | Yes | The subreddit to fetch posts from \(e.g., "technology", "news"\) |
| `time` | string | No | Time filter for controversial posts: "hour", "day", "week", "month", "year", or "all" \(default: "all"\) |
| `limit` | number | No | Maximum number of posts to return \(e.g., 25\). Default: 10, max: 100 |
| `after` | string | No | Fullname of a thing to fetch items after \(for pagination\) |
| `before` | string | No | Fullname of a thing to fetch items before \(for pagination\) |
| `count` | number | No | A count of items already seen in the listing \(used for numbering\) |
| `show` | string | No | Show items that would normally be filtered \(e.g., "all"\) |
| `sr_detail` | boolean | No | Expand subreddit details in the response |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `subreddit` | string | Name of the subreddit where posts were fetched from |
| `posts` | array | Array of controversial posts with title, author, URL, score, comments count, and metadata |
|   ↳ `id` | string | Post ID |
|   ↳ `name` | string | Thing fullname \(t3_xxxxx\) |
|   ↳ `title` | string | Post title |
|   ↳ `author` | string | Author username |
|   ↳ `url` | string | Post URL |
|   ↳ `permalink` | string | Reddit permalink |
|   ↳ `score` | number | Post score \(upvotes - downvotes\) |
|   ↳ `num_comments` | number | Number of comments |
|   ↳ `created_utc` | number | Creation timestamp \(UTC\) |
|   ↳ `is_self` | boolean | Whether this is a text post |
|   ↳ `selftext` | string | Text content for self posts |
|   ↳ `thumbnail` | string | Thumbnail URL |
|   ↳ `subreddit` | string | Subreddit name |
| `after` | string | Fullname of the last item for forward pagination |
| `before` | string | Fullname of the first item for backward pagination |

### `reddit_search`

Search for posts within a subreddit

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `subreddit` | string | Yes | The subreddit to search in \(e.g., "technology", "programming"\) |
| `query` | string | Yes | Search query text \(e.g., "artificial intelligence", "machine learning tutorial"\) |
| `sort` | string | No | Sort method for search results \(e.g., "relevance", "hot", "top", "new", "comments"\). Default: "relevance" |
| `time` | string | No | Time filter for search results: "hour", "day", "week", "month", "year", or "all" \(default: "all"\) |
| `limit` | number | No | Maximum number of posts to return \(e.g., 25\). Default: 10, max: 100 |
| `restrict_sr` | boolean | No | Restrict search to the specified subreddit only \(default: true\) |
| `after` | string | No | Fullname of a thing to fetch items after \(for pagination\) |
| `before` | string | No | Fullname of a thing to fetch items before \(for pagination\) |
| `count` | number | No | A count of items already seen in the listing \(used for numbering\) |
| `show` | string | No | Show items that would normally be filtered \(e.g., "all"\) |
| `type` | string | No | Type of search results: "link" \(posts\), "sr" \(subreddits\), or "user" \(users\). Default: "link" |
| `sr_detail` | boolean | No | Expand subreddit details in the response |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `subreddit` | string | Name of the subreddit where search was performed |
| `posts` | array | Array of search result posts with title, author, URL, score, comments count, and metadata |
|   ↳ `id` | string | Post ID |
|   ↳ `name` | string | Thing fullname \(t3_xxxxx\) |
|   ↳ `title` | string | Post title |
|   ↳ `author` | string | Author username |
|   ↳ `url` | string | Post URL |
|   ↳ `permalink` | string | Reddit permalink |
|   ↳ `score` | number | Post score \(upvotes - downvotes\) |
|   ↳ `num_comments` | number | Number of comments |
|   ↳ `created_utc` | number | Creation timestamp \(UTC\) |
|   ↳ `is_self` | boolean | Whether this is a text post |
|   ↳ `selftext` | string | Text content for self posts |
|   ↳ `thumbnail` | string | Thumbnail URL |
|   ↳ `subreddit` | string | Subreddit name |
| `after` | string | Fullname of the last item for forward pagination |
| `before` | string | Fullname of the first item for backward pagination |

### `reddit_submit_post`

Submit a new post to a subreddit (text or link)

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `subreddit` | string | Yes | The subreddit to post to \(e.g., "technology", "programming"\) |
| `title` | string | Yes | Title of the submission \(e.g., "Check out this new AI tool"\). Max 300 characters |
| `text` | string | No | Text content for a self post in markdown format \(e.g., "This is the **body** of my post"\) |
| `url` | string | No | URL for a link post \(cannot be used with text\) |
| `nsfw` | boolean | No | Mark post as NSFW |
| `spoiler` | boolean | No | Mark post as spoiler |
| `send_replies` | boolean | No | Send reply notifications to inbox \(default: true\) |
| `flair_id` | string | No | Flair template UUID for the post \(max 36 characters\) |
| `flair_text` | string | No | Flair text to display on the post \(max 64 characters\) |
| `collection_id` | string | No | Collection UUID to add the post to |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the post was submitted successfully |
| `message` | string | Success or error message |
| `data` | object | Post data including ID, name, URL, and permalink |
|   ↳ `id` | string | New post ID |
|   ↳ `name` | string | Thing fullname \(t3_xxxxx\) |
|   ↳ `url` | string | Post URL from API response |
|   ↳ `permalink` | string | Full Reddit permalink |

### `reddit_vote`

Upvote, downvote, or unvote a Reddit post or comment

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Thing fullname to vote on \(e.g., "t3_abc123" for post, "t1_def456" for comment\) |
| `dir` | number | Yes | Vote direction: 1 \(upvote\), 0 \(unvote\), or -1 \(downvote\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the vote was successful |
| `message` | string | Success or error message |

### `reddit_save`

Save a Reddit post or comment to your saved items

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Thing fullname to save \(e.g., "t3_abc123" for post, "t1_def456" for comment\) |
| `category` | string | No | Category to save under \(Reddit Gold feature\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the save was successful |
| `message` | string | Success or error message |

### `reddit_unsave`

Remove a Reddit post or comment from your saved items

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Thing fullname to unsave \(e.g., "t3_abc123" for post, "t1_def456" for comment\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the unsave was successful |
| `message` | string | Success or error message |

### `reddit_reply`

Add a comment reply to a Reddit post or comment

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `parent_id` | string | Yes | Thing fullname to reply to \(e.g., "t3_abc123" for post, "t1_def456" for comment\) |
| `text` | string | Yes | Comment text in markdown format \(e.g., "Great post! Here is my **reply**"\) |
| `return_rtjson` | boolean | No | Return response in Rich Text JSON format |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the reply was posted successfully |
| `message` | string | Success or error message |
| `data` | object | Comment data including ID, name, permalink, and body |
|   ↳ `id` | string | New comment ID |
|   ↳ `name` | string | Thing fullname \(t1_xxxxx\) |
|   ↳ `permalink` | string | Comment permalink |
|   ↳ `body` | string | Comment body text |

### `reddit_edit`

Edit the text of your own Reddit post or comment

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `thing_id` | string | Yes | Thing fullname to edit \(e.g., "t3_abc123" for post, "t1_def456" for comment\) |
| `text` | string | Yes | New text content in markdown format \(e.g., "Updated **content** here"\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the edit was successful |
| `message` | string | Success or error message |
| `data` | object | Updated content data |
|   ↳ `id` | string | Edited thing ID |
|   ↳ `body` | string | Updated comment body \(for comments\) |
|   ↳ `selftext` | string | Updated post text \(for self posts\) |

### `reddit_delete`

Delete your own Reddit post or comment

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Thing fullname to delete \(e.g., "t3_abc123" for post, "t1_def456" for comment\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the deletion was successful |
| `message` | string | Success or error message |

### `reddit_subscribe`

Subscribe or unsubscribe from a subreddit

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `subreddit` | string | Yes | The subreddit to subscribe to or unsubscribe from \(e.g., "technology", "programming"\) |
| `action` | string | Yes | Action to perform: "sub" to subscribe or "unsub" to unsubscribe |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the subscription action was successful |
| `message` | string | Success or error message |

### `reddit_get_me`

Get information about the authenticated Reddit user

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `id` | string | User ID |
| `name` | string | Username |
| `created_utc` | number | Account creation time in UTC epoch seconds |
| `link_karma` | number | Total link karma |
| `comment_karma` | number | Total comment karma |
| `total_karma` | number | Combined total karma |
| `is_gold` | boolean | Whether user has Reddit Premium |
| `is_mod` | boolean | Whether user is a moderator |
| `has_verified_email` | boolean | Whether email is verified |
| `icon_img` | string | User avatar/icon URL |

### `reddit_get_user`

Get public profile information about any Reddit user by username

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `username` | string | Yes | Reddit username to look up \(e.g., "spez", "example_user"\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `id` | string | User ID |
| `name` | string | Username |
| `created_utc` | number | Account creation time in UTC epoch seconds |
| `link_karma` | number | Total link karma |
| `comment_karma` | number | Total comment karma |
| `total_karma` | number | Combined total karma |
| `is_gold` | boolean | Whether user has Reddit Premium |
| `is_mod` | boolean | Whether user is a moderator |
| `has_verified_email` | boolean | Whether email is verified |
| `icon_img` | string | User avatar/icon URL |

### `reddit_send_message`

Send a private message to a Reddit user

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `to` | string | Yes | Recipient username \(e.g., "example_user"\) or subreddit \(e.g., "/r/subreddit"\) |
| `subject` | string | Yes | Message subject \(max 100 characters\) |
| `text` | string | Yes | Message body in markdown format |
| `from_sr` | string | No | Subreddit name to send the message from \(requires moderator mail permission\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the message was sent successfully |
| `message` | string | Success or error message |

### `reddit_get_messages`

Retrieve private messages from your Reddit inbox

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `where` | string | No | Message folder to retrieve: "inbox" \(all\), "unread", "sent", "messages" \(direct messages only\), "comments" \(comment replies\), "selfreply" \(self-post replies\), or "mentions" \(username mentions\). Default: "inbox" |
| `limit` | number | No | Maximum number of messages to return \(e.g., 25\). Default: 25, max: 100 |
| `after` | string | No | Fullname of a thing to fetch items after \(for pagination\) |
| `before` | string | No | Fullname of a thing to fetch items before \(for pagination\) |
| `mark` | boolean | No | Whether to mark fetched messages as read |
| `count` | number | No | A count of items already seen in the listing \(used for numbering\) |
| `show` | string | No | Show items that would normally be filtered \(e.g., "all"\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `messages` | array | Array of messages with sender, recipient, subject, body, and metadata |
|   ↳ `id` | string | Message ID |
|   ↳ `name` | string | Thing fullname \(t4_xxxxx\) |
|   ↳ `author` | string | Sender username |
|   ↳ `dest` | string | Recipient username |
|   ↳ `subject` | string | Message subject |
|   ↳ `body` | string | Message body text |
|   ↳ `created_utc` | number | Creation time in UTC epoch seconds |
|   ↳ `new` | boolean | Whether the message is unread |
|   ↳ `was_comment` | boolean | Whether the message is a comment reply |
|   ↳ `context` | string | Context URL for comment replies |
|   ↳ `distinguished` | string | Distinction: null/"moderator"/"admin" |
| `after` | string | Fullname of the last item for forward pagination |
| `before` | string | Fullname of the first item for backward pagination |

### `reddit_get_subreddit_info`

Get metadata and information about a subreddit

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `subreddit` | string | Yes | The subreddit to get info about \(e.g., "technology", "programming", "news"\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `id` | string | Subreddit ID |
| `name` | string | Subreddit fullname \(t5_xxxxx\) |
| `display_name` | string | Subreddit name without prefix |
| `title` | string | Subreddit title |
| `description` | string | Full subreddit description \(markdown\) |
| `public_description` | string | Short public description |
| `subscribers` | number | Number of subscribers |
| `accounts_active` | number | Number of currently active users |
| `created_utc` | number | Creation time in UTC epoch seconds |
| `over18` | boolean | Whether the subreddit is NSFW |
| `lang` | string | Primary language of the subreddit |
| `subreddit_type` | string | Subreddit type: public, private, restricted, etc. |
| `url` | string | Subreddit URL path \(e.g., /r/technology/\) |
| `icon_img` | string | Subreddit icon URL |
| `banner_img` | string | Subreddit banner URL |

### `reddit_get_subreddit_rules`

Get the rules and site-wide rules that apply to a subreddit

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `subreddit` | string | Yes | The subreddit to get rules for \(e.g., "technology", "programming", "news"\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `rules` | array | Array of subreddit-specific rules |
|   ↳ `short_name` | string | Short name/title of the rule |
|   ↳ `description` | string | Full description of the rule \(markdown\) |
|   ↳ `description_html` | string | HTML-rendered rule description |
|   ↳ `violation_reason` | string | Reason shown on the report menu when this rule is selected |
|   ↳ `kind` | string | What the rule applies to: "link", "comment", or "all" |
|   ↳ `created_utc` | number | Creation time in UTC epoch seconds |
|   ↳ `priority` | number | Display/order priority of the rule |
| `site_rules` | array | Reddit site-wide rules that apply to the subreddit |
| `site_rules_flow` | array | Structured site-wide rules flow used by the report menu |

### `reddit_get_user_posts`

Fetch submitted posts (t3) from a Reddit user profile

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `username` | string | Yes | Reddit username whose posts to fetch \(e.g., "spez", "example_user"\) |
| `sort` | string | No | Sort method for posts: "hot", "new", "top", "controversial" \(default: "new"\) |
| `time` | string | No | Time filter for "top"/"controversial" sorts: "hour", "day", "week", "month", "year", or "all" \(default: "all"\) |
| `limit` | number | No | Maximum number of posts to return \(e.g., 25\). Default: 25, max: 100 |
| `after` | string | No | Fullname of a thing to fetch items after \(for pagination\) |
| `before` | string | No | Fullname of a thing to fetch items before \(for pagination\) |
| `count` | number | No | A count of items already seen in the listing \(used for numbering\) |
| `show` | string | No | Show items that would normally be filtered \(e.g., "all"\) |
| `sr_detail` | boolean | No | Expand subreddit details in the response |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `posts` | array | Array of submitted posts with title, author, URL, score, and metadata |
|   ↳ `id` | string | Post ID |
|   ↳ `name` | string | Thing fullname \(t3_xxxxx\) |
|   ↳ `title` | string | Post title |
|   ↳ `author` | string | Author username |
|   ↳ `url` | string | Post URL |
|   ↳ `permalink` | string | Reddit permalink |
|   ↳ `score` | number | Post score \(upvotes - downvotes\) |
|   ↳ `num_comments` | number | Number of comments |
|   ↳ `created_utc` | number | Creation timestamp \(UTC\) |
|   ↳ `is_self` | boolean | Whether this is a text post |
|   ↳ `selftext` | string | Text content for self posts |
|   ↳ `thumbnail` | string | Thumbnail URL |
|   ↳ `subreddit` | string | Subreddit name |
| `after` | string | Fullname of the last item for forward pagination |
| `before` | string | Fullname of the first item for backward pagination |

### `reddit_get_user_comments`

Fetch comments (t1) made by a Reddit user

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `username` | string | Yes | Reddit username whose comments to fetch \(e.g., "spez", "example_user"\) |
| `sort` | string | No | Sort method for comments: "hot", "new", "top", "controversial" \(default: "new"\) |
| `time` | string | No | Time filter for "top"/"controversial" sorts: "hour", "day", "week", "month", "year", or "all" \(default: "all"\) |
| `limit` | number | No | Maximum number of comments to return \(e.g., 25\). Default: 25, max: 100 |
| `after` | string | No | Fullname of a thing to fetch items after \(for pagination\) |
| `before` | string | No | Fullname of a thing to fetch items before \(for pagination\) |
| `count` | number | No | A count of items already seen in the listing \(used for numbering\) |
| `show` | string | No | Show items that would normally be filtered \(e.g., "all"\) |
| `sr_detail` | boolean | No | Expand subreddit details in the response |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `comments` | array | Array of comments with author, body, score, timestamp, and permalink |
|   ↳ `id` | string | Comment ID |
|   ↳ `name` | string | Thing fullname \(t1_xxxxx\) |
|   ↳ `author` | string | Comment author |
|   ↳ `body` | string | Comment text |
|   ↳ `score` | number | Comment score |
|   ↳ `created_utc` | number | Creation timestamp |
|   ↳ `permalink` | string | Comment permalink |
| `after` | string | Fullname of the last item for forward pagination |
| `before` | string | Fullname of the first item for backward pagination |

### `reddit_get_saved`

Fetch your own saved posts (t3) and comments (t1). You can only read your own saved items

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `username` | string | Yes | Your own Reddit username \(saved items can only be read for the authenticated user\) |
| `limit` | number | No | Maximum number of items to return \(e.g., 25\). Default: 25, max: 100 |
| `after` | string | No | Fullname of a thing to fetch items after \(for pagination\) |
| `before` | string | No | Fullname of a thing to fetch items before \(for pagination\) |
| `count` | number | No | A count of items already seen in the listing \(used for numbering\) |
| `show` | string | No | Show items that would normally be filtered \(e.g., "all"\) |
| `sr_detail` | boolean | No | Expand subreddit details in the response |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `posts` | array | Array of saved posts \(t3\) with title, author, URL, score, and metadata |
|   ↳ `id` | string | Post ID |
|   ↳ `name` | string | Thing fullname \(t3_xxxxx\) |
|   ↳ `title` | string | Post title |
|   ↳ `author` | string | Author username |
|   ↳ `url` | string | Post URL |
|   ↳ `permalink` | string | Reddit permalink |
|   ↳ `score` | number | Post score \(upvotes - downvotes\) |
|   ↳ `num_comments` | number | Number of comments |
|   ↳ `created_utc` | number | Creation timestamp \(UTC\) |
|   ↳ `is_self` | boolean | Whether this is a text post |
|   ↳ `selftext` | string | Text content for self posts |
|   ↳ `thumbnail` | string | Thumbnail URL |
|   ↳ `subreddit` | string | Subreddit name |
| `comments` | array | Array of saved comments \(t1\) with author, body, score, and permalink |
|   ↳ `id` | string | Comment ID |
|   ↳ `name` | string | Thing fullname \(t1_xxxxx\) |
|   ↳ `author` | string | Comment author |
|   ↳ `body` | string | Comment text |
|   ↳ `score` | number | Comment score |
|   ↳ `created_utc` | number | Creation timestamp |
|   ↳ `permalink` | string | Comment permalink |
| `after` | string | Fullname of the last item for forward pagination |
| `before` | string | Fullname of the first item for backward pagination |

### `reddit_get_info`

Fetch information about one or more Reddit things (posts, comments, or subreddits) by their fullnames

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Comma-separated list of thing fullnames to look up \(e.g., "t3_abc123,t1_xyz789,t5_2qh33"\). Prefixes: t1_ = comment, t3_ = post, t5_ = subreddit |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `posts` | array | Posts \(t3\) matched by the requested fullnames |
|   ↳ `id` | string | Post ID |
|   ↳ `name` | string | Thing fullname \(t3_xxxxx\) |
|   ↳ `title` | string | Post title |
|   ↳ `author` | string | Author username |
|   ↳ `url` | string | Post URL |
|   ↳ `permalink` | string | Reddit permalink |
|   ↳ `score` | number | Post score \(upvotes - downvotes\) |
|   ↳ `num_comments` | number | Number of comments |
|   ↳ `created_utc` | number | Creation timestamp \(UTC\) |
|   ↳ `is_self` | boolean | Whether this is a text post |
|   ↳ `selftext` | string | Text content for self posts |
|   ↳ `thumbnail` | string | Thumbnail URL |
|   ↳ `subreddit` | string | Subreddit name |
| `comments` | array | Comments \(t1\) matched by the requested fullnames |
|   ↳ `id` | string | Comment ID |
|   ↳ `name` | string | Thing fullname \(t1_xxxxx\) |
|   ↳ `author` | string | Comment author |
|   ↳ `body` | string | Comment text |
|   ↳ `score` | number | Comment score |
|   ↳ `created_utc` | number | Creation timestamp |
|   ↳ `permalink` | string | Comment permalink |
| `subreddits` | array | Subreddits \(t5\) matched by the requested fullnames |
|   ↳ `id` | string | Subreddit ID |
|   ↳ `name` | string | Subreddit fullname \(t5_xxxxx\) |
|   ↳ `display_name` | string | Subreddit name without prefix |
|   ↳ `title` | string | Subreddit title |
|   ↳ `public_description` | string | Short public description |
|   ↳ `subscribers` | number | Number of subscribers |
|   ↳ `over18` | boolean | Whether the subreddit is NSFW |
|   ↳ `url` | string | Subreddit URL path \(e.g., /r/technology/\) |
|   ↳ `subreddit_type` | string | Subreddit type: public, private, restricted, etc. |
|   ↳ `icon_img` | string | Subreddit icon URL |
|   ↳ `created_utc` | number | Creation time in UTC epoch seconds |
|   ↳ `accounts_active` | number | Number of currently active users |

### `reddit_search_subreddits`

Search for subreddits by name and description

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `q` | string | Yes | Search query to match against subreddit names and descriptions |
| `sort` | string | No | Sort order for results: "relevance" or "activity". Default: "relevance" |
| `limit` | number | No | Maximum number of subreddits to return \(e.g., 25\). Default: 25, max: 100 |
| `after` | string | No | Fullname of a thing to fetch items after \(for pagination\) |
| `before` | string | No | Fullname of a thing to fetch items before \(for pagination\) |
| `show_users` | boolean | No | Whether to include matching user profiles in the results |
| `sr_detail` | boolean | No | Expand subreddit details in the response |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `subreddits` | array | Array of matching subreddits with name, description, and subscriber metadata |
|   ↳ `id` | string | Subreddit ID |
|   ↳ `name` | string | Subreddit fullname \(t5_xxxxx\) |
|   ↳ `display_name` | string | Subreddit name without prefix |
|   ↳ `title` | string | Subreddit title |
|   ↳ `public_description` | string | Short public description |
|   ↳ `subscribers` | number | Number of subscribers |
|   ↳ `over18` | boolean | Whether the subreddit is NSFW |
|   ↳ `url` | string | Subreddit URL path \(e.g., /r/technology/\) |
|   ↳ `subreddit_type` | string | Subreddit type: public, private, restricted, etc. |
|   ↳ `icon_img` | string | Subreddit icon URL |
|   ↳ `created_utc` | number | Creation time in UTC epoch seconds |
|   ↳ `accounts_active` | number | Number of currently active users |
| `after` | string | Fullname of the last item for forward pagination |
| `before` | string | Fullname of the first item for backward pagination |

### `reddit_list_my_subreddits`

List the subreddits the authenticated user is subscribed to

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `limit` | number | No | Maximum number of subreddits to return \(e.g., 25\). Default: 25, max: 100 |
| `after` | string | No | Fullname of a thing to fetch items after \(for pagination\) |
| `before` | string | No | Fullname of a thing to fetch items before \(for pagination\) |
| `count` | number | No | A count of items already seen in the listing \(used for numbering\) |
| `show` | string | No | Show items that would normally be filtered \(e.g., "all"\) |
| `sr_detail` | boolean | No | Expand subreddit details in the response |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `subreddits` | array | Array of subscribed subreddits with name, description, and subscriber metadata |
|   ↳ `id` | string | Subreddit ID |
|   ↳ `name` | string | Subreddit fullname \(t5_xxxxx\) |
|   ↳ `display_name` | string | Subreddit name without prefix |
|   ↳ `title` | string | Subreddit title |
|   ↳ `public_description` | string | Short public description |
|   ↳ `subscribers` | number | Number of subscribers |
|   ↳ `over18` | boolean | Whether the subreddit is NSFW |
|   ↳ `url` | string | Subreddit URL path \(e.g., /r/technology/\) |
|   ↳ `subreddit_type` | string | Subreddit type: public, private, restricted, etc. |
|   ↳ `icon_img` | string | Subreddit icon URL |
|   ↳ `created_utc` | number | Creation time in UTC epoch seconds |
|   ↳ `accounts_active` | number | Number of currently active users |
| `after` | string | Fullname of the last item for forward pagination |
| `before` | string | Fullname of the first item for backward pagination |

### `reddit_report`

Report a Reddit post or comment to subreddit moderators for a rules violation

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `thing_id` | string | Yes | Thing fullname to report \(e.g., "t3_abc123" for post, "t1_def456" for comment\) |
| `reason` | string | No | Reason for reporting \(max 100 characters\) |
| `other_reason` | string | No | Free-form custom reason for reporting \(max 100 characters\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the report was successful |
| `message` | string | Success or error message |

### `reddit_hide`

Hide one or more Reddit posts from your listings

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Comma-separated list of post fullnames to hide \(e.g., "t3_abc123,t3_def456"\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the hide was successful |
| `message` | string | Success or error message |

### `reddit_unhide`

Unhide one or more previously hidden Reddit posts

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Comma-separated list of post fullnames to unhide \(e.g., "t3_abc123,t3_def456"\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the unhide was successful |
| `message` | string | Success or error message |

### `reddit_marknsfw`

Mark a Reddit post as NSFW (not safe for work)

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Post fullname to mark as NSFW \(e.g., "t3_abc123"\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the operation was successful |
| `message` | string | Success or error message |

### `reddit_unmarknsfw`

Remove the NSFW (not safe for work) mark from a Reddit post

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Post fullname to unmark as NSFW \(e.g., "t3_abc123"\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the operation was successful |
| `message` | string | Success or error message |

### `reddit_mark_read`

Mark one or more private messages as read

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Comma-separated list of message fullnames to mark read \(e.g., "t4_abc123,t4_def456"\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the operation was successful |
| `message` | string | Success or error message |

### `reddit_mark_all_read`

Mark all private messages in the inbox as read

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the operation was successful |
| `message` | string | Success or error message |

### `reddit_mod_approve`

Approve a reported or removed Reddit post or comment as a moderator

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Thing fullname to approve \(e.g., "t3_abc123" for post, "t1_def456" for comment\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the approval was successful |
| `message` | string | Success or error message |

### `reddit_mod_remove`

Remove a Reddit post or comment as a moderator, optionally marking it as spam

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Thing fullname to remove \(e.g., "t3_abc123" for post, "t1_def456" for comment\) |
| `spam` | boolean | No | Mark the item as spam to train the subreddit spam filter \(default: false\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the removal was successful |
| `message` | string | Success or error message |

### `reddit_mod_distinguish`

Distinguish or un-distinguish a Reddit post or comment as a moderator

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Thing fullname to distinguish \(e.g., "t3_abc123" for post, "t1_def456" for comment\) |
| `how` | string | Yes | Distinguish type: "yes" \(moderator\), "no" \(remove distinction\), "admin", or "special" |
| `sticky` | boolean | No | Sticky the comment to the top of the comment page \(comments only\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the distinguish action was successful |
| `message` | string | Success or error message |

### `reddit_lock`

Lock a Reddit post or comment to prevent further replies (moderator action)

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Thing fullname to lock \(e.g., "t3_abc123" for post, "t1_def456" for comment\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the lock was successful |
| `message` | string | Success or error message |

### `reddit_unlock`

Unlock a Reddit post or comment to allow replies again (moderator action)

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Thing fullname to unlock \(e.g., "t3_abc123" for post, "t1_def456" for comment\) |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the unlock was successful |
| `message` | string | Success or error message |

### `reddit_mod_sticky`

Sticky or unsticky a Reddit post to the top of a subreddit (moderator action)

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Post fullname to sticky/unsticky \(e.g., "t3_abc123"\) |
| `state` | boolean | Yes | true to sticky the post, false to unsticky it |
| `num` | number | No | Sticky slot to use, 1-4 \(1 is the top slot\). Only applies when stickying |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the sticky action was successful |
| `message` | string | Success or error message |


