by Incrementors
Paste any podcast or YouTube video URL into a simple form and the workflow handles everything else. WayinVideo extracts summary and key highlights from the video, then OpenAI reads those highlights and writes a structured 550–700 word blog post with a title and subheadings. The finished blog post, along with the summary, highlights, and tags, is saved automatically as a new row in your Google Sheet. Built for content marketers, podcast teams, and agencies who want to turn video content into written blog posts without spending hours writing manually. What This Workflow Does Extracts video summary and highlights automatically** — Sends the video URL to WayinVideo, which returns a written summary, timestamped key highlights, and content tags — no manual watching needed Writes a full blog post using AI** — Passes the summary and highlights to OpenAI GPT, which writes a 550–700 word human-sounding blog post with a title, hook, subheadings, and a closing insight Structured blog output every time** — The output parser ensures the blog always arrives as a clean JSON object with a blog_title and blog_content field — no formatting errors Saves everything to Google Sheets** — Appends the video URL, blog title, full blog post, key summary, highlights, and tags as a new row in your sheet — your content library grows automatically Auto-retry if summary is not ready** — If WayinVideo has not finished processing when first checked, the workflow waits another 40 seconds and retries automatically until highlights are available Form-based submission** — Anyone on your team can paste a video URL and submit via the web form — no access to n8n required Brand-aware output** — The form collects your brand or show name alongside the URL — useful for tracking which content belongs to which show or client Setup Requirements Tools you'll need: Active n8n instance (self-hosted or n8n Cloud) WayinVideo account + API key OpenAI account + API key Google account connected to n8n via Google Sheets OAuth2 A Google Sheet with columns: Video URL, Blog Title, Blog, Key Summary, Highlights, Tags Estimated Setup Time: 15–20 minutes Step-by-Step Setup Get your WayinVideo API key Log in at WayinVideo, go to your account settings or developer section, and copy your API key. Paste the API key into node "2. WayinVideo — Submit Summary Request" Open this node, find the Authorization header, and replace YOUR_WAYINVIDEO_API_KEY with your actual key. Paste the API key into node "4. WayinVideo — Get Summary Result" Open this node, find the same Authorization header, and replace YOUR_WAYINVIDEO_API_KEY again. > ⚠️ This key appears in 2 nodes — you must replace it in both "2. WayinVideo — Submit Summary Request" and "4. WayinVideo — Get Summary Result". Missing either one will cause the workflow to fail. Connect your OpenAI account in node "7. OpenAI — GPT Chat Model" Open this node, click the credential field, and connect your OpenAI account. You will need a valid OpenAI API key from platform.openai.com. Set your Google Sheet URL in node "8. Google Sheets — Save Blog Content" Open this node and replace YOUR_GOOGLE_SHEET_URL with the full URL of your Google Sheet. To find it: open your Google Sheet in a browser and copy the entire URL from the address bar. Set your sheet tab in node "8. Google Sheets — Save Blog Content" In the same node, replace YOUR_SHEET_GID with the name of your sheet tab (e.g. Sheet1 or Sheet2). Then connect your Google Sheets credential via OAuth2. Prepare your Google Sheet columns Make sure your Google Sheet has these exact column headers in row 1: Video URL, Blog Title, Blog, Key Summary, Highlights, Tags — the workflow maps to these names exactly. Activate the workflow Toggle the workflow to Active. Open the form URL generated by node "1. Form — Podcast URL + Brand Name" and submit a test video URL to confirm the full workflow runs and a new row appears in your sheet. How It Works (Step by Step) Step 1 — Form Trigger (Web Form) The workflow starts when someone fills in the form. You enter two things: the podcast or YouTube video URL and your brand or show name. The form is hosted by n8n and can be shared with anyone on your team — no login required. Step 2 — Submit to WayinVideo Summaries API The video URL is sent to WayinVideo's Summaries endpoint. WayinVideo begins analysing the video and returns a task ID the workflow uses to check for results. The request asks for the output in English. Step 3 — Wait 40 Seconds The workflow pauses for 40 seconds to give WayinVideo time to process the video before checking for results. This prevents the workflow from requesting data before it is ready. Step 4 — Fetch Summary Results from WayinVideo The workflow calls WayinVideo's results endpoint using the task ID from Step 2. It receives the video title, written summary, timestamped highlights, and content tags — or an empty result if processing is not yet complete. Step 5 — Check: Highlights Ready? (YES / NO branch) YES** — If the highlights array is non-empty, the workflow moves forward and passes the data to the AI blog writer. NO** — If highlights are not available yet, the workflow loops back to Step 3, waits another 40 seconds, and checks again. This repeats until highlights are returned. > ⚠️ Infinite Loop Risk: If WayinVideo never returns highlights — because the video URL is invalid, private, or unsupported — this loop runs forever. Add a retry counter to stop after 8–10 attempts and send an error notification instead. Step 6 — AI Agent Writes the Blog Post (OpenAI) The video summary, highlights, and tags are passed to an OpenAI GPT agent with a detailed writing prompt. The prompt instructs GPT to write a 550–700 word blog post in a warm, human tone — with a hook, two to three subheaded sections, and a closing insight. It uses specific facts and names from the highlights wherever available. Step 7 — OpenAI GPT Chat Model This is the GPT model that powers the AI agent in Step 6. It processes the prompt and generates the blog content. Step 8 — Output Parser (Structured Blog) This step ensures the AI response is returned as a clean JSON object with exactly two fields: blog_title and blog_content. This prevents formatting errors before the data is written to Google Sheets. Step 9 — Google Sheets Saves the Blog The finished blog title, blog content, key summary, highlights, tags, and original video URL are appended as a new row in your Google Sheet. Your content library grows automatically with every form submission. The final result is a new row in your sheet containing a complete, ready-to-publish blog post — written from the video content, saved and organised automatically. Key Features ✅ Video to blog post in one form submission — Paste a URL, get a 550–700 word structured blog post saved to your sheet — no writing, no editing, no watching the video ✅ Human-style writing prompt — The AI agent is instructed to write like a thoughtful journalist — warm, story-driven, with real facts and no filler — not robotic AI text ✅ Highlights-driven content — The blog is written from WayinVideo's timestamped key highlights, not a generic summary — the most important moments from the video become the blog's core content ✅ Structured output every time — The output parser guarantees the blog always arrives as a clean blog_title + blog_content object — no broken formatting in your sheet ✅ Auto-retry on slow processing — If WayinVideo takes longer than 40 seconds, the workflow waits and retries automatically — no manual re-runs needed ✅ Full content archive in Google Sheets — Every blog post is saved with its video URL, summary, highlights, and tags — your whole team can search, review, and reuse past content ✅ Works with any video platform — Accepts YouTube, podcast recording URLs, Zoom recordings, or any video URL that WayinVideo supports Customisation Options Upgrade to GPT-4o for better writing quality In node "7. OpenAI — GPT Chat Model", change the model value from gpt-5-mini to gpt-4o for richer, more nuanced blog copy — especially useful for long-form or client-facing content. Add LinkedIn and Twitter captions after the blog After "6. AI Agent — Generate Blog Post", add a second AI Agent with a prompt asking it to write a LinkedIn post and two Twitter/X threads based on the same highlights — all from the same video data. Send a Slack or email notification when a new post is saved After "8. Google Sheets — Save Blog Content", add a Slack or Gmail node to notify your content team that a new blog post is ready — include the blog title and video URL in the message. Change the blog language In node "2. WayinVideo — Submit Summary Request", change "target_lang": "en" to another language code (e.g. "es" for Spanish, "hi" for Hindi) — the summary and highlights will come back in that language and the AI agent will write the blog in the same language. Add a publish step to WordPress or Webflow After "8. Google Sheets — Save Blog Content", add an HTTP Request step to send the blog_title and blog_content to your CMS via its API — so the blog post is drafted directly in your publishing platform without copy-pasting. Add a retry limit to prevent infinite loops Add a Set step before the retry path in "5. IF — Highlights Ready?" to track a counter, and a second IF check to stop after 10 attempts — route to a Gmail or Slack error notification instead of looping forever. Troubleshooting WayinVideo API key not working: Check that you replaced YOUR_WAYINVIDEO_API_KEY in both "2. WayinVideo — Submit Summary Request" and "4. WayinVideo — Get Summary Result" — missing either one causes the workflow to fail Confirm your WayinVideo account is active and the key has not expired Make sure there are no extra spaces before or after the key when pasting Workflow stuck in the retry loop: Check that the video URL is publicly accessible — private, age-restricted, or unsupported videos will not be processed by WayinVideo Open the output of "4. WayinVideo — Get Summary Result" and inspect the raw response — WayinVideo may have returned an error or an empty highlights array If the loop never exits, deactivate and reactivate the workflow, fix the video URL, and resubmit the form OpenAI step failing or returning an error: Check that the OpenAI credential in "7. OpenAI — GPT Chat Model" is connected and your API key is valid at platform.openai.com Make sure your OpenAI account has available credits — a depleted account causes the AI step to fail silently If the structured output parser fails, check the raw output of "6. AI Agent — Generate Blog Post" — the blog_title or blog_content key may be missing from the response Google Sheets not saving rows: Confirm that YOUR_GOOGLE_SHEET_URL in "8. Google Sheets — Save Blog Content" was replaced with the full URL of your actual Google Sheet Check that your sheet has the exact column headers: Video URL, Blog Title, Blog, Key Summary, Highlights, Tags — a typo in any header will cause that column to be skipped Make sure the Google Sheets OAuth2 credential is connected and not expired — reconnect it in n8n credentials if needed Form not triggering the workflow: Make sure the workflow is set to Active — it will not accept form submissions while inactive Copy the production form URL directly from "1. Form — Podcast URL + Brand Name" by clicking the node — do not use the test URL Support Need help setting this up or want a custom version built for your team or agency? 📧 Email: info@incrementors.com 🌐 Website: https://incrementors.com/
by GYEONGJUN CHAE
Crypto Arbitrage Analyzer: Binance vs Upbit (Kimchi Premium) Short Description Automate crypto arbitrage monitoring between Binance and Upbit. Track the "Kimchi Premium," analyze BTC price gaps with AI, and receive actionable trading reports via email. Full Description 🚀 Overview This workflow serves as an automated analyst for cryptocurrency traders focusing on the "Kimchi Premium" (the price gap between South Korean and global exchanges). It fetches real-time Bitcoin (BTC) prices from Binance (Global) and Upbit (Korea), compares them against the current USD/KRW forex rate, and uses OpenAI (GPT) to generate a sophisticated arbitrage assessment report sent directly to your inbox. ✨ Key Features Multi-Market Data Aggregation**: Simultaneously fetches data from Binance, Upbit, and Forex APIs. Real-time Forex Conversion**: Accurately calculates spreads using live USD/KRW exchange rates. AI-Powered Analysis**: Uses OpenAI to interpret the data, calculating spread percentages and profit margins automatically. Automated Reporting**: Delivers a clean, HTML-formatted trading report via Gmail every 30 minutes (customizable). 🛠️ How it Works Schedule Trigger: Runs the workflow automatically at set intervals (default: every 30 mins). Data Fetching: Gets BTC/USDT price from Binance. Gets BTC/KRW and BTC/USDT prices from Upbit. Gets USD/KRW exchange rate from a Forex API. Normalization: Standardizes the data structure from different APIs into a unified format. AI Processing: An OpenAI Agent analyzes the price differences, calculates the arbitrage gap (Kimchi Premium), and drafts a summary. Notification: A Structured Output Parser formats the AI's response, and the report is emailed to the trader via Gmail. 📋 Prerequisites / Setup To use this workflow, you need to configure the following credentials in n8n: OpenAI API**: Required for the analysis logic (GPT-4o-mini or similar recommended). Gmail (OAuth2)**: Required to send the email reports. (Note: Binance, Upbit, and Forex data are fetched via public REST APIs in this workflow, so no specific exchange API keys are required for basic data retrieval.) Use Case / Category Categories**: Finance, AI & LLMs, Automation Apps used**: OpenAI, Gmail, HTTP Request, Schedule SEO Keywords (Tagging purpose) Crypto Arbitrage, Bitcoin, Kimchi Premium, Binance, Upbit, Trading Bot, OpenAI, GPT, Financial Analysis, Automated Reporting
by Jack Mason
Generate and send personalized lead emails from Google Sheets via OpenAI to Gmail with Slack alerts Description This template triggers when a new row appears in Google Sheets (from any intake form that writes to the sheet). It validates key fields, performs light deduplication by email or phone, and sends the data to OpenAI to generate a concise, brand-safe first-touch email. At the same time, the model classifies each lead as High, Medium, or Low based on your criteria for budget, services, and timeline. The email is sent immediately from your connected Gmail (or SMTP) account. The sales team is notified in Slack with the lead’s name, contact details, services of interest, budget, and a deep link to the exact Google Sheets row. The Google Sheet is then updated with send status, lead type, and a timestamp for easy tracking. Setup: Connect Google Sheets (read/write), Gmail/SMTP, Slack (webhook or app), and an OpenAI API key. Provide brief classifier rules and a short tone guide with one clear CTA (reply or booking link). Include a one-line opt-out in the email body to stay compliant. Expected headers are: Timestamp, Name, Email Address, Phone Number, Services Interested In, Budget Range, Preferred Contact Time, Project Timeline, and Additional Comments. The trigger checks the sheet every minute and processes after-hours submissions right away. You can extend the flow with calendar booking links, territory routing, or rate limits as needed.
by WeblineIndia
iOS App Store Review Monitor & Notifier – Automated User Feedback Tracking This workflow runs on a scheduled basis (default: every 6 hours, customizable) and monitors new App Store reviews for your iOS apps. It fetches reviews via Apple’s iTunes RSS API, filters only new reviews since the last run and sends real-time notifications to your team via email, Slack, Telegram or other channels. Never miss important user feedback again. Who’s it for iOS developers** tracking user sentiment and bug reports. Product managers monitoring customer satisfaction and feature requests. Customer support teams responding quickly to complaints and issues. Marketing teams collecting testimonials and case studies from positive reviews. DevOps teams automating review monitoring as part of release processes. How it works Schedule Trigger** runs every 6 hours (cron configurable). App Configuration:** Define monitored apps with {appId, country, lang}. Fetch Reviews:** Call Apple’s iTunes RSS API for latest customer reviews. Extract & Parse:** Convert JSON into structured review data (rating, content, author, date, version). Filter New Reviews:** Compare with last run using timestamps → only new reviews pass. Format Notifications:** Build rich messages with review details. Send Alerts:** Deliver via Email, Slack, Telegram, Teams, etc. Track State:** Last check time to prevent duplicates. How to set up Find your App Store ID Go to your app’s App Store page. Example URL: https://apps.apple.com/us/app/app-name/id123456789 The number after id is the App Store ID (123456789). Configure App Settings In the App Config node set: appId = App Store ID country = Country code (us, gb, de, etc.) lang = Language code (en, es, fr, etc.) Set Up Notifications Choose your notification method: Email: configure Gmail/SMTP credentials Slack: add Slack webhook URL Telegram: set up bot token + chat ID Teams: configure Teams webhook Customize Schedule In the Schedule Trigger node: Every 6 hours → 0 */6 * * * Daily at 9 AM → 0 9 * * * Every 2 hours → 0 */2 * * * Test the Workflow Use a known App ID (e.g., WhatsApp: 310633997) for testing. Run manually to verify notifications are formatted correctly. Requirements n8n (cloud or self-hosted) with HTTP Request + notification nodes. App Store ID** for each monitored app. Notification credentials (Email, Slack, Telegram, etc.). Internet access to query Apple’s iTunes API. How to customize the workflow Multiple Apps** Monitor multiple apps by extending config:** [ {appId: "310633997", country: "us", lang: "en"}, {appId: "389801252", country: "gb", lang: "en"}, {appId: "544007664", country: "de", lang: "de"} ] Notification Templates** Add-ons to level up Sentiment Analysis:** AI-based scoring per review. Auto-Reply Integration:** Respond via App Store Connect API. Analytics Dashboard:** Store in Sheets/Airtable for trends. Competitor Monitoring:** Track rival app reviews. Translation:** Auto-translate to English. Escalation Rules:** Different alerts by rating severity. Common Troubleshooting No reviews returned** → app may not have recent reviews, try other country codes. JSON parsing errors** → check App Store ID validity. Duplicate notifications** → confirm time filtering works correctly. API rate limits** → Apple may throttle, add delays. Missing metadata** → some apps don’t return all fields. Need Help? If you’d like to customize this automation flow to suit your needs, write to our n8n automation team at WeblineIndia and we’ll adapt the template to your exact use case.
by WeblineIndia
WooCommerce Fraud Detection & Slack Alert Workflow This workflow automatically monitors WooCommerce orders, evaluates them for fraud using multiple checks (address mismatch, high-value orders, suspicious emails, admin orders), calculates a fraud score and sends alerts to Slack when risk is detected. Quick Implementation Steps Import the workflow JSON into n8n Configure WooCommerce API credentials Set up Slack API credentials and channel Adjust fraud rules (amount threshold, email regex, etc.) Test with sample order data Activate the workflow What It Does This workflow automates fraud detection for WooCommerce orders by applying multiple validation checks and assigning a fraud score. It starts with scheduled execution, fetches order data and prepares it for evaluation by extracting key details such as billing information, order value and customer email. Once the data is prepared, the workflow applies a series of fraud detection rules. These include checking whether billing and shipping details mismatch, identifying high-value orders, detecting suspicious or disposable email addresses and verifying if the order was created by an admin. Each condition contributes to a fraud score based on predefined logic. Finally, all signals are merged and a fraud score is calculated. If the score crosses the defined threshold, a detailed alert is sent to a Slack channel with complete order and risk information, enabling quick manual review and action. Who’s It For eCommerce store owners using WooCommerce Fraud prevention and risk management teams Operations teams handling order validation Developers building automation workflows in n8n Businesses wanting real-time fraud alerts in Slack Requirements to Use This Workflow n8n instance (self-hosted or cloud) WooCommerce store with API access enabled WooCommerce API credentials configured in n8n Slack workspace with API credentials Slack channel ID for sending alerts Basic understanding of n8n nodes and workflows How It Works & Set Up Setup Instructions Import the workflow JSON into your n8n workspace Configure the Schedule Trigger node to define execution frequency Set up the WooCommerce node: Add API credentials Ensure correct store URL Modify orderId if needed Configure Slack node: Connect Slack API credentials Select or update the target channel Review Set nodes: Ensure fields like email, total and address are correctly mapped Validate IF conditions: Status check (pending/processing) Address mismatch logic High-value threshold (default: 500) Email regex for disposable domains Review Code node logic: Fraud score calculation rules Adjust scoring weights if needed Test the workflow: Use sample order data Verify Slack alert output Activate the workflow for automatic execution How To Customize Nodes Check High Value (>500)** Modify the threshold value to match your business needs Detect Disposable Email** Update regex pattern to include more domains Calculate Fraud Score (Code Node)** Adjust scoring logic: if ($json.high_value_order) score += 3; Fraud Threshold Check** Change minimum score required to trigger alerts Slack Message Node** Customize alert message format and included fields Add-ons (Enhancements) Store fraud results in a database (MySQL, MongoDB, etc.) Automatically cancel or hold suspicious orders via WooCommerce API Send email alerts in addition to Slack notifications Add IP geolocation checks for advanced fraud detection Integrate with third-party fraud detection APIs Add risk categorization (Low / Medium / High) Use Case Examples Detect high-value fraudulent orders before fulfillment Identify mismatched shipping addresses for manual review Flag orders using disposable or temporary email addresses Monitor admin-created orders to reduce internal misuse risk Real-time fraud alerts for operations teams via Slack > There can be many more use cases depending on how you extend and customize this workflow. Troubleshooting Guide | Issue | Possible Cause | Solution | | --------------------------- | ------------------------------------- | -------------------------------------------- | | No orders fetched | Incorrect WooCommerce credentials | Verify API keys and store URL | | Slack message not sent | Wrong Slack credentials or channel ID | Reconnect Slack and check channel | | Fraud score always 0 | Conditions not triggering | Verify IF node logic and data mapping | | Email detection not working | Regex not matching | Update regex pattern | | Workflow not running | Schedule trigger not configured | Set interval correctly and activate workflow | Need Help? If you need assistance setting up this workflow, customizing fraud rules or adding advanced features, our n8n workflow development team at WeblineIndia is here to help. We can help you: Customize this workflow for your business needs Integrate with external systems and APIs Build advanced fraud detection logic Create fully automated eCommerce workflows 👉 Reach out to WeblineIndia for expert support and tailored automation solutions.
by Avkash Kakdiya
How it works This workflow automates employee expense reimbursements from submission to final resolution. Expenses are captured via a form, reviewed by an AI agent for justification, and routed to managers for approval or clarification. Approved expenses notify employees instantly, while rejected or unclear cases automatically schedule a follow-up discussion. All actions are logged to keep finance records clean and auditable. Step-by-step Step 1: Capture, summarize, and request approval** On Expense Form Submission – Captures structured expense details submitted by employees. Append row in sheet – Stores each expense entry in Google Sheets for tracking. AI Agent – Reviews the expense description and validates whether the full amount is justified. OpenAI Chat Model – Powers the AI reasoning used to analyze the expense. Output Parser – Converts the AI response into a structured decision format. If – Routes the flow based on whether the expense is appropriate or not. Step 2: Manager reviews and responds** Send Email to Manager for Approval – Sends an approval email when the expense is justified. Send Email to Manager for Approval1 – Sends a clarification-required email when justification is unclear. If1 – Checks the manager’s approve or reject response from the email. Step 3: Notify employee or schedule discussion** Send a message – Notifies the employee when the expense is approved. Booking Agent – Automatically finds the next available business-day time slot if the expense is rejected. OpenAI – Interprets availability rules and slot selection logic. Get Events – Fetches existing calendar events for the selected day. Check Availability – Identifies free time slots within working hours. Output Parser1 – Structures the selected meeting time. Send a message2 – Emails the employee with discussion details when clarification is required. Why use this? Enforce consistent expense validation before manager review. Reduce manual back-and-forth between employees, managers, and finance. Keep a centralized, auditable record of all expense submissions. Speed up reimbursements with automated approvals and notifications. Handle rejected expenses professionally with automatic discussion scheduling.
by Oneclick AI Squad
This n8n template demonstrates how to create an automated construction progress notification system for real estate companies. The workflow triggers daily at 8:00 AM IST to check a Google Sheet for contractor construction reports, automatically processes the data, and sends comprehensive project updates to buyers via email and WhatsApp. Perfect for real estate developers wanting to maintain transparent communication with buyers and ensure timely project status updates. Good to know Daily automated monitoring ensures no construction updates are missed Multi-channel communication (Email + WhatsApp) reaches buyers through their preferred method Smart filtering system only processes today's reports for relevant updates Comprehensive logging tracks all notification activities for audit purposes Built-in alert system notifies administrators when contractors fail to submit reports Handles multiple projects and contractors simultaneously without data conflicts How it works Daily Monitoring Workflow System triggers automatically every day at 8:00 AM IST to check for new construction reports Google Sheet configuration is set with Sheet ID, sheet name, and today's date for filtering All construction data is read from the designated Google Sheet containing contractor submissions Advanced filtering isolates only today's reports based on the Date column for processing Report Processing Workflow System checks if any construction reports were submitted for the current date If reports are found: Detailed notifications are prepared and sent to all registered buyers If no reports are found: Alert notifications are sent to administrators about missing submissions All project data is compiled into comprehensive summaries with progress percentages and status updates Notification Distribution Workflow Email notifications contain detailed construction summaries with all project information WhatsApp messages provide concise updates with key progress indicators and status Messages are personalized with project names, completion percentages, and contractor details Multiple recipients receive notifications simultaneously through both communication channels Activity Logging Workflow All notification activities are logged with precise timestamps and recipient information Success logs record project count, recipient numbers, and delivery confirmation Warning logs capture instances when no reports are found for administrative follow-up Complete audit trail maintains compliance and tracking for project management Google Sheet Structure Construction Reports Sheet Date - Report submission date (DD/MM/YYYY format) Project_Name - Name of the construction project Contractor_Name - Name of the responsible contractor Location - Project location or site address Progress_Percentage - Current completion percentage (0-100%) Status - Current project status (On Track, Delayed, Completed, etc.) Work_Description - Detailed description of today's construction activities Issues - Any problems or challenges encountered (optional) Budget_Status - Financial status update (On Budget, Over Budget, Under Budget) Next_Milestone - Upcoming project milestone or target date How to use Import the workflow into your n8n instance and configure Google Sheets integration Set up your Google Sheet with the required column structure for construction reports Configure email SMTP settings for professional construction update delivery Set up WhatsApp Business API for instant mobile notifications to buyers Add buyer email addresses and WhatsApp numbers to the notification recipient lists Contractors submit daily reports to the Google Sheet before 8:00 AM for same-day processing System automatically processes and distributes updates to all registered buyers Monitor logs for delivery confirmation and missing report alerts Requirements Google Sheets account for construction report data storage and management Email service integration (Gmail, SMTP, or corporate email system) WhatsApp Business API account for mobile messaging capabilities n8n instance with Google Sheets, Email, and WhatsApp connectors properly configured Valid credentials for all integrated services (Google OAuth, SMTP, WhatsApp API) Customising this workflow Construction update automation can be adapted for different project types and development scales Try popular use-cases such as weekly progress summaries, milestone notifications, or emergency construction alerts The workflow can be extended to include photo attachments from construction sites, weather impact assessments, and safety compliance reporting Integration possibilities include CRM systems for buyer management, project management tools for contractor coordination, and financial systems for budget tracking Notification scheduling can be adjusted for different time zones, multiple daily updates, or project-specific timing requirements Advanced features can include buyer feedback collection, contractor performance ratings, and automated delay notifications with mitigation plans
by Marth
Automated Support Ticket & Customer Notification System Let's build this workflow to streamline your customer support. Here is a detailed, node-by-node explanation of how it works and how to set it up in n8n. How It Works This workflow transforms your support inbox into a structured ticket system. When a new email arrives at your support address, the system automatically creates a new ticket (e.g., a Trello card), sends an instant confirmation email to the customer, and notifies your support team. This ensures every customer inquiry is captured, organized, and confirmed, guaranteeing no request gets missed. Setup Steps 1. Gmail Trigger: Watch Support Inbox Node Type:** Gmail Trigger Credentials:** YOUR_GMAIL_CREDENTIAL Parameters:** Operation: Watch for New Mails Folder: Inbox (or a specific folder for support emails, like Support) To: your-support-email@example.com Explanation:** This node is the starting point. It connects to your support email address and listens for new messages. As soon as a new email arrives, it triggers the rest of the workflow. 2. Trello: Create New Support Ticket Node Type:** Trello Credentials:** YOUR_TRELLO_CREDENTIAL Parameters:** Operation: Create Card Board ID: YOUR_SUPPORT_BOARD_ID List ID: YOUR_INCOMING_LIST_ID (e.g., "New Tickets") Name: New Support Request from {{ $json.from }} Description: Subject: {{ $json.subject }} Body: {{ $json.body }} Explanation:** This node takes the details from the incoming email and creates a new card on your Trello board. This turns every email into an actionable, trackable ticket for your support team. 3. Gmail: Send Automatic Confirmation Node Type:** Gmail Credentials:** YOUR_GMAIL_CREDENTIAL Parameters:** Operation: Send To: ={{ $json.from }} Subject: Re: {{ $json.subject }} Body: Hi there, thanks for reaching out. We've received your request and have created a new ticket. Our team will get back to you shortly. Explanation:** This node sends a quick, professional, and automated email back to the customer. This provides immediate peace of mind for the customer and confirms that their inquiry was successfully received. 4. Slack: Notify Support Team (Optional) Node Type:** Slack Credentials:** YOUR_SLACK_CREDENTIAL Parameters:** Operation: Post Message Channel: YOUR_SUPPORT_CHANNEL_ID (e.g., #support-channel) Text: New Support Ticket! A new ticket from {{ $json.from }} has been created in Trello. Explanation:** This optional but recommended node sends a real-time notification to your support team on Slack, letting them know that a new ticket is waiting for their attention. Final Step: Activation After configuring the nodes and connecting all credentials, click "Save" at the top of the canvas. Click the "Active" toggle in the top-right corner. The workflow is now live! Note: You can easily swap out the Trello node with a Zendesk or Jira node, and the Slack node with a Telegram or Microsoft Teams node, depending on your team's tools.
by Muhammad Bello
Description This n8n template automates prospect research and personalized follow-up writing right after a sales call is booked. It gathers company background, tech stack, and updates; suggests relevant solutions; and then drafts a handcrafted email, subject line, and SMS, all saved back into Google Sheets. Benefits Always show up to calls with prepared context. Ensure no follow-up slips through the cracks. Keep all notes, research, and outreach in a single system of record. Scale personalized outreach without losing the human touch. Use cases Prep for sales calls with richer prospect context. Save hours writing personal follow-ups. Keep sales records neatly in one shared sheet. Requirements Google Sheets with: Meeting Data → prospect info + enrichment fields Success Stories → testimonials (company, industry, results, solution used) Tavily API key OpenAI API key (GPT-4.1 or later recommended) n8n account with Google Sheets + LangChain enabled Google Sheets Template You’ll need two sheets inside one Google Spreadsheet: 1. Meeting Data (input + output) Columns: Name Email Company Website Job Title Meeting Date Company Overview (AI-filled) Tech Stack (AI-filled) Company Updates (AI-filled) Primary Solution (AI-filled) Solution 2 (AI-filled) Solution 3 (AI-filled) Email Subject (AI-filled) Follow-up Email (AI-filled) Follow-up SMS (AI-filled) 2. Success Stories (for testimonials) Columns: Company Industry Results Solution Used You can copy this structure into a fresh Google Spreadsheet before starting. How it works Trigger → Pulls new rows from Google Sheets (or connects to your booking system). Research Agent → Uses Tavily for company overview, tech stack, and updates. Product Suggestions → Pulls from Product List sheet to propose 3 tailored solutions. Save Research → Updates the row with the six research fields. Sales Writing Assistant → Drafts subject, email, and SMS using context + testimonials. Update Sheet → Writes final outputs (subject, email, SMS) into Google Sheets. Setup Steps Prepare Google Sheets Create a new spreadsheet with the Meeting Data and Success Stories tabs. Add the required columns (see template above). Fill in at least one success story for the workflow to use. Connect Google Sheets in n8n Add Google Sheets credentials under Settings → Credentials. Make sure n8n has access to your spreadsheet. Add API Keys In n8n, create credentials for OpenAI (GPT-4.1 or later). Create credentials for Tavily. Import the workflow Load the JSON file (this template) into n8n. Replace any placeholder spreadsheet IDs with your own. Map the correct sheet/tab names. Test the Research Agent Run the workflow manually. Check that Company Overview, Tech Stack, and Company Updates populate. Test the Writing Assistant Ensure the workflow uses at least one testimonial from Success Stories. Run it again and confirm Email Subject, Follow-up Email, and SMS are written. Automate Replace the Manual Trigger with your preferred trigger: Google Calendar / Calendly → Google Sheets CRM → Google Sheets Directly from n8n integrations Customization This workflow is designed as a flexible foundation. Here are ways to adapt it: Change AI prompts** Update the Research Agent prompt to focus on specific industries or data points. Edit the Sales Writing Assistant to match your tone of voice. Swap success stories** Add more detailed case studies to the Success Stories sheet for stronger personalization. Add integrations** Send follow-up emails automatically with Gmail or Outlook nodes. Push SMS directly via Twilio. Sync enriched data into HubSpot, Salesforce, or Notion. Error handling** Add retry logic for API calls. Include a notification node (Slack/Email) if the workflow fails. Tips & Troubleshooting If research doesn’t update → confirm Email is the matching column in your Update Sheet nodes. If follow-up copy is blank → ensure at least one testimonial exists in Success Stories. Use Debug Mode to inspect AI Agent or Sales Writing Assistant outputs.
by Alok Kumar
Multi-Level Document Approval & Audit Workflow This workflow automates a document approval process using Supabase and Gmail. Who it’s for Teams that need structured multi-level document approvals. Companies managing policies, contracts, or proposals. Medical document need multiple lavel of review and approval. How it works Form Trigger – A user submits a document via the form. Supabase Integration – The document is saved in the documents table. Supabase Storage – The document is saved in the bucket. Workflow Levels – Fetches the correct approval level from workflow_levels. Assign Approvers – Matches approvers by role from the users table. Approval Record – Creates an approvals record with a unique token and expiry. Email Notification – Sends an email with Approve / Reject links. Audit Logs – Records every approval request in audit_logs. Repeat - repeat the flow till all the aproval level is comepted How to set up Configure your Supabase credentials. Create tables as per data model given. Create a storage bucket in Supabase Storage. Connect your Gmail account. Adjust approval expiry time (48h default). Deploy and test via the Form Trigger. Customization Add multiple approval levels by chaining workflow_levels. Replace Gmail with Slack, Teams, or another notification channel. Adjust audit logging for compliance needs. Update the endpoint http://localhost:5678/webhook-test/ based on instance and env (remove test if you run in prod) Update the bucket name. Important steps 1. Form Submit Triggered when by submiting form Captures form parameters: Title (Document Title) Description (Document Description) file (Document need for approval) 2. Webhook Entry Point Triggered when an approver clicks the Approve or Reject link in email. Captures query parameters: token (approval token) decision (approved/rejected) 3. Approval Data Retrieval & Update Fetch approval record from Supabase (approvals) using token. Update approval status: Approved → moves to next workflow level or final approval. Rejected → document marked as rejected immediately. Records acted_at timestamp. 4. Decision Check IF Node* checks whether the decision is *approved* or *rejected**. Reject Path* → Update document status to *Rejected** in documents. Approve Path** → Continue workflow level progression. 5. Workflow Level Progression Fetch details of the current workflow level. Identify the next level (workflow_levels) based on level_number. ✅ If Next Level Exists: Retrieve approvers by role_id. Generate unique approval tokens. Create new approval records in approvals. Send email notifications with approval/reject links. ❌ If No Next Level (Last Level): Update document status to Approved in documents. 6. Audit Logging Every approval action is logged into audit_logs table: document_id action (e.g., approval_sent, approved, rejected) actor_email (system/approver) details (workflow level, role info, etc.) 📨 Email Template Approval request email includes decision links: Please review the document: ✅ Approve | ❌ Reject Happy Automating! 🚀
by Roshan Ramani
Who's it for This template is designed for professionals, entrepreneurs, and busy individuals who receive high volumes of emails and want to automate their email management. Perfect for freelancers, small business owners, project managers, and anyone who struggles with email overload and wants AI-powered assistance for prioritizing and responding to messages. How it works The workflow creates an intelligent email processing system that monitors your Gmail inbox in real-time and categorizes every incoming email using Google Gemini AI. Here's what happens: Real-time Processing: Every minute, the system checks for new emails and uses AI to classify them into three categories: Category 0 (Needs Reply)**: Questions, meeting requests, urgent business matters Category 1 (Important Notifications)**: Bills, confirmations, system alerts, order updates Category 2 (Spam/Unimportant)**: Marketing emails, newsletters, promotional content Smart Response Generation: For emails requiring replies, AI generates professional responses and sends them to your Telegram for approval. Once approved, the reply is automatically sent from your Gmail account. Instant Notifications: Important emails get summarized and sent as quick Telegram notifications so you stay informed without checking email constantly. Daily Email Digest: Every morning at 8 AM, you receive a comprehensive summary of the previous day's emails, including action items, issues requiring attention, and follow-up tasks. How to set up Step 1: Gmail Configuration Connect your Gmail account using OAuth2 authentication Ensure Gmail API access is enabled in your Google Cloud Console Step 2: Telegram Setup Create a new Telegram bot using @BotFather Get your bot token and personal chat ID Configure the Telegram credentials in n8n Step 3: AI Configuration Set up Google Cloud account with Gemini API access Create API credentials for Google Palm/Gemini Add the credentials to your n8n instance Step 4: Workflow Customization Update all Telegram chat IDs with your personal chat ID Configure the daily trigger schedule according to your timezone Test the workflow with sample emails Requirements Gmail account** with API access enabled Telegram bot** and personal chat ID Google Cloud account** with Gemini API access n8n instance** (self-hosted or cloud) All sensitive information like API keys, chat IDs, and email addresses should be configured using n8n's credential system rather than hardcoding them in the workflow. How to customize the workflow Modify Classification Logic Edit the AI Email Classifier node's system prompt to adjust how emails are categorized based on your specific industry or email patterns. Adjust Scheduling Change the Daily 8AM Trigger to your preferred time zone and schedule for receiving email summaries. Personalize Response Style Customize the AI reply generator's system prompt to match your communication style, tone, and professional voice. Enhance Filtering Add additional filtering logic to process emails from specific senders, domains, or with particular keywords differently. Extend Notifications Configure multiple Telegram chats for different types of notifications (personal vs work) or add other messaging platforms. Security Best Practices Use n8n environment variables for sensitive configuration Store all credentials securely using n8n's credential management Avoid hardcoding personal information in node parameters Test thoroughly in a development environment before production use The workflow is designed to be flexible and easily adaptable to different email management needs while maintaining security and privacy standards.
by iamvaar
Workflow explaination video: https://youtu.be/z1grVuNOXMk Prerequisites Before running this workflow, you need to have the following set up: JotForm: A form with fields for describing the issue and optionally naming the team member involved. Google Sheet 1 (Issue Resolver Logic): A sheet with three columns: Issue Category, Normal Resolver, and Alternate Resolver. This sheet defines who handles which type of complaint. Google Sheet 2 (Issue Logs): A sheet to store all submitted complaints. It needs columns like: Issue, The person Caused by, case_awarded_to, resolver_email, email_subject, email_body_html, submitted_time, and status. Google Sheet 3 (Resolver Details): A simple sheet with two columns: resolver (e.g., "HR Team") and email (e.g., "hr@yourcompany.com"). Credentials: You need to have connected accounts (credentials) in n8n for JotForm, Google (a Service Account for Sheets and OAuth for Gmail), and a Gemini API Key. Part 1: Initial Complaint Processing This part of the workflow triggers when a new complaint is submitted, uses AI to process it, logs it, and sends an initial notification. 1. JotForm Trigger What it is:** The starting point of the workflow. How it works:** It constantly listens for new submissions on your specified JotForm. When someone fills out and submits the form, this node activates and pulls in all the submitted data (like the issue description and the person involved). 2. AI Agent What it is:** The "brain" of the operation, which orchestrates several tools to make a decision. How it works:** This node receives the complaint details from the JotForm Trigger. It follows a detailed prompt that instructs it to perform a sequence of tasks: Classify: Analyze the complaint description to categorize it. Reason: Use its connected "tools" to figure out the correct resolver based on your business logic. Generate: Create a complete email notification and format the final output as a JSON object. Connected Tools:** Google Gemini Chat Model: This is the actual language model that provides the intelligence. The AI Agent sends its prompt and the data to this model for processing. Issue Resolver Allotment Logic Sheets tool: This allows the AI Agent to read your first Google Sheet. It can look up the issue category and find the designated "Normal Resolver" or "Alternate Resolver." Resolver Details Sheets tool: This allows the AI Agent to read your third Google Sheet. Once it knows the name of the resolver (e.g., "HR Team"), it uses this tool to find their corresponding email address. Structured Output Parser: This ensures that the AI's response is perfectly formatted into the required JSON structure (email, case_awarded_to, email_subject, etc.), making it reliable for the next steps. 3. Save Complaint (Google Sheets Node) What it is:** The record-keeping step. How it works:* This node takes the structured JSON output from the *AI Agent* and the original data from the *JotForm Trigger**. It then adds a new row to your second Google Sheet ("Issue Logs"), mapping each piece of data to its correct column (Issue, case_awarded_to, submitted_time, etc.). 4. Send a message (Gmail Node) What it is:** The initial notification step. How it works:* After the complaint is successfully logged, this node sends an email. It uses the resolver_email, email_subject, and email_body_html fields generated by the *AI Agent** to send a formal assignment email to the correct department or person. Part 2: Daily Follow-Up This second, independent part of the workflow runs every day to check for unresolved issues that are older than three days and sends a reminder. 1. Schedule Trigger What it is:** The starting point for the daily check-up. How it works:** Instead of waiting for a user action, this node activates automatically at a predefined time each day (e.g., 10:00 AM). 2. Get Complaint Logs (Google Sheets Node) What it is:** The data gathering step for the follow-up process. How it works:* When the schedule triggers, this node reads *all** the rows from your "Issue Logs" Google Sheet, bringing every recorded complaint into the workflow for evaluation. 3. If Node What it is:** The decision-making step. How it works:* This node examines each complaint passed to it from the previous step one by one. For each complaint, it performs a calculation: it finds the difference in days between the submitted_time and the current date. If that difference is *greater than or equal to 3**, the complaint is passed on to the next step. Otherwise, the workflow stops for that complaint. 4. Send a message1 (Gmail Node) What it is:** The reminder email step. How it works:* This node only receives complaints that met the "3 days or older" condition from the *If** node. For each of these old complaints, it sends a follow-up email to the resolver_email. The email body is dynamic, mentioning how many days have passed and including the original issue description to remind the resolver of the pending task.