Limits & Errors
What Reddit's API does not expose and the common errors when publishing.
What you cannot do
Reddit's API does not expose:
- Polls
- Crossposts to other subreddits
- Editing a post title after creation
- Collections
- Live chat threads
- Awards
- Separate upvote and downvote counts (score only)
Common errors
| Error | Cause | Fix |
|---|---|---|
| "SUBREDDIT_NOTALLOWED: only trusted members" | The subreddit restricts who can post | Join the community, build karma, or choose another subreddit. |
| "NO_SELFS: doesn't allow text posts" | The subreddit accepts link or image posts only | Set url or attach an image. |
| "SUBMIT_VALIDATION_FLAIR_REQUIRED" | The subreddit requires a flair on every post | Fetch the flairs with List subreddit flairs and pass the right flairId. |
| "SUBREDDIT_NOEXIST" | A typo in the subreddit name, or the subreddit is private | Check the spelling and drop the r/ prefix. |
| "AI-generated content not allowed" | The subreddit bans AI-generated content | Write original content or choose another subreddit. |
| "Reddit removed the post" | Moderators or AutoMod removed the post after submission | Read the subreddit rules and make the content comply. |
| "Reddit requires a subreddit" | No subreddit in the request and no default on the account | Set platformSpecificData.subreddit. |
"Reddit rate limit reached... Retry in Ns." or "Quota resets in Ns" (429) | Reddit rate-limits per OAuth application, and the budget is shared across every Zernio customer, so a 429 can arrive at low request volume on your side | Wait the number of seconds in the message, then retry. New accounts are limited to around 10 posts per day. See Reddit rate limits. |
A publishNow: true post that Reddit rejects returns 207 with post.status: "failed" and the message in platforms[].errorMessage:
{
"message": "Post created but publishing failed",
"error": "All platforms failed",
"post": {
"_id": "65f1c0a9e2b5af0012ab34cd",
"status": "failed",
"platforms": [
{
"platform": "reddit",
"status": "failed",
"errorMessage": "SUBMIT_VALIDATION_FLAIR_REQUIRED"
}
]
}
}Fetch the subreddit's flairs, add flairId to platformSpecificData and create the post again. 207 is a 2xx status, so fetch(...).ok is true; branch on the status code and on post.status. Error handling covers the envelope.
Was this page helpful?