Search loads only when you use it. Browse all categories below.

Capability matrix

What can SosoAPI publish to each platform?

Find your platform and post format in the table below, then check the connected account you intend to use. Account permissions and media requirements can differ. Reviewed 21 October 2026.

Read as Markdown

Reviewed by SosoAPI team ·

Publishing formats and destinations

The table lists supported post formats. SosoAPI checks the selected account, content and time when you schedule a post, and checks again when it runs.

SosoAPI publishing capability matrix
Platform and destinationFormat familiesAccount and permission boundary
Instagram professional accountImage, video, carousel, Reels; image/video Stories where eligible.Publishing permission and observed account capabilities are required. Stories require a Business account; optional features have their own checks.
Facebook PageText, link, image, multiple images, video, Reels and Stories where eligible.The connected Page needs pages_manage_posts and the CREATE_CONTENT Page task. Personal profiles are not the Page publishing workflow.
Threads accountText, image, video, carousel and supported reposts.Publishing requires threads_content_publish. Replies, location tagging and cross-sharing can require additional permissions.
YouTube channelVideo upload with title, description, category and explicit privacy.Upload permission is required. Native scheduling/management needs management permission. A video is not automatically a Short.
X accountOriginal text and links only. No media, replies, quotes, reposts or thread publishing.Connect through X OAuth and grant publishing access. Check the exact account’s eligibility and the Organization’s separate X credits before submitting.

Check one real destination before writing

Choose a workspace and read its connected accounts. Call /studio-api/scheduled-posts/eligibility with the selected account, provider_payload, ready media and complete draft. Add include_quota=true if you also want a current quota estimate.

Each destination returns eligible, ineligible or unknown, with a reason_code and message. Treat unknown as not yet verified. This check creates no post and reserves no capacity, so the later create request can still fail if conditions change.

  • Use the exact social_account_id returned for your authorized Workspace.
  • Check copy, media, future time and timezone together; a media-only check does not validate the whole draft.
  • A valid SosoAPI key does not replace provider consent or the Workspace role.

Media and optional fields are platform-specific

Upload or import media into the workspace and wait until it is ready. For a normal Scheduled Post create request, use the registered asset_id and canonical asset URL. A preview URL, an arbitrary remote URL or a video MIME type supplied by the caller cannot replace those checks.

X uses platform: x with publish_options.post_type: TEXT and an empty media array. A URL can be included in the text or link_url; X media and thread publishing are not supported.

Features such as Instagram first comments, Threads polls or reply controls, and YouTube thumbnails have their own availability checks. Check the selected account before using an optional field, even if it appears in the schema.

  • Video eligibility can depend on server-observed duration, dimensions, container and codecs.
  • Carousel item types and counts are checked against the destination.
  • Use the provider_payload for the selected account’s platform; do not reuse one platform’s options on another.

What this matrix does not promise

For publishing, use one of the platforms and formats listed here; direct messages and unlisted platforms are outside the current scope. To work through an assistant, follow the setup guide for local MCP or hosted OAuth in a compatible client.

An accepted schedule or upload is still in progress. Check the Scheduled Post for a platform-confirmed publishing result. Provider processing, permissions and quota can affect when or whether the post appears.