🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

Slack + LinkedIn drafts from any URL, review-ready

Lisa Granqvist Partner Workflow Automation Expert

You know the feeling. You find a great URL to share, then lose 45 minutes turning it into something “LinkedIn-ready,” chasing an image, and copying drafts into Slack for feedback.

This Slack LinkedIn drafts automation hits content marketers first, but founders and agency leads get stuck in the same loop. The outcome is simple: one URL becomes a post draft plus a matching visual, delivered to Slack in a reviewable format.

Below you’ll see how the workflow runs, where approvals happen, and what to tweak so drafts sound like you (not like everyone else).

How This Automation Works

See how this solves the problem:

n8n Workflow Template: Slack + LinkedIn drafts from any URL, review-ready

The Challenge: Turning Good Links Into Review-Ready LinkedIn Posts

Sharing a URL on LinkedIn should be easy. In practice, it turns into a mini production cycle: skim the page, pull the key points, draft the post, rewrite the hook twice, then hunt for an image that doesn’t look like generic stock. After that comes the real slowdown. Feedback arrives in scattered Slack messages, someone suggests a different angle, and you’re juggling “final_v3_really_final” text in three places. Multiply that by a few posts a week and it becomes a quiet time leak that steals momentum.

It adds up fast. Here’s where it breaks down.

  • Drafts get created in too many places, so your “source of truth” keeps moving.
  • Teams spend about an hour per post just compressing a long page into something skimmable.
  • Visuals are an afterthought, which means inconsistent branding and weaker engagement.
  • Approvals happen in chat fragments, so edits get missed and posts stall for days.

The Fix: URL-to-LinkedIn Drafts With Slack Approvals

This workflow turns one input (a web page URL) into a complete LinkedIn draft package that’s easy to review. You submit the URL through a simple form along with optional instructions like “make it more opinionated” or “focus on the case study results.” The automation scrapes the page content using Airtop, then an AI model writes a clear, educational post designed for LinkedIn’s format. Next, a second AI step creates a visual prompt aligned to the post, and a sub-workflow renders that into a branded image. Finally, everything is sent into Slack with dedicated review messages for text and visuals, so feedback can trigger revisions instead of starting the process over.

The workflow starts with a form submission and a scrape of your target URL. From there, AI generates the post and a matching visual prompt, then hands off image rendering to a sub-workflow. Slack becomes the review hub: approve, request revisions, or decline, and the workflow routes the next action automatically.

What Changes: Before vs. After

Real-World Impact

Say you share 3 URLs per week (a blog post, a case study, and a product update). Manually, a typical cycle is about 45 minutes to write a decent post plus maybe 30 minutes to sort out a visual, then another 15 minutes wrangling feedback in Slack. Call it about 1.5 hours per post, or roughly 4-5 hours each week. With this workflow, you spend about 5 minutes submitting the URL and notes, then review the draft in Slack when it arrives. You’re usually down to about 30 minutes total time across the whole week.

Requirements

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Slack for review, approvals, and revision feedback.
  • Airtop to scrape and extract web page content.
  • OpenAI credentials (get them from your OpenAI dashboard’s API keys page)

Skill level: Intermediate. You’ll connect accounts, add credentials, and adjust a couple of prompts and Slack destinations.

Need help implementing this? Talk to an automation expert (free 15-minute consultation).

The Workflow Flow

A URL kicks everything off. A form trigger collects the page link and any instructions (tone, audience, what to highlight), so you don’t have to rewrite briefs each time.

The page is scraped and cleaned up. Airtop extracts the web page content, and n8n maps the fields into a consistent payload that the writing model can understand.

Draft and visual concept are generated. One AI step writes the LinkedIn post, another produces a visual prompt, and the workflow stores that output so it’s easy to revise without redoing everything.

Slack becomes the approval system. The workflow sends text for review, routes feedback through classifiers (approve vs revise vs decline), and triggers reprocessing when revisions are requested. When it’s approved, Slack receives the final post and the final image, ready to publish.

You can easily modify the writing style and the image branding rules based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Form Trigger

Set up the two intake forms that start the workflow: one for full post generation and one for image-only requests.

  1. Open Form Intake Trigger and set Form Title to LinkedIn Post Generator and Form Description to Fill out these fields and you'll have a full LinkedIn post ready to go in a minute. .
  2. In Form Intake Trigger > Form Fields, add Page URL (required) and Instructions (textarea) as shown.
  3. Open Image-Only Intake and set Form Title to Generate Image and Form Description to Start here if you have the post and just want to generate and revise the visual for it.
  4. In Image-Only Intake > Form Fields, add a required Post textarea field.

These two triggers feed different paths: Form Intake Trigger generates a post from a URL, while Image-Only Intake skips directly to visual generation.

Step 2: Connect Airtop for Web Scraping

Configure the web scraping node that extracts page content for the post draft.

  1. Open Scrape Web Page and set Resource to extraction and Operation to scrape.
  2. Set URL to ={{ $json['Page URL'] }} and Session Mode to new.
  3. Credential Required: Connect your airtopApi credentials in Scrape Web Page.

Step 3: Set Up Processing and AI Generation

Map inputs, generate the draft post, and produce the visual prompt with OpenAI.

  1. In Map Input Fields, map fields using expressions: URL to ={{ $('Form Intake Trigger').item.json['Page URL'] }}, Instructions to ={{ $('Form Intake Trigger').item.json.Instructions }}, and Webpage_content to ={{ $json.data.modelResponse.scrapedContent.text }}.
  2. Open Compose Post Draft and keep the full prompt in Text, including {{ $json.Instructions }}, {{ $json.Post }}, and {{ $json.Webpage_content }}. Credential Required: Connect your openAiApi credentials.
  3. In Assemble Post Payload, set URL to ={{ $('Map Input Fields').item.json.URL }} and Post to ={{ $json.output }} to package the draft for review.
  4. Open Initialize Image Prompt and set Post to ={{ $json.Post || $('Assemble Post Payload').item.json.Post}} to support both trigger paths.
  5. In Create Visual Prompt, keep the detailed prompt in Text and leave Resource as assistant. Credential Required: Connect your openAiApi credentials.
  6. In Store Prompt Output, map Image_prompt to ={{ $json.output }} so the prompt is available to the sub-workflow.

