📱 LinkedIn post automation with AI (GPT-4o) generation & Slack approval

2,864 views · 📱 Social Media & Email Marketing

💡 Pro Tip — If you’re pulling LinkedIn data through HTTP requests or dealing with API restrictions, there’s a community node called ScraperNode that handles this natively. It has dedicated scrapers for profiles, companies, jobs, and people search — you just pass a URL and get structured data back.

View All Scrapers

Description

LinkedIn Post Automation with AI Generation (Gpt-4o) & Slack Approval

How it Works

This workflow automates the creation and publishing of LinkedIn posts with AI-generated content and human approval via Slack, using Google Sheets, OpenAI (GPT-4), Slack Interactive Messages, and the LinkedIn API.

Whether you’re a social media manager, content creator, or marketing professional, this workflow helps you maintain consistent LinkedIn presence and scale content creation while keeping human oversight — all managed from a simple spreadsheet.

🎯 Use Case

Ideal for:

Setup Instructions

1. Prepare the Spreadsheet

2. Configure Google Sheets Nodes

Connect your Google account to:

3. Add API Credentials

4. Configure Webhooks

5. Activate the Workflow

Once live, the workflow will:

  1. Monitor spreadsheet for new topics every minute
  2. Generate LinkedIn post using GPT-4
  3. Send to Slack for approval/editing
  4. Upload image to LinkedIn
  5. Publish to profile and groups
  6. Update spreadsheet status to Posted

🔁 Workflow Logic

  1. Trigger: New/updated row with Pending status
  2. Generate: AI creates engaging LinkedIn post
  3. Approve: Slack message for review/edit
  4. Process: Handle approval response
  5. Upload: Register and upload image
  6. Publish: Post to LinkedIn profile & groups
  7. Update: Mark as Posted in sheet

🧩 Node Descriptions

Node NameDescription
Linkedin-Post-TopicMonitors spreadsheet for new post topics
Validate-StatusFilters only ‘Pending’ items
LimitProcesses one item at a time
Linedin-Post-CreatorGenerates post content using GPT-4
Format-ContentPrepares content for Slack display
Approval-on-SlackSends interactive approval message
WebhookReceives Slack button responses
Format-ResponseExtracts edited content from Slack
Set-Final-MessagePrepares approved content
Linkedin-User-DetailFetches LinkedIn user info
Register ImageInitiates LinkedIn image upload
Upload ImageUploads image to LinkedIn
Linkedin-postPublishes to personal profile
Get-Group-idRetrieves LinkedIn group IDs
Post-Linkedin-GroupsPosts to multiple groups
Update-StatusMarks as completed in sheet

🛠️ Customization Tips

📒 Suggested Sticky Notes for Workflow

Node/SectionSticky Note Content
Linkedin-Post-Topic”Triggers every minute for new posts in your spreadsheet”
Validate-Status”Filters to process only ‘Pending’ items - prevents duplicates”
Linedin-Post-Creator”Uses GPT-4 to generate LinkedIn content - customize prompt for your brand voice”
Approval-on-Slack”Sends for human review - edit the Slack user to change approver”
Webhook”Receives approval responses - ensure URL is configured in Slack app”
Register Image”Initiates LinkedIn media upload - requires valid image URL from sheet”
Linkedin-post”Publishes to your profile - update with your LinkedIn credentials”
Post-Linkedin-Groups”Posts to multiple groups - add group IDs in Groups sheet”
Update-Status”Marks as ‘Posted’ to prevent reprocessing”

💡 AI Prompt Configuration

The workflow uses a sophisticated prompt that:

🔒 Security & Permissions

LinkedIn App Requirements:

Slack Bot Permissions:

📎 Required Components

ComponentPurpose
Google SheetStore post topics and status
LinkedIn AppAPI access for posting
Slack AppInteractive approval flow
OpenAI AccountGPT-4 content generation
N8N InstanceWorkflow execution

🧪 Testing Tips

⚠️ Common Issues & Solutions

LinkedIn API Errors:

Slack Integration:

Image Upload Failures:

📊 Workflow Benefits

📎 Required Files

File NamePurpose
Linkedin PostGoogle Sheet to hold post topics and status

🏷 Suggested Tags & Categories

🔗 Nodes Used

Google Sheets, HTTP Request, Slack, Webhook, Google Sheets Trigger, AI Agent

📥 Import

Download workflow.json and import into n8n: Workflow menu → Import from File

📖 Importing guide · 🔑 Credential setup