Getting Started with a Unified Social Media API
Managing multiple social platforms shouldn't mean juggling half a dozen SDKs. A unified social media API lets you publish to Instagram, Facebook, Threads, LinkedIn, and TikTok from one integration — saving weeks of engineering time and endless maintenance headaches.
In this guide, you'll learn how to post to Instagram, Facebook, and Threads with a single API call using Ampost.
Why use a unified API?
Every major platform has its own auth flow, media requirements, rate limits, and error formats. A unified social media API normalizes all of that into a single, predictable interface:
- One auth flow for every platform
- One payload shape regardless of destination
- One status model for publish results on every platform
- One dashboard to manage connections and scheduling
If you've ever had to update your integration because Instagram bumped their API version or Facebook changed their media specs, you already know why this matters.
Quick start: post to Instagram, Facebook, and Threads
Connect your accounts through the Ampost dashboard, grab an API key, and publish to supported platforms with a single POST request.
curl -X POST https://api.ampost.io/api/posts \
-H "Authorization: Bearer amp_live_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"targets": [{ "platforms": ["instagram", "facebook", "threads"] }],
"text": "Ship once. Publish to supported platforms.",
"media": [
{ "url": "https://cdn.example.com/hero.jpg", "type": "image" }
],
"publishNow": true
}'
The response is the post, with one result per account in platformPosts:
{
"id": "7f1c2a9e-4b1d-4c55-9a0e-2f6d8b3c1a10",
"status": "published",
"platforms": ["instagram", "facebook", "threads"],
"platformPosts": [
{ "platform": "instagram", "status": "published", "publishedUrl": "https://www.instagram.com/p/C9xYz12AbCd/", "error": null },
{ "platform": "facebook", "status": "published", "publishedUrl": "https://www.facebook.com/123/posts/456", "error": null },
{ "platform": "threads", "status": "published", "publishedUrl": "https://www.threads.net/@ampost/post/C9x", "error": null }
]
}
(Trimmed: the full Post also has text, media, options, account ids and timestamps.)
Platform-specific options
A unified API doesn't mean losing control. options.<platform> changes the text or settings for one platform:
{
"targets": [{ "platforms": ["instagram", "facebook", "threads"] }],
"text": "Big announcement today!",
"media": [
{ "url": "https://cdn.example.com/video.mp4", "type": "video" }
],
"options": {
"instagram": { "placement": "reel" },
"facebook": { "placement": "feed" },
"threads": { "text": "Big announcement today! Details below 🧵" }
}
}
Placements exist on Instagram (feed, story, reel, carousel) and Facebook (feed, story, reel), and which ones fit depends on the media. You do not have to memorize that: GET /api/platforms returns every platform's limits, media rules, placements and option schema.
Scheduling posts
Set a future scheduledFor time and Ampost handles the rest:
curl -X POST https://api.ampost.io/api/posts \
-H "Authorization: Bearer amp_live_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"targets": [{ "platforms": ["facebook", "linkedin", "threads"] }],
"text": "Monday morning motivation.",
"scheduledFor": "2026-11-02T09:00:00Z"
}'
Scheduling is on the paid plans; on Free, a scheduled request returns 403 UPGRADE_REQUIRED. Scheduled posts are processed at their scheduled time. Until then you can change them with PATCH /api/posts/{postId} or discard them with DELETE /api/posts/{postId}.
Status tracking
Read a post with GET /api/posts/{postId} to see each account's status. Videos can stay processing for a short while after publishing; failed accounts carry an error with a stable code. Ampost retries temporary failures (rate limits, timeouts, platform errors) by itself: the account stays pending with its attempts and nextAttemptAt. An account that ends up failed can be retried with POST /api/posts/{postId}/retry.
Next steps
- Use
https://api.ampost.ioas the canonical public API host. The dashboard, OAuth callbacks, and billing/session flows remain onhttps://ampost.io. - Explore the full API documentation for endpoints, authentication, and error handling
- See how multi-platform publishing works under the hood
- Connect your first account and make a test post from the dashboard
Start building with Ampost today — the free tier includes 3 social accounts and 50 posts per month with no credit card required.
