by Daniel
Spark your creativity instantly in any chat—turn a simple prompt like "heartbreak ballad" into original, full-length lyrics and a professional AI-generated music track, all without leaving your conversation. 📋 What This Template Does This chat-triggered workflow harnesses AI to generate detailed, genre-matched song lyrics (at least 600 characters) from user messages, then queues them for music synthesis via Fal.ai's minimax-music model. It polls asynchronously until the track is ready, delivering lyrics and audio URL back in chat. Crafts original, structured lyrics with verses, choruses, and bridges using OpenAI Submits to Fal.ai for melody, instrumentation, and vocals aligned to the style Handles long-running generations with smart looping and status checks Returns complete song package (lyrics + audio link) for seamless sharing 🔧 Prerequisites n8n account (self-hosted or cloud with chat integration enabled) OpenAI account with API access for GPT models Fal.ai account for AI music generation 🔑 Required Credentials OpenAI API Setup Go to platform.openai.com → API keys (sidebar) Click "Create new secret key" → Name it (e.g., "n8n Songwriter") Copy the key and add to n8n as "OpenAI API" credential type Test by sending a simple chat completion request Fal.ai HTTP Header Auth Setup Sign up at fal.ai → Dashboard → API Keys Generate a new API key → Copy it In n8n, create "HTTP Header Auth" credential: Name="Fal.ai", Header Name="Authorization", Header Value="Key [Your API Key]" Test with a simple GET to their queue endpoint (e.g., /status) ⚙️ Configuration Steps Import the workflow JSON into your n8n instance Assign OpenAI API credentials to the "OpenAI Chat Model" node Assign Fal.ai HTTP Header Auth to the "Generate Music Track", "Check Generation Status", and "Fetch Final Result" nodes Activate the workflow—chat trigger will appear in your n8n chat interface Test by messaging: "Create an upbeat pop song about road trips" 🎯 Use Cases Content Creators**: YouTubers generating custom jingles for videos on the fly, streamlining production from idea to audio export Educators**: Music teachers using chat prompts to create era-specific folk tunes for classroom discussions, fostering interactive learning Gift Personalization**: Friends crafting anniversary R&B tracks from shared memories via quick chats, delivering emotional audio surprises Artist Brainstorming**: Songwriters prototyping hip-hop beats in real-time during sessions, accelerating collaboration and iteration ⚠️ Troubleshooting Invalid JSON from AI Agent**: Ensure the system prompt stresses valid JSON; test the agent standalone with a sample query Music Generation Fails (401/403)**: Verify Fal.ai API key has minimax-music access; check usage quotas in dashboard Status Polling Loops Indefinitely**: Bump wait time to 45-60s for complex tracks; inspect fal.ai queue logs for bottlenecks Lyrics Under 600 Characters**: Tweak agent prompt to enforce fuller structures like V1V2[C]; verify output length in executions
by Snehasish Konger
Target audience Solo creators, PMs, and content teams who queue LinkedIn ideas in Google Sheets and want them posted on a fixed schedule with AI-generated copy. How it works The workflow runs on a schedule (Mon/Wed/Fri at 09:30). It pulls the first Google Sheet row with Status = Pending, generates a LinkedIn-ready post from Post title using an OpenAI prompt, publishes to your LinkedIn profile, then updates the same row to Done and writes the final post back to the sheet. Prerequisites (use your own credentials) Google Sheets (OAuth2)** with access to the target sheet LinkedIn OAuth2* tied to the account that should post — set the *person** field to your profile’s URN in the LinkedIn node OpenAI API key** for the Chat Model node Store secrets in n8n Credentials. Never hard-code keys in nodes. Google Sheet structure (exact columns) Minimum required columns id — unique integer/string used to update the same row later Status — allowed values: Pending or Done Post title — short prompt/topic for the AI model Recommended columns Output post — where the workflow writes the final text (use this header, or keep your existing Column 5) Hashtags (optional) — comma-separated list (the prompt can append these) Image URL (optional) — public URL; add an extra LinkedIn “Create Post” input if you post with media later Notes (optional) — extra hints for tone, audience, or CTA Example header row id | Status | Post title | Hashtags | Image URL | Output post | Notes Example rows (inputs → outputs) 1 | Pending | Why I moved from Zapier to n8n | #automation,#nocode | | | Focus on cost + flexibility 2 | Done | 5 lessons from building a rules engine | #product,#backend | | This is the final posted text... | Resulting Output post (for row 1 after publish) I switched from Zapier to n8n for three reasons: control, flexibility, and cost. Here’s what changed in my stack and what I’d repeat if I had to do it again. #automation #nocode > If your sheet already has a column named Column 5, either rename it to Output post and update the mapping in the final Google Sheets Update node, or keep Column 5 as is and leave the node mapping untouched. Step-by-step Schedule Trigger Runs on Mon/Wed/Fri at 09:30. Fetch pending rows (Google Sheets → Get Rows) Reads the sheet and filters rows where Status = Pending. Limit Keeps only the first pending row so one post goes out per run. Writing the post (Agent + OpenAI Chat Model + Structured Output Parser) Uses Post title (and optional Notes/Hashtags) as input. The agent returns JSON with a post field. Model set to gpt-4o-mini by default. Create a post (LinkedIn) Publishes {{$json.output.post}} to the configured person (your profile URN). Update the sheet (Google Sheets → Update) Matches by id, sets Status = Done, and writes the generated text into Output post (or your existing output column). Customization Schedule** — change days/time in the Schedule node. Consider your n8n server timezone. Posts per run* — remove or raise the *Limit** to post more than one item. Style and tone** — edit the Agent’s system prompt. Add rules for line breaks, hashtags, or a closing CTA. Hashtags handling** — parse the Hashtags column in the prompt so the model appends them cleanly. Media posts** — add a branch that attaches Image URL (requires LinkedIn media upload endpoints). Company Page* — switch the *person* field to an *organization** URN tied to your LinkedIn app scope. Troubleshooting No post created** Check the If/Limit path: is there any row with Status = Pending? Confirm the sheet ID and tab name in the Google Sheets nodes. Sheet not updating** The Update node must receive the original id. If you changed field names, remap them. Make sure id values are unique. LinkedIn errors (403/401/404)** Refresh LinkedIn OAuth2 in Credentials. The person/organization URN is wrong or missing. Copy the exact URN from the LinkedIn node helper. App lacks required permissions for posting. Rate limit (429) or model errors** Add a short Wait before retries. Switch to a lighter model or simplify the prompt. Post too long or broken formatting** LinkedIn hard limit is \~3,000 characters. Add a truncation step in Code or instruct the prompt to cap length. Replace double line breaks in the LinkedIn node if you see odd spacing. Timezone mismatch** The Schedule node uses the n8n instance timezone. Adjust or move to a Cron with explicit TZ if needed. Need to post at a different cadence, or push two posts per day? Tweak the Schedule and Limit nodes and you’re set.
by Matt Chong
Who is this for? This workflow is for professionals, entrepreneurs, or anyone overwhelmed by a cluttered Gmail inbox. If you want to automatically archive low-priority emails using AI, this is the perfect hands-free solution. What does it solve? Your inbox fills up with old, read emails that no longer need your attention but manually archiving them takes time. This workflow uses AI to scan and intelligently decide whether each email should be archived, needs a reply, or is spam. It helps you: Declutter your Gmail inbox automatically Identify important vs. unimportant emails Save time with smart email triage How it works A scheduled trigger runs the workflow (you set how often). It fetches all read emails older than 45 days from Gmail. Each email is passed to an AI model(GPT-4) that classifies it as: Actionable Archive If the AI recommends archiving, the workflow archives the email from your inbox. All other emails are left untouched so you can review them as needed. How to set up? Connect your Gmail (OAuth2) and OpenAI API credentials. Open the "Schedule Trigger" node and choose how often the workflow should run (e.g., daily, weekly). Optionally adjust the Gmail filter in the “List Old Emails” node to change which emails are targeted. Start the workflow and let AI clean up your inbox automatically. How to customize this workflow to your needs Change the Gmail filter**: Edit the query in the Gmail node to include other conditions (e.g., older_than:30d, specific labels, unread only). Update the AI prompt**: Modify the prompt in the Function node to detect more nuanced categories like “Meeting Invite” or “Newsletter.” Adjust schedule frequency**: Change how often the cleanup runs (e.g., hourly, daily).
by Niclas Aunin
This n8n workflow automatically generates professional product announcements and blog articles from your Notion content planning database. Who's it for & Use Cases Product Marketers, Content Teams, Product Managers, and Founders who want to: Automate product announcement creation from their Notion product backlog. Generate SEO and AI Search/ALLMO optimized blog articles with consistent structure and brand voice Maintain an up to date product changelog for products with frequent udpates. How It Works Phase 1: Notion Trigger & Validation Workflow monitors your Notion "Content Plan" database for page updates Validates that the entry is marked as ready for writing Checks that content type is set to "Product" (filters other content types) Phase 2: AI Outline Generation GPT-5 Mini creates a structured outline based on: Project name from Notion Notes field (context/instructions) Built-in SEO and ALLMO best practices Output includes sections, subsections, and key talking points Phase 3: Full Article Generation Claude Sonnet 4.5 writes the complete product announcement using: The generated outline Project details from Notion Expert product communications system prompt Article follows structured format: headline, summary, feature sections, FAQ, CTA, and SEO metadata Phase 4: Google Docs Creation & Notion Update Creates new Google Doc with your project name as title Inserts the complete Markdown article into the document Updates Notion page with Google Docs link for instant access Marks the project as complete in Notion How to Setup Connect your Notion account and select your Content Plan database Enter API credentials in the Claude and OpenAI nodes Configure your Google Docs folder location Customize system prompts with your company description, target audience, and brand voice How to Expand Replace the Notion node with a product backlog tool of your choice. Update and fine tune the prompts. Output Structure Full Markdown article with YAML front matter Structured sections: headline, summary, feature descriptions, additional improvements, FAQ, CTA SEO metadata included (title, meta description, slug, tags) Automatically saved to Google Docs with link in Notion Requirements API Credentials: Anthropic API (Claude Sonnet 4.5) OpenAI API (GPT-5 Mini) Connected Services: Notion workspace with Content Plan database Google Docs/Drive account Notion Database Fields: Project name (title/text) Notes (text/description field) Google_Docs_Link (URL field) Status field to mark entries as ready (e.g., "Ready for Writing") Content Type field set to "Product"
by Tomohiro Goto
🧠 How it works This workflow enables automatic translation in Slack using n8n and OpenAI. When a user types /trans followed by text, n8n detects the language and replies with the translated version via Slack. ⚙️ Features Detects the input language automatically Translates between Japanese ↔ English using GPT-4o-mini (temperature 0.2 for stability) Sends a quick “Translating...” acknowledgement to avoid Slack’s 3s timeout Posts the translated text back to Slack (public or private selectable) Supports overrides like en: こんにちは or ja: hello 💡 Perfect for Global teams communicating in Japanese and English Developers learning how to connect Slack + OpenAI + n8n 🧩 Notes Use sticky notes inside the workflow for setup details. Duplicate and modify it to support mentions, group messages, or other language pairs.
by Parhum Khoshbakht
Who's it for Product managers, customer success teams, and UX researchers who collect feedback in Google Sheets and want to automatically categorize and analyze it with sentiment and emotions insights. Ideal for teams processing dozens or hundreds of customer comments daily. Read on Medium Watch on Youtube What it does This workflow automatically tags and analyzes customer feedback stored in Google Sheets using OpenAI's GPT-4. It reads unprocessed feedback entries, sends them in batches to OpenAI for intelligent tagging and sentiment analysis, then writes the results back to your sheet—complete with up to 3 relevant tags per feedback, sentiment scores (Very Negative to Very Positive), and emotional analysis. The workflow uses batch processing to optimize API costs: instead of sending 10 separate requests, it sends one request with all 10 feedbacks, reducing API calls by ~90%. How it works Fetches allowed tags from a Tags sheet and new feedback entries (where Status is empty) from a Feedbacks sheet Merges tags with feedbacks and processes them in batches of 10 Sends each batch to OpenAI with a structured prompt requesting tags, sentiment, and emotional analysis Writes results back to Google Sheets with tags, sentiment, emotions, and timestamps Requirements Google Sheets account with OAuth2 credentials OpenAI API account (uses GPT-4o-mini model) Google Sheet template with two sheets: "Tags" (single column) and "Feedbacks" (with columns: Feedbacks, Status, Tag 1-3, Sentiment, Primary/Secondary Emotion, AI Tag 1-2, Updated Date) Setup instructions Duplicate the provided Google Sheet template Connect your credentials in n8n: Google Sheets OAuth2 API OpenAI API Update Sheet URLs in these nodes: "Fetch Allowed Tags" - point to your Tags sheet "Fetch New Feedbacks" - point to your Feedbacks sheet "Update Google Sheet (Tagged)" - point to your Feedbacks sheet Test manually first using the Manual Trigger, then enable the Schedule Trigger for automatic processing every 60 minutes How to customize Adjust batch size**: Change the batch size in "Process Feedbacks in Batches" (default: 10) to process more or fewer feedbacks per API call Modify tagging logic**: Edit the system prompt in "Tag Feedbacks with AI" to change how tags are selected or add custom sentiment categories Change schedule**: Update the Schedule Trigger interval (default: 60 minutes) based on your feedback volume Extend the workflow**: Add nodes to send results to Slack, Notion, or Airtable for real-time alerts on negative feedback
by Robert Breen
This workflow automates the process of finding YouTube creator contact emails for outreach and partnerships. It combines Apify scrapers with OpenAI to deliver a clean list of emails from channel descriptions: Step 1:** Search YouTube with Apify based on a keyword or topic Step 2:** Scrape each channel for descriptions and metadata Step 3:** Use OpenAI to extract and format valid email addresses into a structured JSON output This is useful for influencer outreach, creator collaborations, UGC sourcing, or lead generation — all automated inside n8n. ⚙️ Setup Instructions 1️⃣ Set Up OpenAI Connection Go to OpenAI Platform Navigate to OpenAI Billing Add funds to your billing account Copy your API key into the OpenAI credentials in n8n 2️⃣ Set Up Apify Connection Go to Apify Console and sign up/login Get your API token here: Apify API Keys Set up the two scrapers in your Apify account: YouTube Scraper by streamers YouTube Scraper by apidojo In n8n, create a HTTP Query Auth credential Query Key: token Value: YOUR_APIFY_API_KEY Attach this credential to both HTTP Request nodes (Search YouTube and Scrape Channels) 📬 Contact Information Need help customizing this workflow or building similar automations? 📧 robert@ynteractive.com 🔗 Robert Breen 🌐 ynteractive.com
by Anatoly
AI-Powered Lead Generation: Personalized Icebreakers with Perplexity Research & Claude Sonnet 4.5 This production-ready workflow transforms your lead generation by automatically researching prospects and generating genuinely personalized icebreakers that feel human-written. What normally takes 10-15 minutes per lead now happens in under a minute, at scale. 🎯 What It Does: Pulls lead data from Google Sheets, conducts real-time AI research on each prospect, and generates custom cold email opening lines that reference actual company achievements and recent news. The workflow processes leads in batches, updates your spreadsheet automatically, and maintains context throughout the entire process. Automated Research**: Perplexity Sonar searches the web for current information about each prospect and their company Company Name Standardization**: GPT-4o-mini cleans up corporate names to sound natural ("Sharp Guys Web Design Agency" becomes "Sharp Guys") Personalized Icebreakers**: Claude Sonnet 4 crafts opening lines that reference real achievements in a casual, bar-conversation tone Smart Processing**: Filters already-processed leads, handles batches of 25, and safely updates your spreadsheet Cost Effective**: Approximately $0.02 per lead with typical 2-3x response rate improvement 💡 Use Cases & Results: Perfect for: B2B sales teams, marketing agencies, business development, recruiters, freelancers, startup founders doing cold outreach. Expected results: 2-3x response rate improvement ~$0.02 per lead cost 10-15 min → 30-60 sec per lead Why it works: Icebreakers reference real, current information vs generic templates. Prospects notice the personalization. 🔧 How It Works: The workflow follows a six-step process. First, it retrieves lead data from your Google Sheets and filters out any leads that already have icebreakers to avoid reprocessing. Then it processes leads in manageable batches of 25 to respect API rate limits while maintaining efficiency. For each lead, the system standardizes the company name by removing corporate suffixes like "Agency," "Inc.," or "Group" to make icebreakers sound more natural. Next, Perplexity Sonar conducts real-time web research on the prospect, finding recent company news, achievements, funding rounds, and relevant background information. Claude Sonnet 4 then analyzes this research and generates a personalized icebreaker that sounds genuinely human-written. The prompt instructs Claude to use a casual, spartan tone and to look for plausible connections without stretching the truth. Each icebreaker follows a proven format: "Hey [FirstName], [specific observation about their company], I wanted to share something that could be relevant for [Company]." Finally, the workflow updates your spreadsheet with both the cleaned company name and the personalized icebreaker, then loops back to process the next batch until all unprocessed leads are complete. ✨ Key Features: Real-time research**: Perplexity Sonar accesses current web data for the most relevant, up-to-date information Natural language**: Icebreakers reference real achievements in conversational tone, not corporate speak Batch processing**: Handles 25 leads at a time with automatic looping for any volume Smart filtering**: Skips leads that already have icebreakers, enabling easy reruns with new data JSON output**: Structured format ready for integration with cold email tools Resume capability**: Can stop and restart anytime without losing progress Quality assurance**: AI models are specifically chosen for their strengths (speed, research, writing) 📋 Requirements: Google Sheets with lead data (columns: id, first_name, last_name, title, organization_name, Icebreaker, company_name_cleanup) OpenAI API key (for GPT-4o-mini company name cleanup) OpenRouter account with credits (for Perplexity Sonar and Claude Sonnet 4 access) n8n Cloud or self-hosted instance ⚡ Quick Setup: Prepare your Google Sheets spreadsheet with the required columns and fill in your lead data. Connect your Google Sheets, OpenAI, and OpenRouter credentials to n8n. Configure the "Get Leads" and "Update Icebreaker" nodes to point to your spreadsheet. Test with a couple of leads first to ensure everything works, then run the full workflow. The workflow includes comprehensive documentation via sticky notes covering data structure, AI model selection rationale, customization options, cost analysis. 🎁 What You Get: Complete end-to-end automation with detailed sticky note documentation explaining each step, customizable prompts for adjusting tone and style, batch processing logic that respects API limits, error handling and retry mechanisms, cost optimization using the right AI model for each task (GPT-4o-mini for simple transformations, Perplexity for research, Claude for writing), and security best practices for handling lead data responsibly. 💰 Expected Results: At approximately $0.02 per lead, this workflow typically delivers response rate improvements of 2-3x compared to generic templates. For a hundred leads, you invest about $2 and save over fifteen hours of manual research and writing time. The icebreakers sound genuinely human because they reference real, current information rather than generic templates. Many users report that prospects often respond positively to the personalized opening, commenting that it doesn't feel like a mass email. 🔄 Integration Ready: The output format is designed to integrate seamlessly with popular cold email tools like Instantly, Lemlist, Smartlead, and others. Simply export your updated spreadsheet and import the icebreakers into your outreach sequences. The casual tone and specific details make these icebreakers perfect for relationship-building campaigns where authenticity matters. Icebreaker Examples: https://docs.google.com/spreadsheets/d/1_oxNW4l54fVjxq6Y62xR_yqqQK6O3gCsmqmBhO2ei1Y/edit?usp=sharing
by Cheng Siong Chin
How It Works This workflow automates daily contract monitoring, analysis, and negotiation by retrieving contract data, applying AI-driven legal analysis, identifying potential issues and risks, coordinating multi-agent negotiation workflows, and updating strategic plans. It continuously monitors contracts, performs GPT-4–based contract analysis with detailed risk identification, and flags problematic clauses and unfavorable terms. The system routes identified items to a negotiation agent for structured strategic discussion, applies financial impact analysis to evaluate deal implications, determines negotiation outcomes, logs decisions and results, and updates CAPEX and OPEX planning systems accordingly. Designed for legal departments, procurement teams, corporate counsel, and contract management offices, it supports automated contract risk assessment, informed negotiations, and data-driven strategic planning. Setup Steps Configure contract data source and set up daily monitoring schedule. Connect OpenAI GPT-4 API Set up negotiation agent credentials and financial modeling system connections. Define contract risk thresholds Prerequisites Contract management system or data source; OpenAI API key; negotiation agent access Use Cases Corporate legal departments automating contract risk assessment across portfolios Customization Adjust contract analysis criteria and risk thresholds Benefits Eliminates manual contract review, identifies hidden risks automatically
by Robert Breen
📩 This n8n automation sends a personalized email to the person who booked a meeting via Calendly. It uses an AI agent to craft a helpful, human-sounding HTML email that includes your fake phone number (111-111-1111) and the meeting date. 📌 What This Workflow Does Triggers when someone books a meeting in Calendly (invitee.created event). Extracts user details like name, email, reason for meeting, and scheduled time. Uses OpenAI to generate a custom email response based on what the user shared. Sends the email to the user using Microsoft Outlook. ⚙️ Step-by-Step Setup Instructions 1. 🔗 Calendly API Setup Go to Credentials → Add Credential → Calendly API in n8n. Authenticate with your Calendly personal access token. Set your Calendly Trigger node to listen for invitee.created events. 2. 📧 Microsoft Outlook Setup Add credentials via Microsoft Outlook OAuth2 in n8n. Select the credential in the "Send a message" node. This node will send an HTML-formatted response to the user's email. 3. 🤖 OpenAI AI Agent Add your OpenAI key under Credentials → OpenAI API. The AI Agent prompt is already pre-configured to: Generate an HTML email Mention how you can help Include the user's question, meeting date, and your placeholder phone number (111-111-1111) 🧠 Node Breakdown | Node | Purpose | |------------------|----------------------------------------------------------| | Calendly Event | Trigger when someone books via Calendly | | Edit Fields | Extracts key details (name, email, question, start time) | | AI Agent | Writes a custom follow-up email using GPT | | Outlook Message | Sends the AI-generated HTML email to the user | 💌 Example Email Output (HTML) Thanks for Booking with Us! Hi Robert Breen, Thanks for booking a meeting with us! You mentioned: need help with n8n. We’d love to help you solve that. During our call, we’ll walk through your issue and explore automation strategies tailored to your setup. Your meeting is scheduled for August 11, 2025 at 3:00 PM EST. In the meantime, if you have questions, feel free to call us at 111-111-1111. Looking forward to chatting soon! 📞 Contact Information Robert , Ynteractive Website: https://ynteractive.com Email: robert@ynteractive.com LinkedIn: https://linkedin.com/in/robert-breen Top-rated n8n Expert & AI Automation Consultant
by Diego Alejandro Parrás
Generate Weekly Content Calendar with AI from RSS Feeds Categories: AI, Content Creation, Marketing Automation, Productivity Never run out of content ideas again. This workflow transforms trending industry news into a week's worth of structured content ideas, automatically organized in your Notion workspace—all while you sleep. Benefits Save 3+ hours weekly on content ideation and planning Stay relevant** by automatically tracking trending topics in your industry Consistent publishing schedule** with 7 ready-to-execute content ideas every Monday Structured output** with title, format, target audience, and key points for each idea Flexible customization** to match your content style and publishing cadence How It Works Every Monday at 9 AM, the workflow springs into action: Gathers fresh content from multiple RSS feeds (TechCrunch, Ars Technica, MIT News by default) Filters recent articles published in the last 7 days to ensure relevance Analyzes trends by sending the top 20 articles to OpenAI Generates 7 content ideas using structured output with strict JSON formatting Distributes across the week from Monday to Friday with varied content types Creates Notion pages automatically with all metadata ready for your workflow Each generated idea includes: Clear, actionable title (max 80 characters) Content type (LinkedIn post, carousel, thread, video, etc.) Target audience segment Recommended publish day Key talking point to develop The AI prompt is carefully engineered to produce practical, professional content ideas that balance trending topics with original angles—avoiding generic summaries. Required Setup RSS Feeds: Default feeds included: TechCrunch, Ars Technica, MIT Science & Tech Easily swap with your industry's top sources Duplicate nodes to add more feeds (no limit) OpenAI API: Model: GPT-5-mini (latest generation, fast and cost-effective) Average cost: ~$0.01 per weekly execution Alternative: Use GPT-5 for even more creative ideas Notion Database: Create a database with these exact property names: Title** (title type) Content Type** (select or rich text) Target Audience** (rich text) Publish Day** (select: Monday, Tuesday, Wednesday, Thursday, Friday) Status** (select: Draft, In Progress, Done) Key Points** (rich text) Configuration in Code Node: Customize the filtering behavior by editing constants at the top: DAYS_BACK: How many days to look back (default: 7) MAX_ARTICLES: Maximum articles to send to AI (default: 20) SNIPPET_LENGTH: Preview length for descriptions (default: 150 chars) Business Use Cases Content Creators & Marketers: Generate LinkedIn content calendar based on industry trends Transform news into educational threads for Twitter/X Plan newsletter topics with current relevance Agencies: Scale content planning across multiple client industries Maintain consistent posting schedules without manual research Demonstrate ROI by tracking trending topic engagement Solo Founders & Thought Leaders: Stay top-of-mind by consistently sharing timely insights Reduce decision fatigue with pre-structured ideas Focus on execution instead of ideation Content Teams: Coordinate multi-format campaigns (posts, videos, carousels) Distribute workload with clear assignments by day Track status from Draft → Done in one view Set Up Steps Import the workflow into your n8n instance Configure RSS feeds: Click each RSS node Replace URLs with your industry's top sources Duplicate nodes for additional feeds (right-click → Duplicate) Add OpenAI credentials: Click "Generate Content Calendar (Structured)" node Add your OpenAI API key Confirm model is set to gpt-5-mini Create Notion database: Open Notion and create a new database Add the 6 required properties (see Required Setup above) Configure select options for Content Type and Status Connect Notion: Click "Create Database Page in Notion" node Add your Notion credentials Select your content calendar database Verify field mappings match your property names Customize filtering (optional): Open "Filter and Format Articles" code node Edit DAYS_BACK, MAX_ARTICLES, SNIPPET_LENGTH at the top Test the workflow: Click "Execute Workflow" to run manually Verify 7 pages are created in Notion Check that fields are populated correctly Enable the schedule: Toggle "Active" to enable weekly execution Confirm trigger is set to Mondays at 9 AM Troubleshooting Tips: If no articles appear, check that RSS feeds are accessible If AI returns errors, verify your OpenAI API key has credits If Notion fails, ensure property names match exactly (case-sensitive) For field mapping issues, use "Add Field" in the Notion node Difficulty Level: Intermediate Estimated Setup Time: 20-30 minutes Monthly Operating Cost: ~$0.10-$0.30 (OpenAI API at 4 runs/month) Why This Template Stands Out Unlike basic RSS-to-Notion workflows that just dump articles, this template: Analyzes and synthesizes** trends into original content angles Structures output** with strict validation for reliable automation Distributes strategically** across the workweek Mixes content formats** to maintain audience engagement Includes fallback handling** if no recent articles are found The code node is heavily documented with configuration constants, making it accessible even for non-developers to customize behavior without touching complex logic.
by Ryo Sayama
Who is this for Freelancers, small business owners, and accounting teams in Japan who receive invoices and want to eliminate manual data entry into spreadsheets. What this workflow does Send an invoice photo to your LINE bot and the rest is automatic. The workflow fetches the image via LINE Messaging API, runs it through OCR.space to extract raw text, then passes that text to a Gemini AI Agent to parse the key fields — invoice number, date, due date, vendor name, subtotal, tax, and total. The result is appended as a new row in your Google Sheets ledger and a confirmation is sent back to LINE. If the image is not an invoice, a friendly error message is returned instead. How to set up Create a LINE Messaging API channel and get your Channel Access Token Get a free OCR.space API key at ocr.space/ocrapi/freekey Get a free Gemini API key at aistudio.google.com Set up Google Sheets OAuth2 credentials in n8n Enter your LINE token, OCR key, and Spreadsheet ID in the Variables node Set the Webhook URL in LINE Developers to your n8n instance URL Activate the workflow and send an invoice photo to your LINE bot Requirements LINE Messaging API channel and channel access token OCR.space API key (free tier: 25,000 requests/month) Google Gemini API key (free tier: 1,500 requests/day) Google Sheets with OAuth2 credentials configured in n8n How to customize Change SHEET_NAME in the Variables node to file invoices by month. Edit the Gemini prompt to capture extra fields like bank details or line items. Swap OCR.space for Google Cloud Vision API if you need better accuracy on complex layouts.