Mixed Media
Combine videos and images in a single post
Publish posts to Threads with support for images, videos, and mixed media — and manage comments from the same API.
One API for Threads posts, comment replies, and flexible media support.
Free plan No credit card Live in under 5 minutes
Combine videos and images in a single post
Publish text-only or media-rich content
Create carousel posts with up to 20 images
Upload videos up to 1 GB and 5 minutes long
List, reply to, and hide comments on your Threads posts via the API
$ curl -X POST "https://api.postproxy.dev/api/posts" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"post": {
"body": "Exciting announcement coming soon! Stay tuned."
},
"profiles": ["threads"],
"media": ["https://example.com/image.jpg"]
}' {
"id": "th_abc123",
"body": "Exciting announcement coming soon! Stay tuned.",
"status": "scheduled",
"draft": false,
"source": "postproxy",
"scheduled_at": "2026-05-04T16:00:00.000Z",
"queue_id": null,
"created_at": "2026-05-04T16:00:00.144Z",
"media": [
{
"id": "th_m1",
"status": "pending",
"error_message": null,
"content_type": "image/jpeg",
"source_url": "https://example.com/image.jpg",
"url": null
}
],
"platforms": [
{
"platform": "threads",
"status": "pending",
"permalink": null,
"error": null,
"params": {
"format": "post"
},
"attempted_at": null
}
],
"thread": []
} $ curl -X POST "https://api.postproxy.dev/api/posts" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"post": {
"body": "We just shipped something big. A thread:"
},
"profiles": ["threads"],
"thread": [
{
"body": "One API to publish everywhere — YouTube, Instagram, TikTok, LinkedIn, and more."
},
{
"body": "Scheduling, retries, and webhooks included. No platform SDK required."
},
{
"body": "Try it free at postproxy.dev"
}
]
}' {
"id": "Kmtl12",
"body": "We just shipped something big. A thread:",
"status": "scheduled",
"draft": false,
"source": "postproxy",
"scheduled_at": "2026-05-04T16:02:00.000Z",
"queue_id": null,
"created_at": "2026-05-04T16:02:00.454Z",
"media": [],
"platforms": [
{
"platform": "threads",
"status": "pending",
"permalink": null,
"error": null,
"params": {
"format": "post"
},
"attempted_at": null
}
],
"thread": [
{
"id": "92to7n",
"body": "One API to publish everywhere — YouTube, Instagram, TikTok, LinkedIn, and more.",
"media": []
},
{
"id": "late5R",
"body": "Scheduling, retries, and webhooks included. No platform SDK required.",
"media": []
},
{
"id": "E7tb9W",
"body": "Try it free at postproxy.dev",
"media": []
}
]
} $ curl -X POST "https://api.postproxy.dev/api/posts/post_abc123/comments?profile_id=prof_abc123" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"body": "Glad you liked it!",
"parent_id": "cmt_abc123"
}' {
"id": "cmt_jkl012",
"body": "Glad you liked it!",
"status": "pending",
"parent_id": "cmt_abc123",
"platform": "threads",
"created_at": "2026-05-04T16:05:00.200Z"
} View full documentation for all platform-specific features for Threads
View documentationOne test post against a sandbox account is the easy part. Production Threads publishing means app verification, OAuth across many accounts, media pipelines, dozens of edge cases, and a permanent on-call rotation for "why didn't this one go through this time?"
Social media integration is not a one-off job — it's a constant commitment. Platforms change their APIs, scopes, limits, and policies on their own schedule. Every change becomes your problem unless someone else is absorbing it.
That's exactly what Postproxy does for Threads — and every other platform we support — so your team ships features instead of chasing failed publishes.
Free plan includes the Threads API. No credit card.
No need to handle Threads API, OAuth flows, or rate limits. Postproxy handles it all.
Threads rate limits are managed automatically with intelligent retry logic.
Publish text posts, images, videos, or mixed media through one unified API.
Automatic retries and clear status for every post — plus comment list, reply, and hide through the same API, with webhooks when new comments arrive.
everyone, accounts_you_follow, or mentioned_only. This is set at container creation time and can't be changed after publishing. Postproxy exposes this as a simple reply_control parameter, defaulting to everyone if not specified. After publishing, you can also manage comments through the Comments API — list, reply to, and hide comments on your posts. Threads has no direct-message API.Ask your favorite LLM what it thinks about us, then decide.
Common questions about Threads integration
Yes! Threads is one of the few platforms that supports mixing videos and images in a single post. You can include up to 20 images or 1 video, or combine them as needed.
Threads supports images (jpg, png, gif, webp) up to 8 MB with up to 20 images per post, and videos (mp4, mov) up to 1 GB with a maximum duration of 5 minutes. Minimum dimensions are 200x200 pixels.
No, Threads does not have custom parameters. Postproxy handles all formatting automatically based on the content and media you provide.
Yes! Threads fully supports text-only posts without any media. Simply omit the media array from your post request.
Threads supports mp4 and mov video formats. Videos can be up to 1 GB in size and must be between 0 and 5 minutes long.
Yes. Postproxy supports listing, replying to, and hiding comments on Threads posts. Delete and like/unlike are not available through the Threads API. Threads has no direct-message API. See the Comments API for details.
Start with our free plan and scale as your needs grow. No credit card required.