Publish a post
creates Publication → Post[]WriteUnifiedSoonOne request for TikTok, Instagram, YouTube and six more platforms. Each one reports back on its own, and only posts that go live are billed. Posting to X works today through the AIsa X actions direct API.
One request, every platform
Write it once and each platform answers for itself
Text, media, target accounts and timing are shared. Anything only one platform has sits under its own prefix, like tiktok.privacy or instagram.format. Any account can get its own shorter caption.
- platforms
- 9
- failed or stopped in preflight
- $0
- per post that goes live
- [$Z]
Every target reports back on its own
Example · fictional brand Acme Home
pub_01JB8W3KPartly published| Account | Format | Status | Result | Billed |
|---|---|---|---|---|
TikToktiktok:acme.home | Video | Published | tiktok:[post id]Live 09:00 PT | Billed |
Instagraminstagram:acme.home | Reels | Published | instagram:[post id]Live 09:00 PT | Billed |
Xx:acme_home | Text + video | Published | x:[post id]Shorter caption used | Billed |
YouTubeyoutube:acmehome | Shorts | Publishing | —Upload processing | — |
LinkedInlinkedin:acme-home | Video | Scheduled | —Next free slot, 11:00 PT | — |
Pinterestpinterest:acmehome | Video Pin | Failed | connection_expiredYou can fix: reconnect, then retry this target | Not billed |
A publication is a draft, scheduled, publishing, published, partly published, failed or withdrawn. Retry just the failed targets with the same idempotency key; nothing posts twice.
From connect to posted
- 01 · Connection
Connect once
Account owners grant access to AIsa. Scopes, status and expiry are readable, with a warning before it lapses.
- 02 · Preflight
Check before posting
Length, media size, format and account type are checked against each platform. A miss costs nothing.
- 03 · Approval
Ask a person first
Publishing, deleting and DMs can wait for a human. On by default for AI employees.
- 04 · Publication
Post, or queue
Now, at a set time, into the next free slot, or kept as a draft. Time zones always explicit.
- 05 · Event
Get notified
Webhooks for each post going live or failing, new comments and DMs, and connections about to expire.
9 calls plannedSoon
Our own first draft of the paths, not reviewed yet. Each call acts on the platforms it lists through the Connection you grant, and none is deployed yet.
- POST
/Send one post to several accounts: now, at a set time or into the queueAll 9 social platformsDraftv1/ social/ publications - POST
/Precheck length, media and account type against each platform's rulesAll 9 social platformsDraftv1/ social/ publications/ precheck - GET
/One Publication with its status on each platformAll 9 social platformsDraftv1/ social/ publications/ {publicationId} - GET
/Draft, scheduled and sent PublicationsAll 9 social platformsDraftv1/ social/ publications - PUT
/Edit a draft or a scheduled PublicationAll 9 social platformsDraftv1/ social/ publications/ {publicationId} - POST
/Retry the platforms that failedAll 9 social platformsDraftv1/ social/ publications/ {publicationId}/ retry - DELETE
/Delete a draft or cancel a scheduled sendAll 9 social platformsDraftv1/ social/ publications/ {publicationId} - POST
/Create many Publications from a CSV fileAll 9 social platformsDraftv1/ social/ publications/ bulk-upload - GET
/The platforms you can publish to, with their limitsAll 9 social platformsDraftv1/ social/ platforms
What each platform allows
The same table is an endpoint, versioned as platforms change: GET /v1/social/platforms
| Platform | Publish | Comments and DMs | Your own stats | Status |
|---|---|---|---|---|
| X | Text, images, video, threads, polls | Comments, DMs soon | Yes | Live |
| TikTok | Video | Comments; DMs reply only | Yes | Soon |
| Posts, Reels, Stories, carousels | Comments, DMs | Yes | Soon | |
| Facebook Page | Text, images, video, Reels | Comments, DMs, page reviews | Yes | Soon |
| YouTube | Video, Shorts | Comments | Yes | Soon |
| Text, images, video, documents | Comments on company pages | Yes | Soon | |
| Image Pins, video Pins | Not offered by Pinterest | Yes | Soon | |
| Threads | Text, images, video | Comments | Yes | Soon |
| Text, images, video, links | Comments, DMs | Limited | Soon |
Errors name who can fix them
Codes are AIsa's own. Upstream codes and messages never reach you, so the channel behind a platform can change without touching your code.
- You can fixnot retried · not billed
- connection_expired
- content_spec_mismatch
- account_type_unsupported
- The platformretried for you
- platform_rate_limited
- platform_unavailable
- AIsaretried · on us
- aisa_internal
Guardrails that keep accounts safe
- Posting rate is held under each platform's limit, per account.
- The same post going to many accounts is reviewed first.
- A newly connected account starts slow and ramps up.
- Comments and DMs are handled as personal data and never pooled across customers.
What it costs
- Connected account, with its own stats
- [$] / month
- Each post that goes live
- [$Z]
- Each comment or DM reply
- [$]
- X
- Per X API call, listed separately
Agents can pay per post with x402, no account or plan needed.