Mutation
Use the scheduleRedditPost
mutation to schedule posts to Reddit:
mutation ScheduleRedditPost($input: ScheduleRedditPostInput!) {
scheduleRedditPost(input: $input) {
success
errors {
field
message
}
post {
id
socialAccount {
id
username
}
publishingStatus
title
content
link
nsfw
spoiler
submissions {
id
subreddit
postAt
title
comment
flairId
profileCrosspost
removeAtAmount
removeAtUnit
removeMinLikes
publishingMethod
}
}
}
}
Input Parameters
ScheduleRedditPostInput
READY_TO_PUBLISH
, DRAFT
(default: READY_TO_PUBLISH
)RedditPostSubmissionInput
Each submission to a subreddit supports these parameters:
hour
, day
AUTOMATIC
, MANUAL
(default: AUTOMATIC
)Examples
Simple Text Post
Schedule a basic text post to a single subreddit.
{
"input": {
"username": "myreddituser",
"title": "Just discovered this amazing productivity hack!",
"content": "I've been using the Pomodoro Technique for a week now and my productivity has increased by 40%. Here's how it works...",
"submissions": [
{
"validationId": "sub1",
"subreddit": "productivity",
"postAt": "2025-12-01T15:30:00Z"
}
]
}
}
Link Post with Multiple Subreddits
Schedule a link post to multiple subreddits with different timing.
{
"input": {
"username": "myreddituser",
"title": "New open-source project for developers",
"link": "https://github.com/username/awesome-project",
"submissions": [
{
"validationId": "sub1",
"subreddit": "programming",
"postAt": "2025-12-01T09:00:00Z"
},
{
"validationId": "sub2",
"subreddit": "opensource",
"postAt": "2025-12-01T14:00:00Z"
},
{
"validationId": "sub3",
"subreddit": "webdev",
"postAt": "2025-12-02T10:00:00Z"
}
]
}
}
Image Post with Content Library Media
Schedule an image post using media from your Content Library.
{
"input": {
"username": "myreddituser",
"title": "My latest photography work",
"mediaName": "sunset-landscape.jpg",
"nsfw": false,
"submissions": [
{
"validationId": "sub1",
"subreddit": "photography",
"postAt": "2025-12-01T18:00:00Z",
"flairId": "original_content"
}
]
}
}
Post with External Media URL
Schedule a post by uploading media from an external URL.
{
"input": {
"username": "myreddituser",
"title": "Check out this incredible time-lapse!",
"mediaUrl": "https://example.com/timelapse-video.mp4",
"submissions": [
{
"validationId": "sub1",
"subreddit": "timelapse",
"postAt": "2025-12-01T20:00:00Z"
}
]
}
}
Poll Post
Schedule a post with a poll for community engagement.
{
"input": {
"username": "myreddituser",
"title": "What's your favorite programming language in 2024?",
"pollChoices": ["JavaScript", "Python", "Rust", "Go", "TypeScript", "Other"],
"pollDuration": 168,
"submissions": [
{
"validationId": "sub1",
"subreddit": "programming",
"postAt": "2025-12-01T12:00:00Z"
}
]
}
}
Post with Auto-Deletion
Schedule a post that automatically deletes after a certain time or if it doesn't reach minimum upvotes.
{
"input": {
"username": "myreddituser",
"title": "Daily discussion thread",
"content": "What are you working on today? Share your progress!",
"submissions": [
{
"validationId": "sub1",
"subreddit": "dailyprogrammer",
"postAt": "2025-12-01T08:00:00Z",
"removeAtAmount": 24,
"removeAtUnit": "hour",
"removeMinLikes": 10
}
]
}
}
Cross-posting with Profile
Schedule a post that automatically crossposts to your profile.
{
"input": {
"username": "myreddituser",
"title": "My journey learning machine learning",
"content": "After 6 months of studying ML, here are the key insights I've gained...",
"submissions": [
{
"validationId": "sub1",
"subreddit": "MachineLearning",
"postAt": "2025-12-01T16:00:00Z",
"profileCrosspost": true
}
]
}
}
Post with Link Flair
Schedule a post with subreddit-specific link flair. Use the linkFlair
query to get available flair options for each subreddit.
{
"input": {
"username": "myreddituser",
"title": "Tutorial: Building REST APIs with Node.js",
"link": "https://myblog.com/nodejs-rest-api-tutorial",
"submissions": [
{
"validationId": "sub1",
"subreddit": "node",
"postAt": "2025-12-01T14:00:00Z",
"flairId": "tutorial-flair-id"
}
]
}
}
First, query available link flair for the subreddit:
query linkFlair($subreddit: String!) {
linkFlair(subreddit: $subreddit) {
id
text
}
}
Post with Custom Comments per Subreddit
Schedule a post with different comments for different subreddits.
{
"input": {
"username": "myreddituser",
"title": "New web framework comparison",
"link": "https://myblog.com/framework-comparison-2024",
"comment": "I spent 3 months comparing these frameworks. AMA!",
"submissions": [
{
"validationId": "sub1",
"subreddit": "webdev",
"postAt": "2025-12-01T10:00:00Z"
},
{
"validationId": "sub2",
"subreddit": "javascript",
"postAt": "2025-12-01T15:00:00Z",
"comment": "Focused on JavaScript frameworks in this comparison. Thoughts?",
"overrideComment": true
}
]
}
}
Response Types
Success Response
{
"data": {
"scheduleRedditPost": {
"success": true,
"errors": [],
"post": {
"id": "123",
"socialAccount": {
"id": "456",
"username": "myreddituser"
},
"publishingStatus": "READY_TO_PUBLISH",
"title": "Just discovered this amazing productivity hack!",
"content": "I've been using the Pomodoro Technique...",
"link": "",
"nsfw": false,
"spoiler": false,
"submissions": [
{
"id": "789",
"subreddit": "productivity",
"postAt": "2025-12-01T15:30:00Z",
"title": "",
"comment": "",
"flairId": "",
"profileCrosspost": false,
"removeAtAmount": null,
"removeAtUnit": "",
"removeMinLikes": null,
"publishingMethod": "AUTOMATIC"
}
]
}
}
}
}
Error Response
{
"data": {
"scheduleRedditPost": {
"success": false,
"errors": [
{
"field": "title",
"message": "Post titles can't be longer than 300 characters."
},
{
"field": "submissions",
"message": "You must submit to at least one subreddit"
}
],
"post": null
}
}
}
Validation Rules
- Title Length: Maximum 300 characters (1,000 with spintax)
- Content: No length limit for text posts
- Comments: Maximum 10,000 characters per comment
- Media: Images up to 20MB, videos up to 1GB
- Galleries: Maximum 20 media items per gallery
- Polls: 2-6 options, each max 180 characters, duration specified in hours
- Submissions: Maximum 100 subreddit submissions per post
- Scheduling: Posts must be scheduled for future dates only
- Account Limits: Respects your plan's monthly submission limits
Common Errors
The specified username is not connected to your Postpone account. Connect the account in your settings first.
Reddit post titles have a strict 300 character limit. Shorten your title to fit within this limit.
The postAt
timestamp must be in the future. Check your timezone settings and ensure the date is correct.
Every Reddit post must be submitted to at least one subreddit. Add a submission to the submissions
array.
Reddit posts can be either text posts (with content) or link posts, but not both. Choose one type per post.
Text posts with content cannot include media attachments. Use either text content or media, not both.
You've reached your plan's Reddit submission limit for the scheduled month. Upgrade your plan or schedule for a different month.
The specified subreddit doesn't exist, is private, or you don't have permission to post there. Verify the subreddit name and your access.
Your post doesn't meet the specific subreddit's posting requirements (karma, account age, flair, etc.). Check the subreddit rules or set skipPostRequirementsValidation
to true.