u/SignificantLime151

I built a reusable Telegram approval bot for n8n — stops AI-generated
  content from going live without review (workflow JSON included)
▲ 2 r/n8n

I built a reusable Telegram approval bot for n8n — stops AI-generated content from going live without review (workflow JSON included)

I saw several requests in the thread "Human-in-the-loop for AI content" asking

   how to pause a workflow until a person signs off. The solution I landed on is

   a pair of n8n workflows that let you generate a Twitter thread and a LinkedIn

   post with GPT-4o-mini, then gate the publishing step behind a Telegram     

  approval button. The full repo is open-source:

  https://github.com/enzoemir1/n8n-telegram-approval

  How the main workflow works

  1. Webhook trigger -- receives a JSON payload containing the raw blog post.

  2. Parallel OpenAI nodes -- each node gets a platform-specific system prompt.

  Twitter: "Write a hook, compress the content, and split into a 5-tweet

  thread."                                                                      

  LinkedIn: "Turn the article into a professional story, keep paragraph breaks."

  3. Telegram node -- sends the two drafts to a private chat with an inline     

  keyboard:                                                                     

  

  {                                                                             

"reply_markup": {                                                         

"inline_keyboard": [

[

{ "text": "Approve", "callback_data": "approve" },

{ "text": "Reject", "callback_data": "reject" }

]

]                                                                         

}

  }                                                                             

  4. Wait node -- this is the tricky part. Set the mode to "Wait for Webhook"   

  with a webhook suffix for the Telegram callback. The workflow instance pauses

  and resumes exactly where it left off once the user clicks a button.          

  5. IF node -- routes the flow based on the callback value.                  

  Approve: calls the publishing APIs (Twitter, LinkedIn).

  Reject: logs the decision and ends the run.

  A second, simpler workflow strips out the OpenAI steps and just forwards any  

  incoming data to the Telegram approval step -- useful for non-text use cases  

  like invoice approval or deployment gates.                                    

  Running the workflow costs roughly $0.003 per execution with gpt-4o-mini.

  Adding a few few-shot examples to the prompts dropped the rejection rate from

  ~30% to ~10%.

  How are you handling quality control for AI-generated content in your own     

  automations? Any edge cases this pattern doesn't cover?

u/SignificantLime151 — 8 hours ago
From Google Sheets to Slack alerts: My Zapier-free n8n recipe        
  (step-by-step)
▲ 1 r/n8n

From Google Sheets to Slack alerts: My Zapier-free n8n recipe (step-by-step)

Just migrated a client off Zapier and saved them $20/month with a 5-node n8n  

  workflow. Took 30 min to build, runs on my self-hosted instance (totally free,

   but n8n.cloud free tier works too).                                          

  Here's the flow:

  1. Google Sheets "Watch Rows" -- polls every 5 min for new sales rows.

  2. IF node -- only lets Status === "Closed" through.

  3. HTTP Request -- hits our CRM to grab the customer's full name.             

  4. Function node -- formats the Slack message:

  const amount = $json["Amount"];                                             

  const name = $json["CustomerName"];

  return [{

json: {                                                                     

text: `*New sale!*\n*Amount:* $${amount}\n*Customer:* ${name}\n*Status:* 

  Closed`                                                                       

}                                                                         

  }];

  5. Slack node -- posts to #sales with the markdown.                           

  

  No rate-limit headaches, no Zapier task caps, and I can version-control the   

  whole thing in git. The client was shocked when I told them it's free forever.

  All eight of my free n8n workflows are on GitHub:                             

  github.com/enzoemir1/autoflow-n8n-workflows

  Anyone else ditched Zapier for n8n?

u/SignificantLime151 — 11 hours ago
How I turned a single blog post into ready-to-post content for 5 platforms with n8n
▲ 12 r/n8n

How I turned a single blog post into ready-to-post content for 5 platforms with n8n

When I started a personal tech blog, I quickly realized that writing one article and then manually reshaping it for Twitter, LinkedIn, Instagram, and a newsletter ate up most of my week. I decided to let n8n do the heavy lifting.

Here's the workflow I built:

  1. **RSS Feed Trigger** — Watches my blog's feed. As soon as a new post appears, the workflow starts.

  2. **HTTP Request** — Pulls the full article HTML from the URL.

  3. **HTML Extract** — Grabs the title, author, and the main article body.

  4. **Function (Split)** — Splits the body into three logical sections: intro, core, and conclusion. This makes it easy to reuse each part for a different platform.

  5. **OpenAI node** — Generates platform-specific rewrites. The system prompt asks for:

   - A Twitter thread (5-7 punchy tweets with hooks)

   - A LinkedIn post (professional tone, ~200 words)

   - An Instagram caption (casual, emoji-friendly, with hashtags)

   - A newsletter intro (personal tone, ~100 words)

   - A Facebook post (conversational, ends with a question)

  1. **Split into Items** — Each platform version becomes a separate item.

  2. **Platform nodes** — Each item routes to the corresponding API.

The whole thing runs in under 30 seconds on a self-hosted n8n instance. All nodes are modular, so you can enable/disable any platform.

I spent about a week building and testing this. The biggest surprise was how much the prompt engineering matters — the first version produced generic, copy-paste-ish content. After tweaking the system prompt to include platform-specific rules (character limits, hashtag counts, tone), the output got dramatically better.

The workflow JSON is in my GitHub repo along with 7 other free workflows (lead gen, email classifier, RAG chatbot, social monitor, and more):

https://github.com/enzoemir1/autoflow-n8n-workflows

Happy to answer questions about the prompt structure or node setup.

u/SignificantLime151 — 1 day ago