Platform Settings Reference
Per-platform settings, character limits, media specs, and threading support for the SocialRails API.
When creating posts via the API, each platform has specific capabilities, character limits, and settings fields. Use the platform_settings object on POST /posts to customize behavior per platform.
You can also discover these dynamically via GET /accounts/{id}/settings.
Platform Overview
Character limit: 280 per post (4,000 per thread item)
Threading: Supported. Use the thread array field on POST /posts.
Settings:
Example:
{
"content": "Check out our new feature!",
"platform": "twitter",
"scheduled_for": "2026-03-15T14:30:00Z",
"platform_settings": {
"twitter": {
"selectedCommunities": ["1234567890"]
}
}
}Thread example:
{
"content": "Thread incoming...",
"platform": "twitter",
"scheduled_for": "2026-03-15T14:30:00Z",
"thread": [
"1/ Here's an important thread about our product launch",
"2/ We've been working on this for months",
"3/ And here's what we learned along the way"
]
}Character limit: 3,000
Threading: Not supported.
Settings:
Example:
{
"content": "Excited to announce our Series A!",
"platform": "linkedin",
"platform_settings": {
"linkedin": {
"selectedLocation": "urn:li:organization:12345"
}
}
}Character limit: 420
Threading: Not supported.
Settings:
Facebook requires at least a selectedPage when posting to a Page. Discover available pages via POST /accounts/{id}/tools with {"tool": "pages"}.
Example:
{
"content": "New blog post is live!",
"platform": "facebook",
"platform_settings": {
"facebook": {
"selectedPage": "123456789",
"videoType": "reel"
}
}
}Character limit: 2,200
Threading: Not supported.
Settings:
Instagram requires media for all posts. Include at least one image or video via the media field.
Example:
{
"content": "Behind the scenes look",
"platform": "instagram",
"media": ["workspace-id/api-uploads/images/photo.jpg"],
"platform_settings": {
"instagram": {
"postType": "reel"
}
}
}TikTok
Character limit: 2,200
Threading: Not supported.
Settings:
Example:
{
"content": "Check out this tutorial!",
"platform": "tiktok",
"media": ["workspace-id/api-uploads/videos/tutorial.mp4"],
"platform_settings": {
"tiktok": {
"privacy_status": "PUBLIC_TO_EVERYONE",
"interactions": { "allow_comment": true, "allow_duet": false, "allow_stitch": false },
"title": "Quick tutorial",
"post_mode": "DIRECT_POST"
}
}
}Bluesky
Character limit: 300
Threading: Not supported.
Settings: No platform-specific settings.
Example:
{
"content": "Hello Bluesky!",
"platform": "bluesky",
"scheduled_for": "2026-03-15T14:30:00Z"
}Character limit: 500
Threading: Not supported.
Settings:
Example:
{
"content": "10 tips for better productivity",
"platform": "pinterest",
"media": ["workspace-id/api-uploads/images/pin-graphic.jpg"],
"platform_settings": {
"pinterest": {
"selectedBoard": "board-id-123",
"destinationLink": "https://example.com/blog/productivity-tips"
}
}
}Threads
Character limit: 500 per post
Threading: Supported. Use the thread array field on POST /posts.
Settings:
Example:
{
"content": "New thread on Threads!",
"platform": "threads",
"platform_settings": {
"threads": {
"reply_control": "everyone"
}
}
}YouTube
Character limit: 5,000
Threading: Not supported.
Settings: No platform-specific settings. YouTube posts require a video in the media field.
Example:
{
"content": "New video: How to automate your social media workflow",
"platform": "youtube",
"media": ["workspace-id/api-uploads/videos/tutorial.mp4"],
"scheduled_for": "2026-03-15T14:30:00Z"
}Threading API
Threading is supported on Twitter and Threads. When using threads, the content field is still required but the thread array takes precedence.
Fields
Character limits per thread item
- Twitter: 4,000 characters
- Threads: 500 characters
Example: Twitter thread with media
{
"content": "Thread start",
"platform": "twitter",
"scheduled_for": "2026-03-15T14:30:00Z",
"thread": [
"1/ Here's why we built SocialRails",
"2/ The problem: managing 9 platforms is chaos",
"3/ Our solution: one API to schedule everywhere",
"4/ Try it free at socialrails.com"
],
"thread_media": {
"0": ["workspace-id/api-uploads/images/hero.jpg"],
"2": ["workspace-id/api-uploads/images/diagram.png"]
},
"thread_delay": 0
}Discovery Endpoints
Use these endpoints to programmatically discover platform capabilities and available tools for each connected account.
GET /accounts/{id}/settings
Returns character limits, media specs, threading support, available settings, workspace defaults, and available tools.
POST /accounts/{id}/tools
Trigger a discovery tool. Available tools per platform:
Example:
curl -X POST https://socialrails.com/api/v1/accounts/{id}/tools \
-H "Authorization: Bearer sr_live_..." \
-H "Content-Type: application/json" \
-d '{"tool": "pages"}'