Choose an endpoint by media type
| Endpoint | Use for |
|---|---|
POST /v1/posts/text | Text-only updates |
POST /v1/posts/photos | One or more images (and photo carousels) |
POST /v1/posts/video | A single video |
multipart/form-data. Text uses JSON.
Fan out with platforms[]
List every target platform. The same content goes to each, unless you override per platform.
Per-platform overrides
caption is the shared default. Override it for a single platform with a <platform>_caption field — handy for hashtags, mentions, or length limits.
instagram_first_comment.
Platform requirements
Facebook publishes to a Page
Facebook publishes to a Page
Facebook posts go to a Page, not a personal profile. If the profile has exactly one Page it is used automatically; if it has several, pass
facebook_page_id to choose one.Photos are uploaded, video can be a URL
Photos are uploaded, video can be a URL
Send photos as binary file uploads (
photos[]=@file). For video you can upload a file or pass a public video_url.Reddit needs a title
Reddit needs a title
Reddit posts require a title in addition to the caption — pass
reddit_title.Read the response
A post returns anid and a results object keyed by platform:
published— live, with aurl.processing— still uploading (common for video). Check back or subscribe to webhooks.failed— includes anerrorexplaining why that platform rejected the post.

