Package Information
Documentation
n8n-nodes-socialrails
n8n community node for SocialRails — schedule social media posts, view analytics, generate AI content, and manage connected accounts from your n8n workflows.
Features:
- Schedule and manage posts across 9 social platforms
- Generate AI-powered content (captions, tweets, articles)
- View posting analytics and performance metrics
- List and manage connected social accounts
- Full support for media attachments, platform settings, and batch posting
Installation
Method 1: Community Nodes UI (Recommended)
- Open your n8n instance
- Go to Settings > Community Nodes
- Enter
n8n-nodes-socialrails - Click Install
Method 2: npm CLI
cd ~/.n8n/nodes
npm install n8n-nodes-socialrails
Then restart n8n.
Method 3: Docker
Add to your Dockerfile:
RUN cd /home/node/.n8n/nodes && npm install n8n-nodes-socialrails
Or set the environment variable:
EXTRA_NODE_MODULES=n8n-nodes-socialrails
Authentication
- Log in to your SocialRails dashboard
- Navigate to Settings > API Keys
- Click Create API Key and select the scopes you need:
read— list posts, accounts, analytics, workspace infowrite— create, update, delete posts and upload mediaai— generate AI content (costs 2 credits per request)
- Copy the key (starts with
sr_live_) - In n8n, add a new SocialRails API credential and paste the key
API access is available on all paid plans (Creator, Business, Agency).
Operations Reference
Post > Create
Create a new social media post (draft or scheduled).
Inputs:
| Field | Type | Required | Description |
|---|---|---|---|
| Content | string | Yes | Post text (max 5,000 chars) |
| Platform | select | Yes | Target platform |
| Schedule For | dateTime | No | ISO 8601 date (omit for draft) |
| Media | string[] | No | R2 keys from media upload |
| Platform Settings | json | No | Platform-specific overrides |
Output example:
{
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"content": { "all": "Hello from n8n!" },
"platform": "twitter",
"status": "scheduled",
"scheduled_for": "2026-03-15T14:30:00.000Z",
"created_at": "2026-03-04T10:00:00.000Z"
}
}
Post > List
List posts with optional filters.
Inputs:
| Field | Type | Description |
|---|---|---|
| Status | select | Filter: scheduled, posted, draft, failed |
| Platform | select | Filter by platform |
| Limit | number | Results per page (1-100, default 50) |
| Sort | select | Sort by created_at or scheduled_for |
| From / To | dateTime | Date range filter |
Output example:
{
"data": [
{ "id": "...", "content": { "all": "..." }, "platform": "twitter", "status": "scheduled" }
],
"pagination": { "total": 42, "limit": 50, "offset": 0 }
}
Analytics > Get
Retrieve posting analytics for your workspace.
Inputs:
| Field | Type | Description |
|---|---|---|
| Period | select | 7d, 30d, 90d, or 365d |
| Platform | select | Filter by platform |
| Post ID | string | Analytics for a specific post |
Output example:
{
"data": {
"period": "30d",
"total_posts": 127,
"by_platform": [
{ "platform": "twitter", "posts_published": 45 },
{ "platform": "linkedin", "posts_published": 32 }
]
}
}
AI > Generate
Generate AI-powered social media content. Costs 2 AI credits per request.
Inputs:
| Field | Type | Required | Description |
|---|---|---|---|
| Prompt | string | Yes | What to generate (max 2,000 chars) |
| Platform | select | No | Optimize for a specific platform |
| Tone | string | No | professional, casual, excited, humorous |
Output example:
{
"data": {
"content": "Excited to share our latest feature! We've been working hard to make social media management effortless.",
"platform": "linkedin",
"tone": "excited"
}
}
Account > List
List all connected social media accounts.
Output example:
{
"data": [
{ "id": "...", "provider": "twitter", "name": "myhandle", "status": "connected" },
{ "id": "...", "provider": "linkedin", "name": "My Company", "status": "connected" }
]
}
Workflow Examples
Content Calendar Automation
Automatically schedule posts for the week:
- Schedule Trigger — fires every Monday at 9 AM
- SocialRails: AI Generate — create content for each weekday
- SocialRails: Post Create — schedule each post with a date
AI-Powered Social Scheduling
Generate and schedule an AI post when a new blog article is published:
- RSS Feed Trigger — watch your blog RSS
- SocialRails: AI Generate — prompt: "Summarize this blog post for Twitter: {{$json.title}} - {{$json.description}}"
- SocialRails: Post Create — schedule the generated content for Twitter
Cross-Platform Publishing
Post the same content across all connected platforms:
- Webhook Trigger — receive content from your CMS
- SocialRails: Account List — get all connected platforms
- Loop — for each account, create a post with platform-appropriate settings
Platform Notes
| Platform | Char Limit | Media | Key Setting |
|---|---|---|---|
| Twitter/X | 280 | 4 images or 1 video | selectedCommunities |
| 3,000 | 9 images or 1 video | selectedLocation (company) |
|
| 420 | 10 images or 1 video | selectedPage (required) |
|
| 2,200 | 10 images or 1 video | postType (reel/story) |
|
| TikTok | 2,200 | 35 images or 1 video | privacy_status, interactions |
| Bluesky | 300 | 4 images or 1 video | — |
| 500 | 1 image or 1 video | selectedBoard (required) |
|
| Threads | 500 | 10 images or 1 video | reply_control |
| YouTube | 5,000 | 1 video | — |
Troubleshooting
| Error | Cause | Fix |
|---|---|---|
UNAUTHORIZED |
Invalid or missing API key | Check your credential in n8n. Keys start with sr_live_. |
FORBIDDEN |
Missing scope | Your API key needs the right scope (read/write/ai). Create a new key with the needed scopes. |
LIMIT_EXCEEDED |
Monthly post limit reached | Upgrade your plan or wait for the next billing cycle. |
RATE_LIMITED (429) |
Too many requests | Wait and retry. Limits: Creator 60/hr, Business 300/hr, Agency 1000/hr. |
BAD_REQUEST |
Invalid input | Check the error message for details. Common: missing content, invalid platform, date in the past. |
Links
- SocialRails Dashboard
- Full API Documentation
- API Endpoints Reference
- Platform Settings Guide
- OpenAPI Spec
License
MIT