Create Post
Schedule or save Instagram and TikTok reels and slideshows.
Supported content
media.type | Use for | Response type |
|---|---|---|
video | Instagram Reel, TikTok Reel | video |
slideshow | Instagram carousel, TikTok photo post | slideshow |
Before you post
- Active paid plan + API key or Clerk JWT.
- Get accounts → copy each account
id. - Pick
videoorslideshow. For Instagram reels, optionalcover_url.
Request body
mainCaption.[{ "id": "<account-uuid>" }] — up to 10 accounts.instagram or tiktok at the top level of the body (same shape as below). Other keys under settings return 400.Idempotency-Key header.Instagram reel cover
Onlycover_url — a public image URL:
settings.tiktok.video_cover_timestamp_ms.
Platform settings (optional)
Supported providers: Instagram, TikTok — onlysettings.instagram and settings.tiktok (or top-level instagram / tiktok). Nothing is required; omit settings if you do not need them.
Response
Examples
Errors
| HTTP | When |
|---|---|
400 | Validation failed |
401 | Invalid auth |
403 | No paid plan or unknown account |
404 | User not found |
409 | Idempotency conflict |
500 | Server error |
Authorizations
Clerk session JWT or Unsora API key (uns_live_*)
Headers
Optional. Replays the original response for 24h when using an API key. Same as body external_id.
128Body
1 - 10 elementsPost caption shown on connected platforms
Legacy alias for caption
video, slideshow, or null for text-only drafts. Legacy: array of {type, url} items.
- Option 1
- Option 2
ISO 8601 with timezone. At least 2 minutes ahead. Omit for draft.
Legacy alias for scheduled_at
IANA timezone label stored with the post
Idempotency key (alias for Idempotency-Key header on API key requests)
128Optional Instagram and TikTok publish options only. Same fields may be sent at the top level as instagram or tiktok.
Optional alias for settings.instagram
Optional alias for settings.tiktok