Primary Chat Model and Secondary Chat Model are connected as language models for Classify Text Feedback and Classify Visual Feedback respectively. Ensure credentials are added to those model nodes.

Step 4: Configure Reviews, Revisions, and Delivery

Set up the Slack review loop, classification, revisions, and final delivery of the post and visual.

  1. Open Request Text Review and set Message to =---------------- {{ $json.Post }} ----------------- Based on: {{ $json.URL }}, Operation to sendAndWait, and Response Type to freeText. Credential Required: Connect your slackOAuth2Api credentials.
  2. In Classify Text Feedback, keep Input Text as ={{ $json.data.text }}; this routes feedback to Apply Text Revisions and Initialize Image Prompt based on classification.
  3. In Apply Text Revisions, set Instructions to ={{ $json.data.text }} and Post to ={{ $('Assemble Post Payload').item.json.Post }} so revisions re-enter Compose Post Draft.
  4. Open Run Sub-Workflow (Configure Required), select the workflow in Workflow ID, and confirm Workflow Inputs map Prompt to ={{ $json.Image_prompt }} and Image_drive_id to ={{ $json.Image_id }}.
  5. In Request Visual Review, set Message to =---------------- POST {{ $('Initialize Image Prompt').item.json.Post }} IMAGE PROMPT {{ $('Store Prompt Output').item.json.Image_prompt }} IMAGE {{ $('Run Sub-Workflow (Configure Required)').item.json.Branded_view_url[0] }} ----------------- and keep Operation as sendAndWait. Credential Required: Connect your slackOAuth2Api credentials.
  6. In Classify Visual Feedback, keep Input Text as ={{ $json.data.text }}; classification routes to Build Prompt Revisions for edits or Post Final Delivery for approvals.
  7. Open Post Final Delivery and set Text to =---------------- FINAL POST AND VISUAL {{ $('Initialize Image Prompt').item.json.Post }} {{ $('Run Sub-Workflow (Configure Required)').item.json.Branded_view_url[0] }} . Credential Required: Connect your slackOAuth2Api credentials.

⚠️ Common Pitfall: Run Sub-Workflow (Configure Required) has an empty Workflow ID. You must select a target workflow or the visual generation step will fail.

Step 5: Test and Activate Your Workflow

Validate both intake paths and confirm Slack approvals loop correctly before turning the workflow on.

  1. Click Execute Workflow and submit the Form Intake Trigger form with a valid URL to confirm Scrape Web Page and Compose Post Draft create a draft.
  2. Verify Request Text Review posts to Slack and returns feedback to Classify Text Feedback. A successful run should either revise the post via Apply Text Revisions or proceed to Initialize Image Prompt.
  3. Test the Image-Only Intake path by submitting a post and ensuring Create Visual Prompt and Run Sub-Workflow (Configure Required) produce an image link.
  4. Confirm Post Final Delivery sends the final post and image URL to Slack when visual feedback is approved.
  5. Once all paths work, toggle the workflow Active for production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Watch Out For

  • Slack credentials can expire or need specific permissions. If things break, check the n8n Credentials page and your Slack app scopes first.
  • If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
  • Default prompts in AI nodes are generic. Add your brand voice early or you’ll be editing outputs forever.

Common Questions

How quickly can I implement this Slack LinkedIn drafts automation?

Usually in about an hour once your credentials are ready.

Can non-technical teams implement this LinkedIn drafting?

Yes. You’ll mostly connect Slack and Airtop, then paste in OpenAI credentials. If you can handle basic app connections, you can run it.

Is n8n free to use for this Slack LinkedIn drafts workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in Airtop and OpenAI API usage, which varies with how long the pages are and how many drafts you generate.

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

How do I adapt this Slack LinkedIn drafts solution to my specific challenges?

You can. Most customizations happen in the “Compose Post Draft” prompt and in how you map inputs inside “Map Input Fields.” Teams commonly add a “post style preset” field (technical vs story-driven), enforce a brand glossary (products, capitalization, banned phrases), and tweak the Slack review messages so approvals go to the right channel. If you already have a design system, swap the image sub-workflow for your own branded image generator and keep the rest the same.

Why is my Slack connection failing in this workflow?

It’s usually an expired token or missing Slack app scopes. Reconnect Slack in n8n Credentials, confirm the workflow can post to the target channel, and double-check you didn’t rename or archive the channel used for review. If failures happen only during busy periods, rate limits can also be the culprit, so spacing executions out helps.

What’s the capacity of this Slack LinkedIn drafts solution?

For most teams, it comfortably handles dozens of drafts per day, and the main limiter is how quickly you want Slack reviews to happen.

Is this Slack LinkedIn drafts automation better than using Zapier or Make?

Often, yes, because this workflow isn’t just “URL in, message out.” You’ve got scraping, two AI generation paths (text plus visual prompt), a sub-workflow for image rendering, and a feedback loop that classifies responses and triggers revisions. n8n handles that kind of branching without making you pay extra for every router and every step. Zapier or Make can still work if you want something lightweight, like sending a draft to Slack with no revisions. If you’re unsure which direction fits your team, Talk to an automation expert.

Once this is running, a good URL stops being a “later” task and becomes a draft your team can approve the same day. Honestly, that kind of speed changes your content rhythm.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal