XreplyAIDevelopers
Guides

Platforms

Platform keys, character limits, and supported content types across all 15 platforms.

Every entry in a post's post_contents names its platform with one of these keys. Character limits and media capabilities differ per platform. The table below is the quick view; the machine-readable truth is GET /platforms, which returns capabilities (character limits, content types, image counts, media content-type and size limits) so clients don't hardcode them.

PlatformKeyChar limitTextImagesVideoNotes
X (Twitter)twitter280up to 4Threads, communities via community_id
LinkedInlinkedin3,000up to 20Polls, PDF document posts, org pages
Instagraminstagram2,2001–10 carouselReels, Stories, first comment; caption only
Threadsthreads500up to 10Reply chains, quote posts via quote_post_id
YouTubeyoutube5,000Video only
Pinterestpinterest8001Board via board_id; video pins need a cover image
TikToktiktok2,200up to 35
Blueskybluesky300up to 4Reply threads
Mastodonmastodon500up to 4
Facebookfacebook63,206multi-imagePages
Google Businessgoogle_business1,500Business profile updates
Discorddiscord2,000up to 10Posts via channel webhook
Telegramtelegram4,096up to 10
Tumblrtumblr4,096up to 10
Slackslack4,000up to 10

A content_type on each post_contents entry declares what the entry is: text, single_image, multi_image, video, or document. Platforms reject content types they don't support at validation time; a dry run surfaces this before anything goes live (see Scheduling).

One post, many platforms

A single post carries one post_contents entry per platform, each with its own body and metadata, plus social_account_ids for the accounts to publish through. That is how the same post fits X's 280 characters and LinkedIn's 3,000 in one API call.

Platform-specific options

Attachment references and per-platform options ride in each entry's metadata object: media_id (X), asset_urn / document_urn (LinkedIn), r2_key (storage uploads), board_id (Pinterest), community_id (X), quote_post_id (Threads). X additionally accepts reply_settings (following, mentionedUsers, subscribers, or verified; omit the field for everyone) and the boolean disclosure labels made_with_ai and paid_partnership, sent only when true. See Media for how uploads produce these references.

On this page