14 supported social channels
OmniSocials supports 14 channels across 13 platforms, with two more in development. Every channel has a stable string identifier that you pass in the accounts array (via account IDs) and use as a key on platform-specific options.
LinkedIn appears as two independent channels: linkedin for a personal profile and linkedin_page for a company page. A workspace can have both connected simultaneously.
Channel matrix
| Channel ID | Platform | Feed Post | Story | Reel/Short |
|---|---|---|---|---|
facebook | ✅ | ✅ | ✅ | |
instagram | ✅ | ✅ | ✅ | |
threads | Threads | ✅ | - | - |
linkedin | LinkedIn Profile | ✅ | - | - |
linkedin_page | LinkedIn Page | ✅ | - | - |
youtube | YouTube | - | - | ✅ |
tiktok | TikTok | ✅ | - | ✅ |
pinterest | ✅ | - | - | |
bluesky | Bluesky | ✅ | - | - |
mastodon | Mastodon | ✅ | - | - |
x | X (Twitter) | ✅ | - | - |
google_business | Google Business | ✅ | - | - |
telegram | Telegram (channel or group) | ✅ | - | - (a reel's video goes as a post) |
discord | Discord (one channel) | ✅ | - | - (a reel's video goes as a post) |
reddit | coming soon | - | - | |
snapchat | Snapchat | - | coming soon | - |
Capability matrix
What each channel supports through the API: post types, analytics, the Social inbox, and the limits you run into most. The platform pages have the full specs, and Known issues lists the quirks per channel.
| Channel | Post types | Analytics | Inbox | Main limits |
|---|---|---|---|---|
instagram | Feed, carousel (2 to 10 items, images and videos mixed), story, reel | Yes: views, reach, likes, comments, saves, shares; watch time on reels, replies and link clicks on stories | DMs, comments, mentions and story mentions | Caption 2,200 characters, 5 hashtags; media always required |
facebook | Feed (text, photos, one video or a link preview), multi-photo, story, reel | Yes: views, reactions, comments, shares, clicks, video views; no reach | DMs (Messenger), comments, mentions | 63,206 characters; photos or one video, not mixed |
threads | Feed, carousel (up to 20 items, mixed), thread, poll | Yes: views, likes, replies, reposts, quotes, shares | Replies on your posts, mentions | 500 characters per post, 5 links; up to 20 media items |
linkedin | Feed, document carousel or image gallery, poll | Yes: impressions, reach, reactions, comments, shares, saves, clicks | Not supported | 3,000 characters; images or one video, not mixed |
linkedin_page | Feed, document carousel or image gallery, poll | Yes: impressions, unique impressions, reactions, comments, shares, clicks, engagement rate | Comments, mentions | 3,000 characters; images or one video, not mixed |
youtube | Short (type: "reel") only | Yes: views, likes, comments | Video comments | One vertical video up to 3 minutes; title 100, description 5,000 characters |
tiktok | Video, photo post (1 to 35 images), reel | Yes: views, likes, comments, shares; watch depth and reach once comments are enabled | Video comments, once comments are enabled | Caption 2,200 characters on videos, 4,000 on photo posts; one video or 1 to 35 images |
pinterest | Pin (image or video), carousel pin (2 to 5 images) | Yes: impressions, saves, pin clicks, outbound clicks | Not supported | Description 800, title 100 characters; board_id required |
bluesky | Feed (up to 10 images, or one video), thread | Yes: likes, comments, reposts, quotes, bookmarks; no views | Not supported | 300 graphemes; images up to 2 MB after compression |
mastodon | Feed, thread, poll | Yes: likes, comments, reposts, quotes, poll votes; no views | Not supported | The server's own limit (500 on mastodon.social); up to 4 images or one video |
x | Feed, thread, poll | Yes: views, likes, comments, reposts, quotes, bookmarks | DMs, opt-in, uses credits | 280 characters, 25,000 on Basic, Premium and Premium+; up to 4 images or one video |
google_business | Local post: standard, event or offer, with an optional button | Location level only: views, calls, direction requests, website clicks; no per-post metrics | Not supported | 1,500 characters, no phone numbers or links in the caption; one image, no video |
telegram | Text, photo, video or file, album (2 to 10), poll; no reels (a reel's video goes as a normal post) | Yes: reactions, poll votes; no views | Not supported | 4,096 characters, 1,024 under media; files up to 50 MB |
discord | Text, up to 10 images, GIFs and videos (mixed), poll, forum post; no reels (a reel's video goes as a normal post) | Yes: reactions, poll votes; no views | Not supported | 2,000 characters; files over 20 MB go as a link |
How channel IDs are used
Channel IDs show up in four places:
- As keys in per-platform content on the post body:
{ "content": { "default": "...", "linkedin": "..." } } - As keys in per-platform media:
{ "media_urls": { "default": [...], "instagram": [...] } } - As top-level keys for platform options on the post body:
{ "pinterest": { "board_id": "..." } } - In webhook payloads, as
data.targets[].platform(one entry per selected platform)
The accounts array on a post takes the account id you get from GET /accounts (for example 368204_instagram), or the bare channel ID (instagram). A workspace has one account per channel, so both point to the same connected account.
Connecting accounts
All account connections happen in the OmniSocials dashboard (Settings → Organisation → Workspaces, then the workspace), not through the API: OAuth for most platforms, for Telegram a pick of the channel or group in the OmniSocials bot, and for Discord Continue with Discord or a pasted webhook URL. Once connected, accounts are available to every API key in the workspace. The dashboard handles token refresh, re-authorization prompts, and revocation.
Per-platform reference
Each platform has its own page with the channel ID, supported content types, platform-specific options, media requirements, and limitations:
- Threads
- LinkedIn (Profile and Page)
- YouTube
- TikTok
- Bluesky
- Mastodon
- X (Twitter)
- Google Business
- Telegram
- Discord