Reddit Upload API Images, Text & Links

Post content to Reddit programmatically. Reddit API simplified.

Start Free
reddit-upload.ts
import { UploadPost } from 'upload-post';

const uploader = new UploadPost('your-api-key');

await uploader.upload('video.mp4', {
  title: 'My Reddit Post',
  platforms: ['reddit']
});

Can you post to Reddit via API?

Yes. Upload-Post publishes image posts, text posts and link posts to any subreddit with one REST call (platform[]=reddit and a subreddit parameter). No Reddit OAuth app, no PRAW boilerplate. It also supports flairs, NSFW/spoiler markers and scheduling, and can pull your post history with full media details.

Reddit API Features

Image Posts

Share images and galleries (JPG, PNG, GIF, WebP).

Text Posts

Create self-posts with markdown.

Link Posts

Share links with custom titles.

Subreddit Targeting

Post to specific subreddits with the subreddit parameter.

Flair, NSFW & Spoiler

Set flairs and content markers per post.

Scheduling

Schedule posts for optimal visibility.

How do you post to Reddit with one request?

One POST to /api/upload_photos. Send a file or a public URL

Request (cURL)
curl -X POST https://api.upload-post.com/api/upload_photos \
  -H 'Authorization: Apikey your-api-key-here' \
  -F 'user=my-profile' \
  -F 'platform[]=reddit' \
  -F 'photos[]=@/path/to/screenshot.png' \
  -F 'reddit_title=I built a tool that posts to 22 platforms at once' \
  -F 'subreddit=SideProject'
Response (200 OK)
{
  "success": true,
  "results": {
    "reddit": {
      "success": true,
      "url": "https://www.reddit.com/r/SideProject/comments/..."
    }
  },
  "usage": { "count": 9, "limit": 100 }
}

Long uploads switch to background automatically; poll the Upload Status endpoint with your request_id. Full reference in the Upload API docs.

What are the Reddit content requirements and limits?

What the API accepts for Reddit: sizes, formats and platform limits

Requirement Value
Post title Required; Reddit caps titles at 300 characters
Images JPG, PNG, GIF, WebP, up to 10 MB
Text posts Markdown supported in the body (self-posts)
Subreddit Required per post; your account must satisfy that subreddit’s karma/age rules
Flair / NSFW / spoiler Set with reddit_flair_id, nsfw=true, spoiler=true
Scheduling scheduled_date (ISO-8601) up to 365 days ahead

Respect each subreddit’s self-promotion rules; automation doesn't exempt you from moderation. Need to reformat a video first? Use the FFmpeg API.

Reddit API Parameters

The most-used fields for the Reddit upload endpoint

Parameter Type Required Description
subreddit String Yes Target subreddit (without r/). The connected account must be allowed to post there.
reddit_title String No Reddit-specific post title (max 300 chars). Falls back to the global title.
reddit_flair_id String No Flair ID to attach, for subreddits that require flair.
nsfw Boolean No Mark the post as NSFW.
spoiler Boolean No Mark the post as a spoiler.
first_comment String No Automatically add a first comment under the post.

Full parameter reference in the API documentation.

Start posting to Reddit in minutes

Three steps to integrate the Reddit API

1

Create your account

Sign up for Upload-Post and grab your API key from the dashboard.

2

Connect Reddit

Link your Reddit destination once from the dashboard. We handle auth and delivery for you.

3

Upload programmatically

POST to the API with your content and you're live. Schedule or queue posts the same way.

Reddit API FAQ

Common questions about posting to Reddit programmatically

Is there an API to post to Reddit?

Yes. Reddit has an official API, but it requires registering an OAuth app and handling rate limits yourself. Upload-Post wraps it. Connect your Reddit account once, then POST /api/upload_photos or /api/upload_text with platform[]=reddit and a subreddit. One call, no PRAW or OAuth code.

Do I need my own Reddit OAuth app?

No. Upload-Post operates the Reddit integration. Authorize your Reddit account once from the dashboard, and every post after that is a simple authenticated REST call with your Upload-Post API key.

Can I post videos to Reddit via the API?

Currently the Reddit integration supports image posts, text posts (markdown) and link posts. For video content, a common pattern is posting the image/teaser to Reddit with a link to the video hosted on YouTube, while the same API call uploads the full video to YouTube, TikTok and Instagram.

How do I avoid getting banned for automation on Reddit?

Automation is allowed; spam is not. Post through your real account and respect each subreddit’s self-promotion rules and posting frequency norms. Use flairs where required (reddit_flair_id) and mark NSFW/spoiler content correctly. Scheduling posts to natural times helps too.

Can I schedule Reddit posts and fetch my post history?

Yes. Schedule with scheduled_date (ISO-8601), and retrieve your posts (including media URLs, dimensions and thumbnails, up to 2,000 posts) with GET /api/uploadposts/reddit/detailed-posts.

Prefer an AI agent? Use the Reddit MCP server. Plans and limits are in the pricing section.

Ready to automate your Reddit presence?

Start posting to subreddits programmatically today.

Create Free Account