by WeblineIndia
Weekly “Talking Points” Generator for Advisors This workflow automatically generates a weekly financial advisory briefing every Monday at 8 AM. It fetches live market data (SPY), collects top financial news, uses Google Gemini AI to generate client-ready talking points and sends a formatted email via Gmail. It also logs all data into Google Sheets for tracking and analysis. Quick Implementation Steps Add your Alpha Vantage API key in the market data node Add your NewsAPI key in the news node Connect your Google Gemini API credentials Connect your Gmail account (OAuth2) Connect your Google Sheets account In Set All Variables node, enter: Advisor Email (receiver email) Advisor Name Firm Name Activate the workflow What It Does This workflow automates the creation of weekly financial talking points for advisors. Every Monday morning, it collects real-time SPY (S&P 500 ETF) market data and the latest financial news headlines. These inputs are combined and processed to ensure only valid and clean data is used. The cleaned data is then sent to Google Gemini AI, which generates structured advisor-ready talking points along with simple client-friendly analogies. These insights help advisors communicate market trends effectively to clients. Finally, the workflow formats the output into a professional email and sends it via Gmail. At the same time, all key data including market values, headlines and AI-generated output is stored in Google Sheets for record-keeping and analysis. Who It's For Financial Advisors Wealth Managers Investment Consultants Portfolio Managers Fintech Teams building advisory tools Anyone who needs automated weekly market insights Requirements to Use This Workflow To run this workflow, you will need: n8n account (self-hosted or cloud) Alpha Vantage API Key (for market data) NewsAPI Key (for financial news) Google Gemini API credentials Gmail OAuth2 connection Google Sheets account A valid receiver email (advisor email) Step-by-Step Setup Guide 1. Schedule Trigger The workflow starts automatically every Monday at 8 AM 2. Fetch Market Data Node: Fetch SPY Market Data (Alpha Vantage) Add your Alpha Vantage API key It retrieves: Price Change % High / Low Volume 3. Fetch Financial News Node: Fetch Top 5 Financial News Headlines Add your NewsAPI key It retrieves the latest 5 news headlines 4. Merge Data Node: Merge Market and News Data Combines both API responses into one dataset 5. Configure Variables (IMPORTANT) Node: Set All Variables – Edit Here to Reconfigure Update the following: advisorEmail → Enter receiver email ID advisorName → Your name firmName → Your company name This node also prepares: Market values News headlines AI prompt 6. Clean & Prepare Data (Code Node) Node: Clean & Prepare Market Data What it does (simple explanation): Removes empty or invalid news headlines Ensures at least one fallback headline exists Checks if SPY price is valid Combines headlines into a readable format 7. Validate Data Node: Validate Data Before AI Ensures important data (like SPY price) is available If invalid → workflow stops 8. Generate AI Output Node: Generate Weekly Briefing with Gemini Uses Gemini model to generate: 5 talking points 2 client-friendly analogies 9. Validate AI Output Node: Check – Did Gemini Return a Valid Response If empty → workflow stops If valid → continues 10. Format Output Node: Format AI Response as Clean HTML Converts AI text into email-friendly HTML format 11. Send Email Node: Send Weekly Briefing Email via Gmail Sends formatted briefing to advisor email 12. Log Data in Google Sheets Node: Log Weekly Briefing to Sheet Setup Google Sheets: Create a new Google Sheet Add columns: Date Advisor Name Firm Name SPY Price SPY Change % SPY Day High SPY Day Low SPY Volume Top Headline All Headlines Full AI Output Email Status Execution Time Connect your Google Sheets account in n8n Select the sheet and map fields (already configured) How To Customize Nodes Change Market Symbol** Modify symbol=SPY in Alpha Vantage node Change News Topic** Update q=regulation in NewsAPI node Modify AI Output Style** Edit prompt inside Set Variables node Change Email Format** Customize HTML in Gmail node Adjust Schedule** Change trigger timing (daily, weekly, etc.) Add-ons (Extend the Workflow) Add Slack or WhatsApp notifications Store logs in database instead of Sheets Add multiple advisors (loop emails) Include more market indices (NASDAQ, Dow Jones) Add PDF report generation Add dashboard visualization (Power BI / Looker Studio) Use Case Examples Weekly client briefing preparation for advisors Internal market update emails for financial firms Automated newsletter generation Portfolio review preparation support Content generation for financial blogs There can be many more use cases depending on how you customize this workflow. Troubleshooting Guide | Issue | Possible Cause | Solution | |------|--------------|---------| | No email received | Advisor email not set | Enter valid email in Set Variables node | | Empty AI response | Gemini API issue | Check API key and model connection | | No market data | Invalid Alpha Vantage API key | Verify API key | | No news headlines | NewsAPI issue or limit reached | Check API key and quota | | Workflow stops early | Validation failed | Ensure SPY data is available | | Google Sheets not updating | गलत mapping or credentials issue | Reconnect and verify column mapping | | Email formatting issue | HTML formatting error | Check Format node | Need Help? If you need help setting up, customizing or scaling this workflow, feel free to reach out. Whether it's: Adding advanced automation Integrating with CRM systems Building custom AI workflows Scaling for enterprise use n8n automation developers at WeblineIndia can help you build powerful automation solutions tailored to your business needs. Get in touch for expert assistance and custom workflow development.
by Incrementors
Description Submit a sales call recording URL and describe the objection type you want to find — such as "pricing too expensive" or "competitor comparison" — and the workflow scans the recording automatically. WayinVideo's Find Moments API locates up to 5 exact moments in the recording that match your search, returning each one with a title, description, timestamp, and relevance score. GPT-4o-mini then analyzes each moment and writes a structured coaching note — objection category, what happened, rep response assessment, specific coaching advice, and a first-person suggested reframe ready to use on the next call. Every moment is saved as a separate Airtable record with Status set to Needs Review. Built for sales managers and revenue teams who want to track objection patterns across their team's calls without manually reviewing every recording. What This Workflow Does Finds exact objection moments in the recording** — WayinVideo's Find Moments API scans the full call and returns up to 5 timestamped moments that match your specific objection search query Returns relevance scores per moment** — Each matching moment comes with a relevance score out of 100 so you know which instances are the strongest matches Generates a coaching note per moment** — GPT-4o-mini writes a structured 5-section analysis for each moment including what happened, how the rep likely handled it, and specific coaching advice Writes a first-person suggested reframe** — Every coaching note includes an exact alternative response the rep can use next time the same objection comes up — in first person, ready to say out loud Categorizes each objection automatically** — GPT assigns every moment to one of eight objection categories: Pricing, Competitor, Timing, Feature Gap, Trust, Authority, Need, or Other Creates one Airtable record per moment** — Each of the up to 5 moments becomes its own record with all 16 fields and Status set to Needs Review for the manager to review Polls automatically until results are ready** — Waits 90 seconds then checks every 30 seconds until WayinVideo finishes scanning the recording Setup Requirements Tools Needed n8n instance (self-hosted or cloud) WayinVideo account with API access OpenAI account with GPT-4o-mini API access Airtable account with a base and table set up Credentials Required WayinVideo API key (pasted into 2. WayinVideo — Submit Find Moments and 4. WayinVideo — Get Moments Results) OpenAI API key Airtable Personal Access Token (pasted into 11. HTTP — Save to Airtable) > ⚠️ WayinVideo API key appears in 2 steps — replace YOUR_WAYINVIDEO_API_KEY in both 2. WayinVideo — Submit Find Moments and 4. WayinVideo — Get Moments Results. Missing either one will cause the workflow to fail. Estimated Setup Time: 20–25 minutes Step-by-Step Setup Import the workflow — Open n8n → Workflows → Import from JSON → paste the workflow JSON → click Import Get your WayinVideo API key — Log in to your WayinVideo account → go to Account Settings → copy your API key Add your WayinVideo API key to node 2 — Open node 2. WayinVideo — Submit Find Moments → find the Authorization header value Bearer YOUR_WAYINVIDEO_API_KEY → replace YOUR_WAYINVIDEO_API_KEY with your actual key Add your WayinVideo API key to node 4 — Open node 4. WayinVideo — Get Moments Results → find the same Authorization header → replace YOUR_WAYINVIDEO_API_KEY with the same key Connect OpenAI — Open node 9. OpenAI — GPT-4o-mini Model → click the credential dropdown → add your OpenAI API key → test the connection Create your Airtable table — In Airtable, open your base → create a table named Sales Objections → add these 16 fields: Call Date, Rep Name, Contact Name, Company, Call Purpose, Objection Type, Objection Category, Moment Title, Objection Description, Timestamp in Recording, Relevance Score (Number), Rep Response Assessment, Coaching Note, Suggested Reframe, Recording URL, Status Get your Airtable Base ID — Open your Airtable base in a browser → the Base ID is in the URL — it starts with app and looks like appXXXXXXXXXXXXX Get your Airtable Personal Access Token — Go to airtable.com/create/tokens → click Create new token → give it a name → add scope data.records:write → add your base under Access → click Create token → copy the token Add your Airtable credentials to node 11 — Open node 11. HTTP — Save to Airtable → in the URL, replace YOUR_AIRTABLE_BASE_ID with your actual Base ID and YOUR_AIRTABLE_TABLE_NAME with Sales%20Objections (URL-encoded with %20 for the space) → in the Authorization header, replace YOUR_AIRTABLE_API_KEY with your Personal Access Token Activate the workflow — Toggle the workflow to Active → copy the Form URL from node 1. Form — Call Recording + Details → open it in a browser to submit your first call How It Works (Step by Step) Step 1 — Form: Call Recording + Details You open the form URL in a browser and fill in seven fields: the call recording URL, the sales rep name, the contact name, the company name, the call purpose (e.g. Discovery Call, Demo, Pricing Call), the call date, and the objection type you want to search for (e.g. "pricing too expensive", "competitor comparison", "missing feature"). The objection search query is the most important field — the more specific and descriptive it is, the better WayinVideo's results will be. Step 2 — HTTP: WayinVideo — Submit Find Moments The recording URL and your search query are sent to WayinVideo's Find Moments API. The request asks for up to 5 matching moments with export disabled (since you only need the metadata, not video downloads). A project name is auto-generated from the contact name and company. WayinVideo accepts the job and returns a task ID. Step 3 — Wait: 90 Seconds The workflow pauses for 90 seconds before the first status check, giving WayinVideo time to scan the full recording. Step 4 — HTTP: WayinVideo — Get Moments Results A GET request checks the WayinVideo find-moments results endpoint using the task ID from step 2. It returns the current processing status and, once complete, the full clips array with title, description, timestamp, relevance score, and tags for each matched moment. Step 5 — IF: Find Moments Complete? This is the polling gate. If the status equals SUCCEEDED (YES path), the moments are ready and the workflow moves forward to clip extraction. If still processing (NO path), the workflow routes to 6. Wait — 30 Seconds Retry which pauses 30 seconds then loops back to step 4 to check again. This repeats until SUCCEEDED. Step 6 — Wait: 30 Seconds Retry When results are not yet ready, the workflow waits 30 seconds then returns to step 4 for another check. The loop continues automatically. Step 7 — Code: Extract Objection Clips The clips array from WayinVideo is read and split into individual rows — one per matching moment. If no clips are returned, the step throws a clear error with a suggestion to try a different query. For each clip, the millisecond timestamps are converted to MM:SS format. All seven form inputs are carried forward alongside each clip's data so every Airtable record has full context. Step 8 — AI Agent: Generate Coaching Note GPT-4o-mini receives the call context and the specific moment's metadata: its title, description, timestamp range, relevance score, and tags. It writes a structured 5-section coaching analysis. The prompt instructs GPT to base everything on the moment description provided — not to invent content. The output uses five labeled sections: OBJECTION_CATEGORY, WHAT_HAPPENED, REP_RESPONSE_ASSESSMENT, COACHING_NOTE, and SUGGESTED_REFRAME. Step 9 — OpenAI: GPT-4o-mini Model This is the language model powering the coaching analysis. It runs with default settings for consistent structured output. Step 10 — Code: Parse Coaching Output All five labeled sections are extracted from the AI output using regex. The objection description field combines GPT's "what happened" analysis with WayinVideo's original clip description for maximum context. All 16 Airtable field values are assembled and packaged ready for the API call. Step 11 — HTTP: Save to Airtable A POST request creates one Airtable record in your Sales Objections table with all 16 fields populated. Status is set to Needs Review on every record so managers can filter the table to see only records awaiting their attention. Airtable returns the new record ID on success. The final result is up to 5 Airtable records — one per objection moment found — each containing the full coaching analysis, timestamp, relevance score, and a first-person suggested reframe ready for the rep to practice. Key Features ✅ Find Moments API — no transcription needed — This workflow uses WayinVideo's semantic search to find moments directly, which is faster than transcribing and then searching through text ✅ Relevance score per moment — Every match comes with a score out of 100 so you can instantly see which moments are the strongest matches for your search query ✅ Eight objection categories — auto-assigned — GPT categorizes each objection into Pricing, Competitor, Timing, Feature Gap, Trust, Authority, Need, or Other — making your Airtable filterable by category across all calls ✅ First-person suggested reframe — The coaching note ends with an exact alternative response the rep can rehearse — not generic advice, but specific language ready to use ✅ One Airtable record per moment — Each moment gets its own record so managers can review, comment on, and track each objection instance independently ✅ Status set to Needs Review automatically — Every new record starts in a review queue — managers see exactly what requires their attention without any manual tagging ✅ Timestamped moments linked to recording URL — Every record includes both the timestamp range and the full recording URL so the manager can jump straight to that moment in the call Customisation Options Increase the number of moments returned — In node 2. WayinVideo — Submit Find Moments, change "limit": 5 to a higher number such as 10 to find more matching moments per call — useful for longer recordings or broader search queries. Add a Slack notification to the sales manager — After node 11. HTTP — Save to Airtable, add a Slack step that posts the rep name, objection category, and a direct Airtable link to a #sales-coaching channel so managers are notified immediately without checking Airtable. Add a retry limit to stop infinite polling — Before node 6. Wait — 30 Seconds Retry, add a Set step that increments a poll counter, then add a second IF check to stop after 15 polls and send a Gmail error notification instead of looping indefinitely. Search for multiple objection types in one run — In node 1. Form — Call Recording + Details, allow comma-separated queries in the Objection Type field, then add a code step after the form that splits them and runs the Find Moments submission once per query type. Auto-assign Airtable records to a specific reviewer — In node 11. HTTP — Save to Airtable, add an "Assigned To" field to the JSON body using the Sales Rep Name to route each rep's records to their specific manager — requires an Airtable Collaborator field type. Troubleshooting WayinVideo returning an error on submission: Confirm YOUR_WAYINVIDEO_API_KEY in node 2. WayinVideo — Submit Find Moments is replaced with your actual API key — not the placeholder Confirm the same replacement was made in node 4. WayinVideo — Get Moments Results — both steps require the key Check the execution log of node 2 for the raw error — a 401 means wrong key, a 422 means the URL format or query format is invalid No moments found (empty clips array): The objection search query may be too short or too vague — WayinVideo's Find Moments needs descriptive phrases; try "prospect says price is too high" instead of just "price" The recording may have low audio quality or heavy background noise — WayinVideo needs clear spoken audio to find moments Check that the recording URL is publicly accessible without login — password-protected Zoom links will not be processed Workflow stuck in the polling loop: Check that the recording URL is valid and accessible — expired Zoom links or private recordings will cause WayinVideo to fail silently Open the execution log of node 4. WayinVideo — Get Moments Results and inspect the raw response — WayinVideo may have returned FAILED with a specific error message If the loop runs indefinitely, deactivate the workflow, fix the URL or query, and resubmit Airtable records not being created: Confirm YOUR_AIRTABLE_BASE_ID in the URL of node 11. HTTP — Save to Airtable is replaced with your actual Base ID starting with app Confirm YOUR_AIRTABLE_TABLE_NAME is replaced — if your table name has a space, encode it as %20 in the URL (e.g. Sales%20Objections) Confirm YOUR_AIRTABLE_API_KEY in the Authorization header is replaced with a valid Personal Access Token with data.records:write scope enabled for your base Check the execution log of node 11 for the Airtable API error — a 403 means wrong token or missing scope, a 422 means a field name in the JSON body does not match your actual Airtable column name GPT not generating coaching sections: Confirm the API key is connected in node 9. OpenAI — GPT-4o-mini Model and your account has available credits Check the execution log of node 8. AI Agent — Generate Coaching Note for the raw GPT output — if any labeled sections are missing, the regex in node 10 will return empty strings for those fields If the clip description from WayinVideo is very short (under 10 words), GPT may produce a minimal analysis — this is expected behavior for low-relevance-score matches Support Need help setting this up or want a custom version built for your team or agency? 📧 Email: info@incrementors.com 🌐 Website: https://www.incrementors.com/
by Mychel Garzon
Your automated multilingual support assistant that translates, generates AI responses, and translates back to the customer's language with comprehensive error handling. Stop manually copy-pasting customer messages into Google Translate and crafting responses in multiple languages. This workflow orchestrates the entire multilingual support pipeline: captures requests via form, auto-detects and translates to English, generates professional AI responses, and translates back to the customer's native language automatically. You handle the business; it handles the languages. This is not a generic "translation" template. It is a functional bidirectional communication pipeline designed to maintain conversation quality across 29 languages with production-grade error recovery. How the workflow works The workflow executes in five strategic stages: Form Capture & Validation: Customer submits request via n8n form (email, question, language dropdown with 29 options). Validates email format, message length (5+ chars), and extracts ISO language code. Native DeepL Translation (Customer → English): Auto-detects source language and translates customer message to English using n8n's native DeepL node for clean AI input. AI Response Generation: GPT-3.5-turbo generates professional, empathetic support response in English (2-3 paragraphs, actionable next steps, no unverified promises). Native DeepL Back-Translation (English → Customer): Translates AI response back to customer's original language, preserving technical accuracy with natural phrasing. Gmail Delivery & Error Handling: Success: Beautiful HTML email sent to customer with translated response, English version (collapsible), and metadata Failures: Professional error emails sent for validation (HTTP 400), translation failures (HTTP 502 + retry 60s), AI failures (HTTP 502 + retry 30s), or back-translation failures (English version sent as fallback) Benefits Bidirectional Translation Flow**: Unlike generic translation templates that only translate TO English, this workflow translates both directions (Customer → English → Customer), ensuring responses are delivered in the customer's native language. Native DeepL Integration**: Uses n8n's built-in DeepL node instead of complex HTTP API configurations. Setup time: 3 minutes vs 15 minutes for HTTP-based approaches. Production-Grade Error Handling**: Four error checkpoints with specific HTTP status codes (400 for validation, 502 for API failures) and actionable error messages. Includes English fallback when back-translation fails so you never lose a generated response. Form-Based Input (No Webhook Config)**: Beautiful embedded n8n form with language dropdown eliminates the need for complex webhook integrations or API documentation for end users. Beautiful HTML Email Delivery**: Modern, mobile-responsive email templates with gradient headers, collapsible sections, and clear CTAs. Five different templates for success and error states. Cost Efficiency**: ~$0.001 per request (DeepL + OpenAI combined) vs $50-150/month per multilingual support agent. ROI: 25x in Year 1 for teams handling 100+ multilingual requests/month. Target Audience E-commerce Businesses** serving international customers across the EU, LATAM, or APAC regions needing support in local languages. SaaS Companies** with global user bases where language barriers create support bottlenecks and increase ticket resolution time. Customer Success Teams** at startups expanding internationally without budget for multilingual support staff. Agencies & MSPs** managing client support across multiple languages and needing to scale without hiring language specialists. Required APIs DeepL API** for bidirectional translation (free tier: 500k chars/month covers ~3,300 requests) OpenAI API** for GPT-3.5-turbo response generation (~$0.001 per response) Gmail OAuth2** for sending beautiful HTML email responses to customers n8n Form Trigger** requires public n8n instance (Cloud or self-hosted) to generate embeddable form URL Easy Customization Adjust Language Support**: Edit the language dropdown in the Form Trigger node to add/remove languages based on your customer base (currently 29 languages supported). Notification Channels**: Add Slack, Discord, or Microsoft Teams nodes after Gmail nodes to notify your support team when responses are sent or errors occur. Custom Email Templates**: Modify the HTML in Gmail nodes to match your brand colors, fonts, and messaging style. AI Model Upgrade**: Swap GPT-3.5-turbo for GPT-4o in the OpenAI node for 2x better response quality at ~$0.02/request (ideal for high-value customers or complex support queries). Output Logging**: Add Google Sheets, Airtable, or PostgreSQL nodes after Gmail nodes to log all translations for quality auditing, CSAT tracking, or training data collection. Custom Prompt Engineering**: Modify the OpenAI system prompt to include company-specific tone, product knowledge, or escalation criteria (e.g., detect refund requests and flag for human review).
by Rahul Joshi
Quick overview This workflow collects patient symptoms via an n8n Form, uses OpenAI (GPT-4o Mini) to draft a SOAP note, and sends it to a doctor for email approval in Gmail. Approved notes are saved to Google Sheets and notifications go out via Gmail and Telegram, with Slack alerts on errors. How it works Receives a patient submission from an n8n Form with demographic details, symptoms, and contact info. Sends the intake details to OpenAI (GPT-4o Mini) to generate a structured SOAP note draft and alerts a Slack channel if the AI generation fails. Packages the patient details and SOAP draft (including a review token) and emails the draft to the assigned doctor via Gmail using a send-and-wait approval action. Routes the workflow based on the doctor’s email decision (approve vs. request edit). If approved, appends the patient data and SOAP note to Google Sheets, emails a confirmation to the patient via Gmail, and sends Telegram notifications to both the patient and doctor. If an edit is requested, emails the original draft back to the doctor via Gmail and sends a Telegram message confirming the edit request. If any other node fails, triggers a global error handler that posts execution details to Slack. Setup Add credentials for OpenAI API, Gmail OAuth2, Google Sheets OAuth2, Telegram Bot, and Slack OAuth2. Share the n8n Form URL from the trigger with patients and ensure the form fields match your intake requirements. Update the assigned doctor email address and doctor Telegram chat ID used for routing notifications. Select or create the target Google Sheets spreadsheet and worksheet, and ensure the columns used in the append step exist. Choose the Slack channel for error alerts and confirm it is accessible to your Slack OAuth connection.
by WeblineIndia
Real Estate News RSS to AI Deal Analyzer This workflow acts as a 24/7 digital real estate scout. It automatically monitors multiple RSS news feeds, filters out stories you have already seen, uses Groq-powered AI to score the investment potential of new articles and saves high-value opportunities to a Google Sheet while alerting you via Gmail. Quick Start Guide Import**: Upload the JSON file into your n8n canvas. Authenticate**: Connect your Google Sheets, Groq and Gmail credentials. Configure Sheet: Ensure your Google Sheet has a header named **Link in the first tab. Set Recipient: Open the **Send Deal Alert Email node and enter your email address in the "To" field. Run: Click **Start Workflow to begin fetching and analyzing today's news. What It Does The workflow begins by retrieving a list of previously "seen" articles from your Google Sheet to prevent duplicate work. It then visits a list of RSS news sources (defined in a JavaScript node) to find the latest real estate headlines. Using a specialized filtering script, it compares the new headlines against your existing list, ensuring that only fresh, unread news moves forward. Once new articles are identified, the workflow uses the Groq LLM Engine to perform a deep "Deal Opportunity" analysis. The AI reads the news snippet, assigns a score from 1 to 10 based on investment potential and provides a concise reason for that score. This turns a simple headline into a structured data point. In the final stage, the workflow applies a quality filter. If the AI determines a deal is high-potential (Score ≥ 8), the workflow saves the title, link and AI reasoning to your Google Sheet. Simultaneously, it fires off a Gmail notification to your inbox so you can act on the lead before the rest of the market. Who’s It For Real Estate Investors** looking for early signals on price drops or new project launches. Property Brokers** who need to stay informed about local market shifts without reading hundreds of articles manually. Investment Analysts** who want a structured database of market news and AI-generated sentiment scores. Operations Teams** looking to automate market research and lead generation. Requirements to use this workflow n8n Instance**: (Self-hosted or Cloud). Google Account**: To access Google Sheets and send Gmail alerts. Groq API Key**: To power the AI analysis (supports high-speed LLM processing). Target RSS Feeds**: URLs of news sites or Google News RSS queries. How It Works & Set Up 1. Preconditions & Spreadsheet Setup Before running the workflow, create a Google Spreadsheet. In the first sheet (tab), you must create a header named Link. You may also add headers for Title, PubDate and Reason to keep your data organized. The workflow uses the "Link" column to remember which articles it has already processed. 2. Configure RSS Sources Open the RSS Sources node. You will see a small snippet of JavaScript code. You can change the URLs here to target your specific location or niche (e.g., changing "Ahmedabad" to "New York" or "Commercial Real Estate"). 3. Setup AI & Throttle The workflow includes a Throttle API Calls node. This is set to 3 seconds by default. This ensures you do not hit "Rate Limits" on your Groq account if the RSS feed returns dozens of articles at once. 4. Logic & Filtering Fetch Existing Deals**: Pulls your "already seen" list from Google Sheets. Filter New Articles**: A JavaScript node that checks if the current RSS link exists in your sheet. Analyze Deal Opportunity**: The core AI prompt that tells the LLM to act as a Real Estate Analyst. How To Customize Nodes Change the Score Threshold**: Open the Filter High Opportunity node. You can change the value from 8 to a lower number (like 5) if you want to see more frequent, moderate-potential leads. Modify AI Persona**: Edit the Analyze Deal Opportunity node to ask the AI to look for specific things, like "Commercial warehouse space" or "Foreclosure notices." Update Email Content**: The Send Deal Alert Email node can be customized with your own branding or specific subject lines. Add‑ons Multi-Recipient Support**: You can add a Set node before the Gmail step to manage a list of emails if you need to alert a whole team. Automated Scheduling**: Replace the Manual Trigger with a Schedule Trigger to run this every morning at 8:00 AM automatically. SMS Alerts**: Add a Twilio or WhatsApp node after the high-score filter to get instant text notifications for the best deals. Use Case Examples Market Sentiment Tracking**: Scoring news daily to see if a specific city is trending toward a "Buyer's Market." New Launch Monitoring**: Automatically capturing every new residential project announced in a specific region. Price Drop Alerts**: Using specific Google News RSS queries to find distressed property sales. Competitor Research**: Monitoring news related to specific developers or real estate firms. Historical Archiving**: Building a long-term database of real estate news and AI analysis for future trend reporting. Troubleshooting Guide | Issue | Possible Cause | Solution | | :--- | :--- | :--- | | Workflow skips all news | Deduplication logic is too strict | Check if your Google Sheet "Link" column is filled with old data; clear it to reset the filter. | | AI returns "No Response" | Groq model naming or API key | Ensure your Groq model is set to a valid ID (e.g., llama3-8b-8192) and your key is active. | | Google Sheets Error | Missing Column Headers | Ensure your spreadsheet has a header named exactly "Link" (case sensitive). | | Gmail fails to send | OAuth Scopes | Re-connect your Google account in n8n and ensure the "Gmail API" is enabled in your Google Cloud Console. | Need Help? Setting up AI-driven market monitors can be a competitive advantage, but the technical setup needs to be perfect. If you need help fine-tuning the AI prompts, adding custom RSS sources or connecting this to your existing CRM, our experts at WeblineIndia are here to assist. Contact WeblineIndia today to build your custom business automation or to refine this workflow for your specific market!
by Rahul Joshi
Quick Overview This workflow watches a Google Drive folder for new lab-report PDFs, extracts their text, uses OpenAI (gpt-4o-mini) to structure and simplify results, translates the summary into the patient’s preferred language, and emails a Markdown report via Gmail, with error notifications sent to Slack. How it works Triggers every minute when a new PDF is created in a specific Google Drive folder. Downloads the PDF from Google Drive and extracts the raw text content. Sends the extracted text to OpenAI (gpt-4o-mini) to extract structured patient/report fields, detect the report language, and capture raw findings. Cleans and parses the OpenAI JSON response to reliably carry forward patient details, report metadata, and findings. Uses OpenAI (gpt-4o-mini) to rewrite the raw findings into a warm, jargon-free plain-English Markdown summary with a “What to do next” section. Uses OpenAI (gpt-4o-mini) to translate the Markdown summary into the patient’s preferred language while preserving formatting. Builds a final Markdown report, converts it into a .md attachment, and sends it to the patient via Gmail. Posts error details to a Slack channel if extraction, simplification, or translation fails. Setup Connect Google Drive OAuth2 credentials and set the folder ID in the Google Drive trigger to the lab-reports folder you want to monitor. Add an OpenAI API key credential (the workflow uses the gpt-4o-mini model for extraction, summarization, and translation). Connect Gmail OAuth2 credentials and ensure the recipient expression resolves to a real patient email (the workflow uses {{$json.patient_email}}). Connect Slack OAuth2 credentials and replace YOUR_SLACK_CHANNEL_ID with the channel where error alerts should be posted. Upload a sample PDF to the watched Google Drive folder and verify you receive the email with the Markdown attachment and any errors appear in Slack.
by AI Solutions
Who is this for This template is built for consultants, agencies, and service businesses that quote custom engagements and want to eliminate the manual work of building, formatting, and delivering pricing proposals. If you have a SharePoint or OneDrive pricing sheet, a self-hosted Gotenberg instance, and a Gmail account, you can have personalized PDF proposals landing in prospect inboxes in under 30 minutes of setup. What it does The workflow accepts a form submission from your website or internal tools, looks up live pricing from your Excel pricing sheet, calculates the correct totals for the selected services and discount tier, renders a branded PDF proposal, and emails it to the requestor — all without any manual steps. How it works A Webhook Trigger receives a POST request from your web form containing the prospect's details, the services they're interested in, the applicable discount level, and the requestor's contact information. Fetch Pricing Sheet calls the Microsoft Graph API to pull all rows from your pricing_request.xlsx Excel table stored in OneDrive or SharePoint — so your proposals always reflect current, live pricing without any hardcoding. Process & Price is a Code node that filters the pricing rows down to only the selected services, applies the correct price tier (Discount, Retail, or Premium), and calculates line items and a grand total. It normalizes raw Excel data into clean proposal objects ready for rendering. Build HTML renders the processed data into a fully branded, print-optimized HTML document. The layout includes a cover page with prospect and firm details, a line-item pricing table, payment terms, and a signature block. All brand variables — logo URL, firm name, colors, and footer content — are defined as named constants at the top of the Code node for easy one-time customization. Convert to PDF sends the finished HTML to your self-hosted Gotenberg instance, which returns a print-ready, US Letter PDF using your CSS page layout — no third-party PDF service or API key required. Email Proposal delivers the PDF as an attachment via Gmail OAuth2 to the requestor. Internal recipients (e.g., a sales inbox) can be added as a CC with a single constant. How to set up In Webhook Trigger, copy the production webhook URL and wire it to your web form's POST action. In Fetch Pricing Sheet, update the SharePoint hostname, site path, drive, and file path to point to your pricing_request.xlsx. In Process & Price, confirm that your Excel column names match the field references in the Code node (service name, retail price, discount price, premium price). In Build HTML, update the brand constants at the top of the Code node: FIRM_NAME, LOGO_URL, ACCENT_COLOR, FOOTER_TEXT, and TERMS_TEXT. In Convert to PDF, update the Gotenberg base URL to your self-hosted instance. In Email Proposal, select your Gmail OAuth2 credential and update the INTERNAL_CC constant if desired. Requirements Microsoft 365 account with OneDrive or SharePoint access (for the pricing Excel file) Self-hosted Gotenberg instance (for HTML-to-PDF conversion) Gmail account with OAuth2 configured in n8n A web form or API client capable of POSTing JSON to a webhook URL Self-hosted n8n** — this workflow uses direct Microsoft Graph API calls and Gotenberg, which require a self-hosted instance for full compatibility How to customize the workflow Pricing tiers* — Add or rename price columns in your Excel sheet and update the tier-selection logic in *Process & Price** to match. Proposal layout* — All styling, fonts, colors, and section order are controlled inside *Build HTML**. The HTML uses @page CSS rules and table-based layout for reliable PDF rendering across Gotenberg versions. Discount logic* — Modify the discount calculation in *Process & Price** to support percentage-based discounts, volume thresholds, or client-specific pricing rules. Email delivery** — Swap the Gmail node for Outlook, SendGrid, or any SMTP-compatible service supported by n8n. Map the pdfBuffer binary attachment and the rest of the workflow requires no changes. CRM routing** — Add a lookup step after the webhook to pull prospect details from HubSpot, Salesforce, or a SharePoint contact list and merge them into the proposal data before pricing. Approval gate* — Insert a *Wait* node and an internal Slack or email notification between *Convert to PDF* and *Email Proposal** to require internal sign-off before delivery. Visit automatedintelligentsolutions.com for more information, support, and workflows.
by WeblineIndia
Weekly Client Report Generator This workflow automatically generates weekly portfolio reports for clients using their investment data from Google Sheets. It calculates profit, growth and other key metrics, formats a professional report, sends it via Gmail and updates the client’s status in the sheet. Quick Steps to Start: Prepare your Google Sheet with columns: Client, Email, Invested, Current Value, Status. Connect your Google Sheets and Gmail accounts in n8n. Start the workflow manually. The workflow fetches client data, calculates metrics, generates the AI report, formats it in HTML, sends emails and updates the sheet automatically. What It Does The Weekly Client Report Generator streamlines weekly client communications for investment portfolios. Using client data from Google Sheets, it calculates total investment, profit and growth for each client. The workflow uses AI to generate a concise, professional report including a summary, key highlights, risk analysis and future outlook. Reports are automatically formatted in HTML for easy readability and emailed via Gmail. The Google Sheet is updated to mark each client’s report as “Sent,” providing a clear tracking system. A wait node is included to ensure smooth processing and act as a safeguard against Gmail sending limits. By automating these steps, the workflow saves time, reduces manual errors and ensures consistent, high-quality client reporting. Who It's For Financial advisors and portfolio managers who send weekly client reports. Small businesses managing multiple clients and investments. Anyone needing automated, personalized reporting using Google Sheets, AI and email. Requirements to Use This Workflow An active n8n account. Google Sheets account with a prepared client sheet. Gmail account for sending reports. Groq AI or other AI integration configured in n8n for report generation. How It Works & Setup Guide Step 1 – Prepare Google Sheet Columns needed: Client, Email, Invested, Current Value, Status. Step 2 – Connect Accounts Add credentials in n8n for Google Sheets and Gmail. Step 3 – Start Workflow Trigger the workflow manually using the Start workflow node. Step 4 – Fetch and Process Client Data Data is pulled from Google Sheets. Clients are processed in batches to ensure accurate calculations. Step 5 – Calculate Metrics & Generate Report The workflow computes profit and growth for each client. AI generates a simple, professional report summarizing performance, key highlights, risks and future outlook. Step 6 – Format Report The report is converted into HTML for better readability in emails. Step 7 – Send Email & Update Sheet The wait node (Pause Before Sending Emai`) acts as a safeguard to manage sending limits. Gmail node sends the report. Google Sheets is updated to mark the report as “Sent.” How To Customize Nodes Google Sheets Node:** Update the document ID and sheet name if your client sheet changes. AI Report Node:** Modify the prompt to adjust report style, length or additional sections. Email Node:** Change subject, sender or template to fit your branding. Wait Node:** Adjust wait duration to manage email rate limits. Add-ons (Optional Enhancements) Add Slack or Teams notifications when a report is sent. Include charts or graphs generated from client data. Track client engagement by logging email opens. Integrate with other CRM tools for enriched client data. Use Case Examples Weekly investment portfolio updates for individual clients. Automated reporting for financial advisory firms managing multiple clients. Sending performance summaries for mutual funds or stock portfolios. Tracking report delivery status for compliance and audit purposes. Any scenario requiring batch email reporting based on spreadsheet data. There can be more custom use cases depending on your business needs. Troubleshooting Guide Issue: Workflow doesn’t start Possible Cause: Manual trigger not executed Solution: Click the Start workflow node to trigger the workflow Issue: Emails not sent Possible Cause: Gmail credentials not connected or sending limits exceeded Solution: Reconnect Gmail account and increase wait time in the wait node Issue: Reports show incorrect data Possible Cause: Google Sheet columns mismatch Solution: Ensure the sheet has correct column names: Client, Email, Invested, Current Value, Status Issue: AI report not generated Possible Cause: AI credentials missing or API issues Solution: Verify Groq AI credentials and check API quota Issue: Workflow stops unexpectedly Possible Cause: Node errors or incorrect batch configuration Solution: Check execution logs and ensure batch size is properly configured Need Help? If you need assistance setting up, customizing or extending this workflow, our n8n workflow developers at WeblineIndia can help you: Configure AI nodes for your reporting style. Integrate additional add-ons like charts, Slack notifications or CRM systems. Build similar automated workflows tailored to your business needs. Contact WeblineIndia for expert support and workflow customization.
by Ian Kerins
Overview This n8n template automates finding real estate agents in any city using Google Maps. It deep-scrapes listings via ScrapeOps Proxy, deduplicates results against Google Sheets, saves fresh leads, and sends alerts via Gmail and Slack — all triggered from a simple web form. Who is this for? Real estate marketing agencies building targeted agent lead lists PropTech companies prospecting realtors in new cities or regions Sales teams running outreach campaigns targeting real estate agencies Anyone who needs structured local real estate agent data from Google Maps What problem does it solve? Manually searching Google Maps for real estate agents, copying contact details, and checking for duplicates is slow and inconsistent. This workflow automates the entire process — from search to deduplication to saved leads — so you get fresh, structured agent data with zero manual effort. How it works A web form captures the target city. ScrapeOps Proxy scrapes Google Maps for real estate agents in that city. Each listing is deep-scraped for full details: phone, website, rating, reviews, and address. Results are compared against existing Google Sheet entries to remove duplicates. Only new leads are saved to the sheet. Gmail and Slack alerts notify you of new leads instantly. Set up steps (~10–15 minutes) Register for a free ScrapeOps API key: https://scrapeops.io/app/register/n8n Add ScrapeOps credentials in n8n. Docs: https://scrapeops.io/docs/n8n/overview/ Duplicate the Google Sheet template and connect it to the Read Previous Entries and Save New Leads nodes. Configure Gmail credentials in the Send Gmail Alert node and set your recipient. Configure Slack credentials in the Send Slack Alert node and set your channel. Open the form URL, enter a city, and run. Pre-conditions Active ScrapeOps account (free tier available): https://scrapeops.io/app/register/n8n ScrapeOps community node installed in n8n: https://scrapeops.io/docs/n8n/overview/ Google Sheets credentials configured in n8n Duplicated Google Sheet template with correct column headers Gmail credentials for alert emails Slack credentials for channel notifications Disclaimer This template uses ScrapeOps as a community node. You are responsible for complying with Google's Terms of Use, robots.txt directives, and applicable laws in your jurisdiction. Scraping targets may change at any time; adjust render, scroll, and wait settings and parsers as needed. Use responsibly and only for legitimate business purposes.
by Łukasz
Overdue Invoice Payment Reminder Workflow Documentation What Is This? This workflow is an automated invoice payment tracking and reminder system for the Polish accounting service iFirma.pl. It monitors unpaid and overdue invoices, then automatically sends escalating reminders to contractors based on configurable time thresholds. The system handles three escalation levels: payment reminders before/at due date, pre-trial summons, and formal legal action notices. Who Is It For? Designed for Polish businesses, accounting departments, and financial controllers using iFirma.pl for invoice management. This workflow is essential for companies struggling with late payments and cash flow management, particularly those needing to enforce payment terms professionally and systematically. B2B service providers, consultancies, software development agencies, and any business issuing invoices to other companies will benefit from automated payment enforcement. The workflow eliminates manual tracking of payment deadlines and ensures consistent, professional follow-up with delinquent clients. Whether managing a handful of high-value invoices or processing hundreds of transactions monthly, this automation delivers timely notifications without manual calendar monitoring or spreadsheet management. How Does It Work? This end-to-end invoice monitoring automation consists of four main stages: 1. Configuration & Authentication Sets up user credentials (email/login, API key), defines escalation timeframes (X days before due date, Y days after, Z days after), and prepares company details for legal correspondence. The workflow then constructs a cryptographic authentication signature using HMAC-SHA1 algorithm, which iFirma requires for API access. 2. Invoice Retrieval & Filtering Connects to iFirma API to fetch all unpaid, partially paid, and overdue invoices, then filters them based on payment deadline dates. Only invoices that are either overdue or approaching their due date (within X days) proceed to the next stage. 3. Contractor Data Enrichment For each qualifying invoice, the workflow fetches complete contractor information from iFirma (since invoice records contain only partial contractor data). This includes email addresses, company names, and addresses needed for sending reminders. The workflow deduplicates contractors to avoid redundant API calls. 4. Escalation Logic & Notification Dispatch Invoices are categorized into three groups based on how overdue they are: Payment Reminder**: Due today or X days before due date → Sends reminder via iFirma's built-in notification system Pre-Trial Summons**: Y days after due date → Sends formal legal warning via email and optionally physical mail (PostGrid) Legal Action Notice**: Z days after due date → Sends notice of commenced legal proceedings via email and optionally physical mail Each action triggers a Slack notification to keep your team informed. How To Set It Up? Prerequisites: An active N8N account or self-hosted instance An iFirma.pl account with API access enabled A Slack workspace with appropriate bot permissions (Optional) PostGrid account for physical mail delivery (Optional) Gmail account configured for sending emails Required Configuration: In the "Configuration" node, set the following parameters: Email/Login: Your iFirma.pl account email or login username API Key Invoice: API key from iFirma.pl (found at: Start > Data and Configuration > Extensions and Integrations > API) X days before due date: How many days before payment deadline to send the first reminder (default: 7) Y days after due date: When to send pre-trial summons (default: 7 days overdue) Z days after due date: When to send legal action notice (default: 14 days overdue) Your Company Details Configuration: In the "Your Company Details" node, provide: Company Name, Email, Phone Full address (Street, City, Postal Code, Country Code) Bank details (Bank Name, Account Number, SWIFT Code) Tax Identification Number (TIN/NIP) This information is used for professional letterheads in legal correspondence and PostGrid physical mail delivery. Credentials Setup: Configure Slack OAuth2 credentials for notifications Set up Gmail OAuth2 credentials for email sending (if using email route) Configure PostGrid API credentials for physical letter delivery (if using mail route) Scheduling: The workflow runs automatically every 24 hours via the Schedule Trigger node. For testing, execute manually using the "Execute workflow" button. What's More? Custom Authentication Implementation: iFirma.pl requires HMAC-SHA1 authentication, which N8N doesn't provide natively. The workflow includes a complete JavaScript implementation of the SHA-1 cryptographic hash function and HMAC (Hash-based Message Authentication Code) algorithm. This ensures secure API access without external dependencies. Endpoint Mapping Intelligence: The workflow automatically maps invoice types (Rodzaj) to the correct iFirma API endpoints. Different invoice types (domestic, foreign, construction, advance payments, etc.) require different API paths for sending reminders. Professional HTML Templates: Pre-trial summons and legal action notices use professionally formatted HTML templates with proper legal language, payment details, deadlines, and consequences clearly outlined. These templates maintain consistent branding and meet legal communication standards. Multi-Channel Notification: Reminders can be sent via multiple channels simultaneously: iFirma's e-invoice system, email, physical mail (PostGrid), and internal Slack notifications for team awareness. Understanding the HMAC-SHA1 Authentication The "Encode API Key" nodes implement a critical security function that N8N cannot perform natively. Here's what happens and why: What the iFirma API Requires: iFirma.pl uses HMAC-SHA1 for request authentication. Each API request must include an Authentication header formatted as: IAPIS user={userLogin}, hmac-sha1={hash} The hash is calculated from: URL + userLogin + keyName + requestBody Why Custom Implementation is Needed: N8N's crypto functions don't include SHA-1 (it's considered outdated for modern security, though still required by some legacy APIs). Therefore, the workflow implements the entire SHA-1 and HMAC algorithms in pure JavaScript. How the Algorithm Works: Message Construction: Combines the API endpoint URL, user login, key name ("faktura"), and request body (if any) into a single string Hex Key Conversion: The API key from iFirma is provided in hexadecimal format and must be converted to raw bytes HMAC Process: Creates inner and outer padding arrays using XOR operations with specific constants (0x36 and 0x5C) Hashes the inner padded message using SHA-1 Hashes the outer padding combined with the inner hash result SHA-1 Implementation: Uses bitwise operations, rotating functions, and four rounds of 20 operations each to produce a 160-bit hash Header Generation: Formats the final hash as a hex string and constructs the authentication header Why Each Step Matters: Deterministic Hashing**: The same input always produces the same hash, allowing iFirma to verify request authenticity Binary Key Conversion**: The hex-to-bytes conversion ensures the secret key is interpreted correctly HMAC Security**: Using both inner and outer hashing with different padding prevents length extension attacks Message Integrity**: Including the URL and request body in the hash ensures the request hasn't been tampered with Thank You, Perfect! Visit my profile for other free business automations. And if you're looking for dedicated software development or custom n8n workflow solutions, don't hesitate to reach out at developers@sailingbyte.com or on sailingbyte.com!
by vvrr22042026
Publish Subscribe Example - Webhook to RabbitMQ, RabbitMQ to GMAIL How it works This workflow demonstrates a resilient publish/subscribe automation pattern using n8n, RabbitMQ, JSON Schema validation, and Gmail. It contains two flows in the same workflow: A publisher flow receives client onboarding JSON through a webhook. The payload is validated against a JSON Schema. If valid, the workflow publishes the event to RabbitMQ. A subscriber flow listens to the RabbitMQ queue. The subscriber validates the received event again. If the message is valid, it prepares and sends a Gmail notification. Invalid messages and processing failures are routed to a dead-letter/error queue. This template is useful for client onboarding, accounting intake, document processing, form submissions, internal notifications, and event-driven workflow automation. Set up steps Create or connect a RabbitMQ instance. Create the following RabbitMQ resources: Exchange: client.onboarding.exchange Exchange type: topic Main queue: client.onboarding.queue Routing key: client.onboarding.received Dead letter/error queue: client.onboarding.dlq In n8n, configure your RabbitMQ credentials. Replace the RabbitMQ credential placeholder with your own RabbitMQ credential. Replace the JSON Schema Validator placeholder nodes with your preferred JSON Schema validation node or validation service. Configure the Gmail credential. Replace the Gmail placeholder node with the Gmail Send Email node. Update the recipient email address in the “Prepare Gmail Email” node. Test the publisher webhook with a sample client onboarding JSON payload. Confirm the message is published to RabbitMQ and then consumed by the subscriber flow. Confirm Gmail receives the formatted notification email. Required credentials RabbitMQ credentials Gmail OAuth2 credentials Optional JSON Schema validator community node or external validation service Example input JSON { "clientId": "C1001", "clientName": "John Smith", "email": "john.smith@example.com", "serviceType": "Individual Tax Return", "taxYear": 2025, "documents": [ { "documentType": "Photo ID", "fileName": "john-smith-passport.pdf" }, { "documentType": "PAYG Summary", "fileName": "john-smith-payg-summary.pdf" } ] } Resilience and Error Handling This template includes: Validation before publish Validation after subscribe Correlation ID Schema version Dead-letter queue Email failure branch Invalid message branch RabbitMQ publish failure branch Invalid or failed messages are routed to client.onboarding.dlq.
by Milos Vranes
Quick overview This workflow hosts an n8n intake form, checks whether the submitted state is in your service area, uses Anthropic Claude to draft confirmation messages and an internal summary, logs requests to Google Sheets, emails via Gmail, optionally sends an SMS via Twilio, and shows the customer a confirmation page. How it works Receives a new client request through an n8n-hosted form submission. Normalizes the submitted details (name, email, phone, state, request type, description, and SMS consent) and generates a timestamp and reference number. Checks whether the submitted state is included in your configured served-area list. For in-area requests, sends the intake details to Anthropic Claude and parses the returned JSON into a customer email message, customer SMS message, internal summary, category, priority, and missing-info list. Appends the request to Google Sheets, emails the intake team and the customer via Gmail, and sends an SMS confirmation via Twilio only when the customer opted in. For out-of-area requests, appends the submission to a Google Sheets waitlist and shows the customer a waitlist message. Setup Customize the n8n Form Trigger fields and text to match your intake questions and desired response pages. Update the business name and the comma-separated served-area list in the intake field mapping. Add an Anthropic API key as an HTTP Header Auth credential (x-api-key) and attach it to the Anthropic request. Connect Gmail credentials and set the team notification recipient and any desired email content/subjects. Connect Google Sheets credentials and replace the placeholder spreadsheet ID and ensure the “New Requests” and “Waitlist” sheets contain the expected columns. Connect Twilio credentials and set a valid Twilio sending number for SMS confirmations.