Learn › n8n Business Automations: Real Workflows That Scale › Content Brief to Published Post

Content Brief to Published Post

Intermediate 🕐 14 min Lesson 7 of 12
What you'll learn
  • Use the n8n Form Trigger to collect content briefs without an external form tool
  • Draft an article using a Basic LLM Chain with brief fields templated into the prompt
  • Implement a human review gate using a Wait node that resumes on a Slack button click
  • Publish the approved draft to WordPress or another CMS and update the content calendar

The Content Creation Bottleneck

Content marketing bottlenecks at the drafting stage — there is always more to write than time to write it. AI can produce a solid first draft from a structured brief in seconds. The automation challenge is not the generation itself but the workflow around it: collecting the brief, routing the draft for review, and pushing approved content to the CMS without manual copy-pasting.

Step 1: Collect the Content Brief

Use an n8n Form Trigger to collect briefs from your team. Build the form with fields for: topic, target audience, target keywords (comma-separated), tone of voice, and target word count. The Form Trigger generates a hosted form URL you can share with writers, marketers, or clients. No Typeform or Airtable required — the submission triggers the workflow directly.

Step 2: Draft the Article with AI

Add a Basic LLM Chain node (or AI Agent with a search tool for research-backed drafts). Write a prompt template that incorporates the brief's fields:

"Write a {{ $json.word_count }}-word article about {{ $json.topic }} for {{ $json.audience }}. Target keywords: {{ $json.keywords }}. Tone: {{ $json.tone }}. Structure it with an introduction, 4 to 5 sections with H2 subheadings, and a conclusion. Write clearly and avoid generic AI phrasing."

Using a capable model (GPT-4o or Claude Sonnet) produces drafts that require less editing. Set temperature to 0.6 for a balance of creativity and consistency.

Step 3: Human Review with Wait Node

Add a Wait node configured to resume on webhook call. Before pausing, send a Slack message to the editor with:

  • The article title and brief summary
  • A link to view the draft (save it to Google Docs first, or post it in the Slack message)
  • Two buttons: Approve and Request Changes (built using Slack Block Kit interactive messages)

When the editor clicks Approve, Slack calls the Wait node's webhook URL with an approval payload. The workflow resumes and proceeds to publish. If Request Changes is clicked, the workflow branches to send the draft back with a revision request.

Step 4: Publish to the CMS

After approval, add a WordPress node (or Webflow, Ghost, or any CMS with an API) to create a new post. Map the draft title, body content, target keywords (for SEO meta fields), and status to draft — not published yet. Publishing to draft status gives the editor one final look in the CMS before the actual publish action.

Step 5: Notify on Completion

After the CMS post is created, send a final Slack notification with the CMS draft URL. Update the original Airtable or Sheets content calendar row to mark the piece as "In Review" or "Draft in CMS". This creates a full audit trail from brief submission to CMS draft in one workflow with no manual data entry.

Key takeaways
  • The n8n Form Trigger collects structured briefs and starts the workflow — no Typeform needed
  • Temperature 0.6 on the writing LLM balances creativity with consistency for article drafts
  • The Wait node paused on webhook call lets Slack buttons become an approval mechanism
  • Always publish to CMS draft status — the editor should confirm before the final publish action