n8n
Verified n8n node for social media automation. Post to Twitter, Instagram, LinkedIn, TikTok & more with scheduling, media uploads, webhooks, and cross-posting.
Automate social media posting across 14+ platforms using the official Late node for n8n. No HTTP configuration needed — the node handles authentication, request formatting, and response parsing.
Quick Reference
| Detail | Value |
|---|---|
| Node Package | n8n-nodes-late |
| Version | 0.0.12+ |
| Source | github.com/getlate-dev/n8n-nodes-late |
| npm | npmjs.com/package/n8n-nodes-late |
| License | MIT |
| Works On | n8n Cloud and self-hosted |
Available Operations
| Resource | Operations |
|---|---|
| Posts | Create and schedule posts to Twitter/X, Instagram, Facebook, LinkedIn, TikTok, YouTube, Threads, Bluesky |
| Profiles | Create profiles, connect social media platforms |
| Media | Upload files, presign large files (>4MB) |
| Webhooks | Receive post.published and post.failed events |
| Usage | Monitor usage statistics |
You need a Late API key and at least one connected social media account before setting up this integration. Get your key at getlate.dev/dashboard/api-keys.
Setup
Install the Late Node
The Late node is a verified n8n node — search for "Late" in the n8n node palette and it will appear directly. No community node installation required.
On self-hosted instances, install via npm:
npm install n8n-nodes-lateRestart n8n after installation. The Late node will appear in the node palette.
Add Your API Key
When you first add a Late node to a workflow, n8n will prompt you to create a Late API credential.
- Click Create New Credential
- Paste your API key from getlate.dev/dashboard/api-keys
- Click Save
The credential is reusable across all Late nodes in your workflows.
Test the Connection
Add a Late node, select Profiles → List Profiles, and click Execute Node. You should see your Late profiles in the output.
Create a Post
- Add a Late node to your workflow
- Set Resource to Posts
- Set Operation to the target platform (e.g., Add Post to Twitter/X)
- Select your Profile and Social Account from the dropdowns
- Enter your post Content
- Optionally set a Scheduled Date for future publishing
The node handles all the API formatting — just fill in the fields.
Platform-Specific Operations
Each platform has its own operation with relevant fields:
| Operation | Platform-Specific Fields |
|---|---|
| Add Post to Twitter/X | Content, Media URLs |
| Add Post to Instagram | Content, Media URLs |
| Add Instagram Stories | Content, Image URL |
| Add Instagram Reels | Content, Video URL, Thumbnail |
| Add Post to LinkedIn | Content, Media URLs |
| Add Post to Facebook | Content, Media URLs |
| Add Post to TikTok | Content, Video URL |
| Upload YouTube Video | Content, Video URL, Thumbnail |
| Add Post to Threads | Content, Media URLs |
| Add Post to Bluesky | Content, Media URLs |
| Upload Pinterest Image Pin | Content, Image URL, Board, Link |
| Upload Pinterest Video Pin | Content, Video URL, Board, Cover Image, Link |
Using Dynamic Data
Map fields from previous nodes directly into the Late node fields using n8n expressions:
- Content:
{{ $json.postText }}— from a Google Sheets, RSS, or Code node - Scheduled Date:
{{ $json.publishDate }}— ISO 8601 timestamp - Media URLs:
{{ $json.imageUrl }}— from a media source
Schedule a Post
Set the Scheduled Date field to a future timestamp. The post will be queued and published at that time.
To compute the date dynamically, use a Code node before the Late node:
const tomorrow = new Date();
tomorrow.setDate(tomorrow.getDate() + 1);
tomorrow.setHours(9, 0, 0, 0);
return [{ json: { scheduledFor: tomorrow.toISOString() } }];Then map {{ $json.scheduledFor }} into the Late node's Scheduled Date field.
Upload Media
For files under 4MB:
- Set Resource to Media
- Set Operation to Upload
- Provide the file from a previous node (e.g., HTTP Request, Google Drive, or Read Binary File)
For files over 4MB, use the Presign operation first to get a pre-signed upload URL, upload the file, then reference the media URL when creating a post.
Webhooks
Set up real-time notifications for post and account events:
- Add a Late node with Resource → Webhooks
- Configure the webhook URL (your n8n webhook endpoint)
- Select the events you want to receive
Available events:
| Event | Description |
|---|---|
post.scheduled | Post scheduled for future publishing |
post.published | Post successfully published |
post.failed | Post failed on all platforms |
post.partial | Post published to some platforms, failed on others |
account.connected | Social account connected |
account.disconnected | Social account disconnected |
Use a Webhook trigger node to receive these events and trigger follow-up actions (e.g., send a Slack notification on failure).
Workflow Examples
Scheduled Daily Posting from Google Sheets
- Schedule Trigger → Run every day at 9:00 AM
- Google Sheets → Read the next row from your content calendar
- Late → Create post with the row's content, platform, and optional media
RSS Feed to Social Media
- Schedule Trigger → Check every hour
- RSS Feed Read → Read your blog RSS feed
- IF → Check if there are new items
- Late → Post new articles to Twitter/X and LinkedIn
AI Content Generation Pipeline
- Schedule Trigger → Run daily
- HTTP Request → Fetch trending topics or RSS items
- OpenAI → Generate platform-optimized post content
- Late → Post to multiple platforms with tailored content
Pre-built workflow templates are available at getlate.dev/n8n-templates, including RSS-to-social pipelines with AI content generation and Google Sheets auto-posting.
Error Handling
Retry on Failure
On the Late node, go to Settings → Retry on Fail:
| Setting | Recommended Value |
|---|---|
| Max Tries | 3 |
| Wait Between Tries (ms) | 2000 |
Webhook Monitoring
Set up a webhook for post.failed events to get notified instantly when a post fails to publish. Combine with a Slack or email node for alerts.
Error Workflow
Set up an Error Workflow in your workflow settings:
- Create a separate workflow with an Error Trigger node
- Add notification actions (email, Slack, etc.)
- In your main workflow, go to Settings → Error Workflow and select it
Rate Limits
The Late node respects the same rate limits as direct API calls. For high-volume workflows, space out executions using the Schedule Trigger interval or add Wait nodes between batches.