Platforms Overview
The 12 platforms Bulkit supports, and what each one accepts.
Bulkit supports 12 platforms. You use the same request for all of them, but each platform has its own rules: how long the text can be, how many files it takes, and whether it allows threads.
The API always has the latest rules
These pages explain the rules in plain words. Your code should read them from
GET /platforms, because platforms change their limits. The API checks your
post against the same rules before it saves anything.
Quick comparison
| Platform | API id | Text limit | Files per post | Needs a file | Thread / extra blocks | Edit after publish | Delete after publish | Comments |
|---|---|---|---|---|---|---|---|---|
| X (Twitter) | x | 280 | 4 | No | Up to 25 posts | No | Yes | Last 7 days |
linkedin | 3,000 | 20 | No | Post + 2 comments | Text | Yes | No | |
| LinkedIn Page | linkedin_page | 3,000 | 20 | No | Post + 2 comments | Text | Yes | Yes |
instagram | 2,200 | 10 | Yes | Post + 2 comments | No | No | Yes | |
| Facebook Page | facebook | 63,206 | 10 | No | Post + 2 comments | Text | Yes | Yes |
| Threads | threads | 500 | 20 | No | Up to 25 posts | No | Yes | No |
| TikTok | tiktok | 2,200 | 1 video | Yes | No | No | No | No |
| YouTube | youtube | 5,000 | 1 video | Yes | No | Text, title, options | Yes | Yes |
| Vimeo | vimeo | 5,000 | 1 video | Yes | No | Text, title, options | Yes | No |
pinterest | 800 | 5 | Yes | No | Text, title, options | Yes | No | |
| Bluesky | bluesky | 300 | 4 | No | Up to 25 posts | No | Yes | Yes |
reddit | 10,000 | 20 | No | Post + 5 comments | Text | Yes | Yes |
"Edit after publish" is what POST /posts/{id}/revise
can change. "Delete after publish" is whether
POST /posts/{id}/retract can remove it.
"Comments" is whether you can read and reply to comments
on a published post. Each platform page lists its limits.
How to send platform options
Some platforms have extra fields, like a Pinterest link or TikTok privacy. You
send them in channels[].options, using the keys shown on each platform page.
{
"channelId": "CHANNEL_ID",
"options": {
"link": "https://example.com",
"allow_comment": "true",
"poll_options": ["Yes", "No"]
},
"blocks": [{ "content": "…" }]
}| Option type | How to send it |
|---|---|
| text, url, choice | A string. |
| true / false | The string "true" or "false". |
| list | An array of strings, like ["Yes", "No"]. |
| media | The id of a file you uploaded with POST /media. |
A key the platform does not have is refused with option_not_supported.
Platforms
X (Twitter)
Posts, threads and polls.
Personal profiles. Documents, polls and link cards.
LinkedIn Page
Company pages. Same posts as LinkedIn, plus analytics.
Posts, carousels, Reels and Stories.
Facebook Page
Page posts with photos, video or a link preview.
Threads
Text posts, threads and polls.
TikTok
One video per post. Privacy level is required.
YouTube
Video uploads with title, playlist and subtitles.
Vimeo
Video uploads with privacy, folder and license.
Image and video Pins on a board.
Bluesky
Posts, threads, link cards and quotes.
Text, link and image posts in a subreddit.