An n8n community node for the Zernio API - the professional social media management platform.
Schedule and manage social media posts across multiple platforms:
- 🐦 Twitter/X - Posts, threads, and automation
- 📸 Instagram - Posts, Stories, Reels with Business account support
- 👤 Facebook - Page management and posting
- 💼 LinkedIn - Personal and company page posting
- 🎵 TikTok - Direct video posting with privacy controls
- 📹 YouTube - Videos and Shorts with custom thumbnails
- 🧵 Threads - Meta's social platform
- 🦋 Bluesky - Decentralized social network
- 📌 Pinterest - Pin to boards
- 🤖 Reddit - Post to subreddits
✈️ Telegram - Channel posting- 📍 Google Business - Business profile posts and reviews
- 👻 Snapchat - Public profile posting
- 1.0.0 - Initial release with comprehensive Zernio API integration
- Go to Settings → Community Nodes in your n8n instance
- Select Install and enter
n8n-nodes-zernio - Click Install and restart n8n
- The Zernio node will appear in your node palette
Note: Also available as
n8n-nodes-latefor backwards compatibility.
npm install n8n-nodes-zerniogit clone https://github.com/zernio-dev/n8n-nodes-zernio.git
cd n8n-nodes-zernio
npm install
npm run build- Zernio Account: Sign up at zernio.com
- API Key: Generate an API key from your Zernio dashboard
- Social Accounts: Connect your social media accounts to Zernio profiles
- Add a new credential in n8n
- Search for "Zernio API"
- Enter your API key from the Zernio dashboard
Profiles organize your social media accounts by brand, client, or purpose.
{
"resource": "profiles",
"operation": "create",
"name": "Personal Brand",
"description": "My personal social media accounts",
"color": "#4ade80"
}Connect your social media platforms to the profile:
{
"resource": "connect",
"operation": "connect",
"platform": "twitter",
"profileId": "profile_123_abc"
}Create posts across multiple platforms:
{
"resource": "posts",
"operation": "create",
"content": "Hello, world! #automation",
"platforms": [
{"platform": "twitter", "accountId": "twitter_account_123"},
{"platform": "linkedin", "accountId": "linkedin_account_456"}
],
"scheduledFor": "2024-01-15T16:00:00",
"timezone": "America/New_York"
}- List - Get all profiles
- Create - Create new profile (subject to plan limits)
- Update - Update profile details
- Delete - Delete profile (must be empty)
- List - Get posts with pagination and filters
- Get - Get specific post details
- Create - Schedule or publish posts
- Update - Edit draft/scheduled posts
- Delete - Delete posts (published posts cannot be deleted)
- Retry - Retry failed posts
- Logs - Get publishing logs for a post
- Bulk Upload - Upload multiple posts at once
- Upload - Upload images/videos up to 5GB
- Presign - Get presigned URL for large file uploads
- List - View connected accounts
- Get - Get specific account details
- Update - Update account settings (e.g., display name)
- Delete - Disconnect accounts
- Health - Check account connection health
- All Health - Check health of all accounts
- Follower Stats - Get follower statistics
- List - Get all account groups
- Get - Get specific group details
- Create - Create new account group
- Update - Update group settings
- Delete - Delete account group
- Connect - Initiate OAuth for new platforms
- Get Stats - Monitor usage against plan limits
- Get - Get post analytics across platforms
- YouTube Daily Views - Get daily view statistics for YouTube
- List - Get queue slots for a profile
- Create - Create new queue slot
- Update - Update slot time
- Delete - Remove queue slot
- Preview - Preview upcoming scheduled posts
- Next Slot - Get next available slot time
- Get - Get webhook configuration
- Create - Create new webhook endpoint
- Update - Update webhook settings
- Delete - Remove webhook
- Test - Send test webhook event
- Logs - View webhook delivery history
- List Pages - Get available Facebook pages
- Select Page - Connect specific page
- List Account Pages - Get pages for a specific account
- Update Page - Change active page
- Update Organization - Switch between personal/company posting
- List Locations - Get available business locations
- Select Location - Connect specific location
- List Account Locations - Get locations for an account
- Switch Location - Change active location
- List Reviews - Get business reviews
- Reply Review - Respond to a review
- Delete Reply - Remove review response
- List Boards - Get available Pinterest boards
- Select Board - Connect specific board
- Connect - Connect Bluesky account with credentials
- Disconnect - Disconnect Bluesky account
- List Subreddits - Get saved subreddits for posting
- Update Subreddits - Update subreddit list
- Search - Search for subreddits
- Feed - Get subreddit feed (hot, new, top, rising)
- List Profiles - Get available public profiles
- Select Profile - Connect specific profile
- Get Status - Check Telegram connection status
- Initiate - Start Telegram connection flow
- Clone Connection - Reuse OAuth across profiles
- Invites: Create - Invite team members with profile access
- List - Get all API keys
- Create - Generate new API key
- Delete - Revoke API key
- List - Get team members
- Get - Get user details
- List - Get publishing logs with filters
- Get - Get specific log entry
Create multi-tweet threads:
{
"platforms": [
{
"platform": "twitter",
"accountId": "twitter_account_123",
"platformSpecificData": {
"threadItems": [
{"content": "Tweet 1 - Introduction"},
{"content": "Tweet 2 - Details"},
{"content": "Tweet 3 - Conclusion"}
]
}
}
]
}Post to Instagram Stories:
{
"platforms": [
{
"platform": "instagram",
"accountId": "instagram_account_123",
"platformSpecificData": {
"contentType": "story"
}
}
],
"mediaItems": [
{"type": "image", "url": "https://your-story-image.jpg"}
]
}Control TikTok post privacy:
{
"platforms": [
{
"platform": "tiktok",
"accountId": "tiktok_account_123",
"platformSpecificData": {
"tiktokSettings": {
"privacy_level": "PUBLIC_TO_EVERYONE",
"allow_comment": true,
"allow_duet": true,
"allow_stitch": true
}
}
}
]
}Add custom thumbnails and first comments:
{
"platforms": [
{
"platform": "youtube",
"accountId": "youtube_account_123",
"platformSpecificData": {
"firstComment": "Thanks for watching! Don't forget to like and subscribe!"
}
}
],
"mediaItems": [
{
"type": "video",
"url": "https://your-video.mp4",
"thumbnail": "https://your-custom-thumbnail.jpg"
}
],
"tags": ["tutorial", "automation", "n8n"]
}Create multi-post threads on Bluesky:
{
"platforms": [
{
"platform": "bluesky",
"accountId": "bluesky_account_123",
"platformSpecificData": {
"threadItems": [
{"content": "Post 1 - Introduction"},
{"content": "Post 2 - Details"},
{"content": "Post 3 - Conclusion"}
]
}
}
]
}Upload files before using in posts:
{
"resource": "media",
"operation": "upload",
"files": [
{
"filename": "image.jpg",
"data": "base64_encoded_data"
}
]
}For large files (>4MB), use the presign operation:
{
"resource": "media",
"operation": "presign",
"filename": "video.mp4",
"contentType": "video/mp4"
}Set up webhooks to receive real-time notifications:
{
"resource": "webhooks",
"operation": "create",
"url": "https://your-server.com/webhook",
"events": ["post.published", "post.failed"]
}Available webhook events:
post.scheduled- Post scheduledpost.published- Post published successfullypost.failed- Post failed to publishpost.partial- Post partially published (some platforms failed)
- Instagram: Business account required (Personal/Creator accounts not supported)
- Facebook: Must be admin of Facebook pages
- LinkedIn: Company pages require admin access
- TikTok: Creator account recommended
- YouTube: Channel access required
- Twitter/X: Standard account
- Threads: Standard account
- Bluesky: Standard account (uses app password)
- Pinterest: Business account recommended
- Reddit: Account with posting privileges
- Telegram: Bot token required
- Google Business: Business profile owner/manager access
- Snapchat: Public profile required
Zernio enforces usage limits based on your plan:
- Free: 10 posts/month, 2 Social Sets - $0/mo
- Build: 120 posts/month, 10 Social Sets - $13/mo (billed yearly)
- Accelerate: Unlimited posts, 50 Social Sets - $33/mo (billed yearly)
- Unlimited: Unlimited posts, Unlimited Social Sets - $667/mo (billed yearly)
Optional add-ons available: Analytics, Comments + DMs
Monitor usage with the Usage Statistics operation.
The node handles various error scenarios:
- 403: Plan limits exceeded
- 401: Invalid API key
- 400: Invalid request data
- 404: Resource not found
- 429: Rate limit exceeded
Check the node output for detailed error messages and upgrade suggestions.
- Node.js 18+
- TypeScript
- n8n development environment
git clone https://github.com/zernio-dev/n8n-nodes-zernio.git
cd n8n-nodes-zernio
npm install
npm run buildnpm run lint # Check for issues
npm run lintfix # Fix automatically- Documentation: Zernio API Docs
- Dashboard: zernio.com/dashboard
- Email: miki@zernio.com
- Issues: GitHub Issues
MIT
Contributions are welcome! Please read our contributing guidelines and submit pull requests.
Made with love by the Zernio team
