LateLate API
Platforms

Reddit API

Post to Reddit with Late API - Text posts, links, and image posts


Quick Start

Create a post on Reddit:

curl -X POST https://getlate.dev/api/v1/posts \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "What is your favorite programming language and why?\n\nI have been using Python for years but considering learning Rust.",
    "platforms": [
      {"platform": "reddit", "accountId": "YOUR_ACCOUNT_ID"}
    ],
    "publishNow": true
  }'
const response = await fetch('https://getlate.dev/api/v1/posts', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    content: "What is your favorite programming language and why?\n\nI have been using Python for years but considering learning Rust.",
    platforms: [
      { platform: 'reddit', accountId: 'YOUR_ACCOUNT_ID' }
    ],
    publishNow: true
  })
});

const { post } = await response.json();
console.log('Posted to Reddit!', post._id);
import requests

response = requests.post(
    'https://getlate.dev/api/v1/posts',
    headers={'Authorization': 'Bearer YOUR_API_KEY'},
    json={
        'content': "What is your favorite programming language and why?\n\nI have been using Python for years but considering learning Rust.",
        'platforms': [
            {'platform': 'reddit', 'accountId': 'YOUR_ACCOUNT_ID'}
        ],
        'publishNow': True
    }
)

post = response.json()
print(f"Posted to Reddit! {post['_id']}")

Overview

Reddit API posting supports:

  • ✅ Text posts
  • ✅ Link posts
  • ✅ Image posts (single image)
  • ❌ Video posts (not supported via API)

Image Requirements

PropertyRequirement
Max Images1 per post
FormatsJPEG, PNG, GIF
Max File Size20 MB
Recommended1200 × 628 px

Aspect Ratios

Reddit is flexible with aspect ratios:

RatioUse Case
16:9Standard landscape
4:3Classic format
1:1Square images
9:16Mobile screenshots

Image Post Example

curl -X POST https://getlate.dev/api/v1/posts \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "Check out this view from my hike!",
    "mediaItems": [
      {"url": "https://example.com/hiking-photo.jpg"}
    ],
    "platforms": [
      {"platform": "reddit", "accountId": "YOUR_ACCOUNT_ID"}
    ],
    "publishNow": true
  }'
const response = await fetch('https://getlate.dev/api/v1/posts', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    content: 'Check out this view from my hike!',
    mediaItems: [
      { url: 'https://example.com/hiking-photo.jpg' }
    ],
    platforms: [
      { platform: 'reddit', accountId: 'YOUR_ACCOUNT_ID' }
    ],
    publishNow: true
  })
});
response = requests.post(
    'https://getlate.dev/api/v1/posts',
    headers={'Authorization': 'Bearer YOUR_API_KEY'},
    json={
        'content': 'Check out this view from my hike!',
        'mediaItems': [
            {'url': 'https://example.com/hiking-photo.jpg'}
        ],
        'platforms': [
            {'platform': 'reddit', 'accountId': 'YOUR_ACCOUNT_ID'}
        ],
        'publishNow': True
    }
)

Share a URL:

{
  "content": "Interesting article about AI",
  "link": "https://example.com/article",
  "platforms": [
    { "platform": "reddit", "accountId": "acc_123" }
  ]
}

Note: When a link is provided, Reddit creates a link post. The content becomes the post title.

Subreddit Selection

Posts are submitted to the subreddit configured on the connected Reddit account. You cannot change subreddits per-post via API.

GIF Support

Reddit supports animated GIFs:

  • Static display until clicked
  • Max 20 MB
  • May convert to video format internally
  • Keep under 10 MB for better performance

Video Limitations

Important: Reddit's API does not support video uploads for third-party applications. This is a Reddit API limitation, not a Late limitation.

If you need to post videos to Reddit:

  1. Upload to a video hosting service (YouTube, Imgur, etc.)
  2. Create a link post with the video URL

Formatting Tips

Reddit supports Markdown in text posts:

# Heading
**Bold text**
*Italic text*
- Bullet points
1. Numbered lists
[Link text](https://example.com)
> Block quotes
`inline code`

Common Issues

"Post rejected by subreddit"

Each subreddit has rules:

  • Some require flair
  • Some don't allow images
  • Some have karma requirements
  • Check r/subreddit rules

"Rate limited"

Reddit has strict rate limits:

  • ~10 posts per day for new accounts
  • Higher limits for established accounts
  • Wait between posts

Image not displaying

  • Check file size (≤20 MB)
  • Ensure valid format (JPEG, PNG, GIF)
  • Verify URL is publicly accessible

"Video not supported"

Reddit API doesn't support video uploads. Use a link post with a video URL instead.

Post removed

Moderators may remove posts for:

  • Breaking subreddit rules
  • Spam detection
  • Missing required flair
  • Low karma accounts