# templates

name: Auto-Comment on Reddit Posts with AI Brand Mentions & Baserow Tracking
author_name: Arunava
author_username: arunava
categories: []
created_at: 2025-08-10T12:57:41.947Z
updated_at: 2025-08-10T12:57:41.947Z
url: https://n8n.io/workflows/7217
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:20
description:
  This workflow finds fresh Reddit posts that match your keywords, decides if they’re actually relevant to your brand, writes a short human-style reply using AI, posts it, and logs everything to Baserow.

  💡Perfect for

  Lead gen without spam: drop helpful replies where your audience hangs out.

  Get discovered by AI surfaces (AI Overviews / SGE, AISEO/GSEO) via high-quality brand mentions.

  Customer support in the wild: answer troubleshooting threads fast.

  Community presence: steady, non-salesy contributions in niche subreddits.

  🧠 What it does

  Searches Reddit for your keyword query on a schedule (e.g., every 30 min)

  Checks Baserow first so you don’t reply twice to the same post

  Uses an AI prompt tuned for short, no-fluff, subreddit-friendly comments

  Softly mentions your brand only when it’s clearly relevant

  Posts the comment via Reddit’s API

  Saves post_id, comment_id, reply, permalink, status to Baserow

  Processes posts one-by-one with an optional short wait to be nice to Reddit

  ⚡ Requirements

  Reddit developer API

  Baserow account, table, and API token

  AI provider API (OpenAI / Anthropic / Gemini)

  ⚙️ Setup Instructions

  Create Baserow table
     Fields (user-field names exactly):
     post_id (unique), permalink, subreddit, title, created_utc, reply (long text), replied (boolean), created_on (datetime).

  Add credentials in n8n

  Reddit OAuth2* (scopes: read, submit, identity) and set a proper *User-Agent** string (Reddit requires it).
  LLM**: Google Gemini and/or Anthropic (both can be added; one can be fallback in the AI Agent).
  Baserow**: API token.

  Set the Schedule Trigger (Cron)
     Start hourly (or every 2–3h). Pacing is mainly enforced by the Wait nodes.

  Update “Check duplicate row” (HTTP Request)

  URL**:
    https://api.baserow.io/api/database/rows/table/{TABLE_ID}/?user_field_names=true&filter__post_id__equal={{$json.post_id}}
  Header**: Authorization: Token YOUR_BASEROW_TOKEN
    (Use your own Baserow domain if self-hosted.)

  Configure “Filter Replied Posts”
     Ensure it skips items where your Baserow record shows replied === true (so you don’t comment twice).

  Configure “Fetch Posts from Reddit”
     Set your keyword/search query (and time/sort). Keep User-Agent header present.


  Configure “Write Reddit Comment (AI)”

  Update your brand name** (and optional link).
  Edit the prompt/tone** to your voice; ensure it outputs a short reply field (≤80 words, helpful, non-salesy).

  Configure “Post Reddit Comment” (HTTP Request)

  Endpoint: POST https://oauth.reddit.com/api/comment
  Body: thing_id: "t3_{{$json.post_id}}", text: "{{$json.reply}}"
  Uses your Reddit OAuth credential and User-Agent header. 
  Update user_agent value in header by your username n8n:reddit-autoreply:1.0 (by /u/{reddit-username})

  Store Comment Data on Baserow (HTTP Request)

  POST https://api.baserow.io/api/database/rows/table/{TABLE_ID}/?user_field_names=true
  Header: Authorization: Token YOUR_BASEROW_TOKEN
  Map: post_id, permalink, subreddit, title, created_utc, reply, replied, created_on={{$now}}.

  Keep default pacing
      Leave Wait 5m (cool-off) and Wait 6h (global pace) → \~4 comments/day. Reduce waits gradually as account health allows.

  Test & enable
      Run once manually, verify a Baserow row and one test comment, then enable the schedule.

  🤝 Need a hand?

  I’m happy to help you get this running smoothly—or tailor it to your brand.

  Reach out to me via email: imarunavadas@gmail.com

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.reddit","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.splitInBatches","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.lmChatAnthropic","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.baserow","n8n-nodes-base.wait","n8n-nodes-base.set"]

workflow_json_compressed:
  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

metadata_json:
  {"categories":["Marketing","Communication","Community Management"],"complexity":"medium","use_cases":["automate Reddit brand mentions","generate AI responses for forums","track community interactions","lead generation from Reddit"],"estimated_setup_minutes":30,"required_services":["Reddit API","Google Gemini","Anthropic (Claude)","Baserow"],"key_features":["keyword-driven post filtering","AI relevance validation","human-style comment generation","multi-model AI integration"],"target_audience":["community managers","marketers","customer support"]}


name: Automate real-time QuickBooks invoice sync to Google Sheets
author_name: Intuz
author_username: intuz
categories: []
created_at: 2025-08-11T05:03:57.053Z
updated_at: 2025-08-11T05:03:57.053Z
url: https://n8n.io/workflows/7229
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  This n8n template from Intuz provides a complete and automated solution for real-time financial reporting. 

  It instantly syncs new QuickBooks invoices to Google Sheets, using specific invoice data or keywords as triggers to ensure your financial records are always accurate and up-to-date.

  It uses a webhook to capture every new or updated invoice and logs the essential details into a designated Google Sheet. Perfect for creating custom reports, data backups, or a real-time dashboard of your accounts receivable.

  Use Cases

  Financial Reporting:** Create a simple, shareable Google Sheet for team members who don't have QuickBooks access.
  Data Backup:** Maintain a secure, independent log of all your invoices outside of the QuickBooks ecosystem.
  Custom Dashboards:** Use the Google Sheet as a data source for tools like Google Data Studio or Grafana to build custom financial dashboards.
  Auditing:** Easily track the history and status of all invoices in a simple, searchable spreadsheet format.

  How it Works

  1. Instant Webhook Trigger: The workflow activates the moment an invoice is created or updated in QuickBooks. The QuickBooks webhook sends a notification to n8n, kicking off the process in real time.

  2. Fetch Full Invoice Details: The initial webhook notification only contains the invoice ID. This node uses that ID to make a call back to the QuickBooks API and retrieve the complete invoice data, including customer name, due date, and more.

  3. Format Key Data: A simple Code node cleans up the data fetched from QuickBooks. It extracts only the fields you need—ID, Domain, Customer Name, and Due Date—and structures them perfectly for the next step.

  4. Append or Update in Google Sheets: The final node connects to your Google Sheet and uses the powerful "Append or Update" operation.
  If the ID of the invoice doesn't exist in the sheet, it adds a new row.
  If the ID already exists, it updates the existing row with the latest information.

  This ensures your Google Sheet is always a perfect mirror of your QuickBooks invoice data, preventing duplicates and keeping everything current.

  Setup Instructions

  For this workflow to run successfully, follow these setup steps:

  1. Credentials:
  QuickBooks: Connect your QuickBooks account credentials to n8n.
  Google: Connect your Google account using OAuth2 credentials. Ensure the Google Sheets and Google Drive APIs are enabled.

  2. QuickBooks Webhook Configuration:
  Activate the workflow. Copy the Production URL from the Webhook node.
  In your Intuit Developer Portal, go to the webhooks section for your app.
  Paste the URL and subscribe to Invoice events (e.g., Create, Update).

  3. Google Sheet Setup:
  Create a Google Sheet for your invoice data.
  Crucially, create the following headers in the first row of your sheet:
  -ID
  -Domain
  -Customer Name
  -Due Date

  4. Node Configuration:
  In the Append or update row in sheet node, select your Google Sheet document and the specific sheet name from the dropdown lists. The columns should map automatically if you've set up the headers correctly.

  Connect with us
  Website: https://www.intuz.com/n8n-workflow-automation-templates
  Email: getstarted@intuz.com
  LinkedIn: https://www.linkedin.com/company/intuz
  Get Started: https://n8n.partnerlinks.io/intuz

  For Custom Worflow Automation
  Click here- Get Started

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.code","n8n-nodes-base.quickbooks","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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

metadata_json:
  {"categories":["Finance","Automation"],"complexity":"medium","use_cases":["sync invoices to spreadsheets","automate financial reporting","backup invoice data"],"estimated_setup_minutes":15,"required_services":["QuickBooks","Google Sheets"],"key_features":["real-time synchronization","webhook triggers","invoice data extraction"],"target_audience":["accountants","finance managers","business owners"]}


name: Automate real-time QuickBooks invoice alerts in Slack
author_name: Intuz
author_username: intuz
categories: []
created_at: 2025-08-11T05:17:58.794Z
updated_at: 2025-08-11T05:17:58.794Z
url: https://n8n.io/workflows/7230
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  This n8n template from Intuz provides a complete and automated solution for instant team-wide financial visibility. 

  It actively monitors QuickBooks and, upon detecting a new invoice, immediately sends a detailed alert to your chosen Slack channel. 

  For customized reporting, the workflow can pull specific keywords or data like the customer name, invoice amount, and due date directly into the Slack message, creating a complete, real-time feed of your company's sales activity.

  Use Cases
  Sales Team Visibility:** Instantly notify the sales channel when an invoice is generated for a deal they closed.
  Finance & Ops Sync:** Keep the finance team aware of all billing activities as they happen in a dedicated channel.
  Account Management:** Alert account managers when invoices are sent to their clients, allowing for proactive follow-up.
  Executive Dashboard:** Create a high-level #billing-feed channel for leadership to monitor revenue-generating activities in real time.

  How it Works

  1. Instant Webhook Trigger: The workflow begins when an invoice is created or updated in QuickBooks. A configured webhook in your Intuit Developer Portal sends a real-time notification to n8n, instantly activating the flow.

  2. Fetch Full Invoice Details: The initial webhook payload only contains a basic event notification. This node uses the invoice ID from that payload to query the QuickBooks API and retrieve the full invoice details, such as the customer's name, due date, and domain.

  3. Format Key Data: A simple but essential Code node takes the raw data from QuickBooks and cleans it up. It extracts only the most important fields (ID, Domain, Customer Name, Due Date) and organizes them for the next step.

  4. Send Slack Notification: The final node crafts a human-readable message and posts it to your chosen Slack channel. The message is dynamically populated with the invoice data, providing a clear and concise update for the whole team. 

  For example:
  Invoice having ID: 160 having the Domain: QBO for the customer Rondonuwu Fruit and Vegi which is due on 2025-09-07 has been generated successfully.

  Setup Instructions

  To get this workflow running, follow these configuration steps:

  1. Credentials:
  QuickBooks: Connect your QuickBooks account credentials to n8n.
  Slack: Connect your Slack account using OAuth2 credentials.

  2. QuickBooks Webhook Configuration:
  First, activate this n8n workflow. This will make the webhook URL live.
  Copy the Production URL from the QuickBooks Webhook node.
  Log in to your Intuit Developer Portal, navigate to the webhooks section for your application, and paste the URL.
  Ensure you subscribe to Invoice events (e.g., Create, Update, etc.).

  3. Node Configuration:
  Get an invoice: No configuration needed; it will automatically use your QuickBooks credentials.
  Send a message (Slack): In the parameters, select the Slack Channel where you want the notifications to be posted.

  Support
  If you need help setting up this workflow or require a custom version tailored to your specific use case, please feel free to reach out to the template author:

  Website: https://www.intuz.com/n8n-workflow-automation-templates
  Email: getstarted@intuz.com
  LinkedIn: https://www.linkedin.com/company/intuz
  Get Started: https://n8n.partnerlinks.io/intuz

  For Custom Worflow Automation
  Click here- Get Started

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.code","n8n-nodes-base.quickbooks","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.slack","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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

metadata_json:
  {"categories":["Accounting","Communication"],"complexity":"simple","use_cases":["Send Instant notifications","Monitor inbound invoices"],"estimated_setup_minutes":15,"required_services":["QuickBooks","Slack"],"key_features":["Real-time monitoring","Custom message formatting","Supports keywords filtering"],"target_audience":["accountants","finance teams"]}


name: Automatically save QuickBooks invoice PDFs to Google Drive
author_name: Intuz
author_username: intuz
categories: []
created_at: 2025-08-11T06:50:10.662Z
updated_at: 2025-08-11T06:50:10.662Z
url: https://n8n.io/workflows/7232
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  This n8n template from Intuz provides a complete and automated solution for secure document archiving.

  It automatically saves new QuickBooks invoice PDFs directly into Google Drive, creating a reliable backup system. For perfect organization, the workflow uses keywords from the invoice, like the client name or invoice number, to dynamically name the PDF files, ensuring you have a complete and easily searchable financial record.

  Use Cases
  1. Automated Document Archiving: Eliminate the manual work of downloading and saving invoices. Set it up once and let it run.

  2. Compliance & Auditing: Maintain a clean, chronological, and separate record of all issued invoices for easy access during audits.

  3. Secure Backup: Create a redundant, secure backup of your critical financial documents in your own cloud storage.

  4. Enhanced Team Access: Share the Google Drive folder with accountants, bookkeepers, or team members who need access to invoices but not to your full QuickBooks account.

  How It Works:
  1. Real-Time Invoice Trigger: The workflow starts the instant a new invoice is created in your QuickBooks account. A configured webhook sends a notification to n8n, kicking off the automation immediately.

  2. Fetch Invoice Metadata: The workflow uses the invoice ID from the webhook to retrieve the full invoice details, such as the customer's name and the transaction date. This information is used in the next steps.

  3. Generate the Invoice PDF: A crucial HTTP Request node makes a direct API call to QuickBooks, requesting a PDF version of the invoice. This ensures the archived document is the official, formatted PDF, exactly as it appears in QuickBooks.

  4. Upload and Archive in Google Drive: The final node takes the binary PDF data and uploads it to your specified Google Drive folder. It dynamically names the file for easy identification (e.g., CustomerName_TransactionDate.pdf), creating a perfectly organized and searchable archive.

  Setup Instructions
  To get this workflow running, follow these key setup steps:

  1. Credentials:
  QuickBooks: Connect your QuickBooks account credentials to n8n.
  Google: Connect your Google account using OAuth2 credentials and ensure the Google Drive API is enabled.

  2. QuickBooks Webhook Configuration:
  First, activate this n8n workflow to make the webhook URL live.
  Copy the Production URL from the QuickBooks Webhook node.
  In your Intuit Developer Portal, go to the webhooks section for your app, paste the URL, and subscribe to Invoice creation events.

  3. Node Configuration:
  Get an invoice & Generate PDF File: These nodes will use your configured QuickBooks credentials automatically.
  Upload file (Google Drive): In the parameters for this node, you must select the Folder ID where you want your invoices to be saved.

  Support
  If you need help setting up this workflow or require a custom version tailored to your specific use case, please feel free to reach out to the template author:

  Website: https://www.intuz.com/n8n-workflow-automation-templates
  Email: getstarted@intuz.com
  LinkedIn: https://www.linkedin.com/company/intuz
  Get Started: https://n8n.partnerlinks.io/intuz

  For Custom Worflow Automation
  Click here- Get Started

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.quickbooks","n8n-nodes-base.googleDrive","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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

metadata_json:
  {"categories":["Accounting","Document Management"],"complexity":"simple","use_cases":["automated invoice archiving","secure document backup","financial record organization"],"estimated_setup_minutes":5,"required_services":["QuickBooks","Google Drive"],"key_features":["dynamic file naming","keyword-based organization","automatic document processing"],"target_audience":["accountants","financial managers","clerks"]}


name: Detect Cannibalized Keywords and Competing Pages with Google Search Console
author_name: Mohammadreza azari
author_username: mrazari
categories: []
created_at: 2025-08-11T09:09:32.394Z
updated_at: 2025-08-11T09:09:32.394Z
url: https://n8n.io/workflows/7237
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  Find Cannibalized Pages (Google Search Console)

  This n8n template helps you detect page cannibalization in Google Search Console (GSC): situations where multiple pages on your site rank for the same query and more than one page gets clicks. Use it to spot competing URLs, consolidate content, improve internal linking, and protect your CTR/rankings.

  Good to know
  Data source:** Google Search Console Search Analytics (Dimensions: query, page).
  Scope:* Defaults to *last 12 months* and up to *10,000 rows** per run (adjustable).
  Logic:* Keeps only queries with *&gt;1 page* and where the *second page has clicks &gt; 0** → higher confidence of true cannibalization.
  Privacy:** Template ships with a placeholder property (sc-domain:example.com) and a neutral credential name; replace both after import.
  Cost:** n8n nodes used here are free. GSC usage is also free (subject to Google limits).

  How it works
  Manual Start — run the workflow on demand.  
  Google Search Console — fetch last 12 months of query–page rows.  
  Summarize — group by query, building two arrays:  
     appended_page[] → all pages seen for that query  
     appended_clicks[] → clicks for each page-query row (aligned with appended_page)
  Filter — pass only queries where:  
     count_query &gt; 1 (more than one page involved), and  
     appended_clicks[1] &gt; 0 (the second page also received clicks)
  Output — list of cannibalized queries with the competing pages and their click counts.

  Example output
  {
    "query": "best running shoes",
    "appended_page": [
      "https://example.com/blog/best-running-shoes",
      "https://example.com/guide/running-shoes-2025"
    ],
    "appended_clicks": [124, 37],
    "count_query": 3
  }
  How to use
  Import the JSON into n8n.  
  Open the Google Search Console node and:  
     Connect your Google Search Console OAuth2 credential.  
     Replace siteUrl with your property (sc-domain:your-domain.com).  
  Press Execute Workflow on Manual Start.  
  Review the output — focus on queries where the second page has meaningful clicks.  

  💡 Tip: If your site is large, start with a shorter date range (e.g., 90 days) or raise rowLimit.

  Requirements
  Access to the target property in Google Search Console.  
  One Google Search Console OAuth2 credential in n8n.

  Customising this workflow
  More robust detection:* In the *Summarize* node, change clicks aggregation from append to sum. Then filter for “at least 2 pages with sum_clicks &gt; 0*” to avoid any dependency on row order.  
  Scoring & sorting:* Add a *Code/Function** node to sort competing pages by clicks or impressions and compute click-share per page.  
  Deeper analysis:** Include impressions and position in the GSC node and extend the summary to prioritize fixes (e.g., high impressions + split clicks).  
  Reporting:* Send results to *Google Sheets* or export a *CSV**; create a dashboard of top cannibalized queries.  
  Thresholds:* Expose minimum click thresholds as *workflow variables** (e.g., second page clicks ≥ 3) to reduce noise.

  Troubleshooting
  Empty results:** Widen date range, increase rowLimit, or temporarily relax the filter (remove the second-page click condition to validate data flow).  
  No property data:** Ensure you used sc-domain: vs. https:// property format correctly and that your user has GSC access.  
  Credential issues:** Reconnect the OAuth2 credential and reauthorize if needed.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.start","n8n-nodes-google-search-console.googleSearchConsole","n8n-nodes-base.summarize","n8n-nodes-base.filter"]

workflow_json_compressed:
  H4sIAAAAAAAAE61WTW/bRhD9KwumB1sVBXJJipSABnCcJg3QfMpNUDhGvCSH0tbULru7tKMYAnoq0EuBFr331D+WX9Cf0NmlZEmOnFzqk7kfM2/em3mra28Ohnnja48LbZgo4Enpjb1hTCuWjpKgSlieJWkYl3lC8zKHPEiqOGIhAwgqmrK8SkaMQhHRnA0pi2iaxlHl9T0D86ZmBo4VlHoCpm2OJa6AAUxgVAvLvidkCdobn2J2mzUtRixgZenHQZz6cQqBn5U09ZMor3Anj0ZJiJEFmwOefiPVRVXLK/IQdKF4Y7gUNu+isbsiE74L7+dMw0AbXlwsnkkDeKSRmrvT49OgH5zhAlMY04DSlokrXpqZN06HQd+bAZ/OjDeO7UchhQGBX969e+Tfv//6nTzioiQvW1ALcsyE4Dmr+QdmY5ODx1JOayATYKqYkWMptKzh8K14K3q9F61CENDrvRUPMW9hyM8YhIMmVzNQQHq9eVsbjnSRhk1B93oEQy5kqwhCB1IglXiPMEyfSzMjCgrgl7hRY52aHFiCSbEL6XDQJf8OOeOGXCF/2iIID8kjMIixZtqQkJI51jnTpFJyTh5PjskVxwwln4PQGEYjOot2gaC+xv8twF4PY9NDMmnnc6b4ByD5YuvYx1//JHnL65IwpdhCE1l1dbkCVpgbUI6FBYaKEBKvURB39QKg2RBkwfR690PSJSZHzx7itwZUp3RrZMb0Ouh9Ejhstu4HUEnkVrXIipjayn0ri7D0MwyxVzDy/Kg1M4p5CmxkVJ+zmhhJzAwcN7bHBjbSK8B2L4Cc68Iv5ZxxMYb3zHb8ANU673A7BRslsVazIAcwmA762zfs/up/d2st2QlvdAf4kVSojy1D5i3KpUBjp+g+tgSqUyJjGjXA+rZpdawctNqiaxGLnXVgpZXhnDUNiPL80EmBVQlSdcwjWUjKx9/+IXQllivhFrE++VG2ttMsr4SVH3/5YyYLcskto0+ZaJGuiWHK2BZWhLUGq8PO7Q68AbioF+RE8ekU1I1Sz1vTtAaBQF2u6j53rXHeXwOG8p0FdXq2s9SB6xYL2Qrzrrtmw56wqR6TybfP+1a4/u2B9Zadd7xGF3DeEC77K1+qIBgFSUZ9mo4yPx5GIz+LIPOrMowyoFUaxOXGl7aL/owfdbtbVhQFcT8J6W07uhtWSYGFIaR+EMUU7XJI/TyKMr8MU5rEFRuyYAtW51Kr5j4SrF6gJep9AKduDnztjvpFNweDbrW7v5qNXfwJzfbh96xh/aBqTLF3MjCIklff8zlHYw0D/Ot7dj46UcbeFMwLFPoJdjc6sQW8cSLM6jmBLRI85GHyErvrFRNTeIrF4H1raiGdS6vvZoQdsj0lddN+1HD3JFqWN3d8vkXn5+6S45s73vJu/aI4qVIWD/0iCJgfxyz0s7RifpXlaVBU+PyyaJNwx1pfroq+o7nWR3cFShO6VyDpns5Vr3UzdyInTc3NgwUGXxN8s3MTHe9esrpdPeFu/+a8rXK94qTpe2w6VTBd69rN7M65bnrvPHn2KZeDDZs0DaIsCAOfZUHgxyyK/JxSZDOvyiqjeQIZbNhcvS5rD3CE4utyJ6WdJ+7yOUqHX+bTvkp8/b215V2ui6B4CFNMbE8bfMO7X0erStGeyjUP2iheGNfHcp5zwYxUlh5h23I7z+n1aoLs/vVNRe08dyXsTJeLV0NlXlslceWb62vy1U9a2gfoxkDJcmnn1E7g6pwj/v/Ictu7w7NPkwV7tKcDujxzddsHfM3qjvnit3UbJAQZEZ0dfMkG3YU+/hou4b1LfIaJ98zevthfbKq9we9AtC/B5zxgT+zl8j/bBoo+3wsAAA==

metadata_json:
  {"categories":["SEO","Data Processing"],"complexity":"medium","use_cases":["identify cannibalized pages","analyze keyword competition","optimize internal linking"],"estimated_setup_minutes":15,"required_services":["Google Search Console"],"key_features":["query analysis","click tracking","competitor page identification"],"target_audience":["SEO specialists","web managers","search analysts"]}


name: Flag Bounced Emails in Google Sheets from Gmail Delivery Error Messages
author_name: Stéphane Heckel
author_username: stephaneheckel
categories: []
created_at: 2025-08-11T12:18:24.379Z
updated_at: 2025-08-11T12:18:24.379Z
url: https://n8n.io/workflows/7251
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
description:
  Scanning Email Inbox for Delivery Errors

  Prerequisite: Automate Personalized Email Campaigns with Google Docs, Sheets, and SMTP.

  How It Works

  After running your email campaign, some messages may fail to deliver. This workflow scans your email inbox for delivery errors (e.g., bounced messages), flags problematic email addresses in the Google Sheet and ensures future campaigns skip them.

  How to Use

  Ensure Prerequisite Workflow:  
     You should have the Email Campaign Workflow configured and running.

  Google Sheet Setup:  
     Use the Google Sheet Template.  
     Identify your document’s ID (the string after /d/ and before /edit in the URL).

  Configure Workflow:  
     Enter your Google Sheet ID in the settings node.  
     Connect your Google credentials to n8n.

  Email Inbox:  
     Set up the readspamfolder node to search for bounce/error messages in your mail (e.g., in the Spam or Inbox folders—adjust label/folder if emails land elsewhere).  

  Google Sheet Update:  
     Configure the lookupemail and update_err nodes

  Requirements

  Google Credentials** to access Gmail and sheets.
  Gmail Account** (bounce/error messages must be accessible here).
  n8n Version:** Tested with 1.105.2 (Ubuntu).

  Need Help?

  Comment this post or contact me on LinkedIn
  Ask in the n8n Community Forum!

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.gmail","n8n-nodes-base.if","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4516 characters]

metadata_json:
  {"categories":["Data Processing","Communication"],"complexity":"simple","use_cases":["identify bounced email addresses","update contact database","filter invalid recipients"],"estimated_setup_minutes":5,"required_services":["Google Sheets","Gmail"],"key_features":["auto-detect delivery failures","update spreadsheet in real-time","skip invalid emails in future sends"],"target_audience":["marketers","operations managers"]}


name: Smart Knowledge Base Builder — Auto-Convert Websites into AI Training Data
author_name: Aayushman Sharma
author_username: ajstyle0411
categories: []
created_at: 2025-08-11T17:51:52.453Z
updated_at: 2025-08-11T17:51:52.453Z
url: https://n8n.io/workflows/7260
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
description:
  AI-Powered Knowledge Base Builder — Turn Any Website into LLM-Optimized Markdown & TXT Files

  Automate the entire process of converting any website or domain into clean, structured, AI-ready knowledge bases for Large Language Models (LLMs), semantic search, and chatbot development.

  Key Workflow Highlights
  URL Input via Simple Form** – Paste a single link or a full domain.
  Automated Link Discovery** – Crawl and map all related pages with Firecrawl API.
  Clean Markdown Extraction** – Use Parsera API for accurate, clutter-free content.
  LLM-Optimized Formatting** – Standardize with OpenAI GPT-4.1-mini for llms.txt.
  Cloud Storage Integration** – Save directly to Google Drive for instant access.
  Batch Processing at Scale** – Handle single pages or hundreds of URLs effortlessly.

  Perfect For:
  AI engineers building domain-specific training datasets
  Data scientists running semantic search & vector database pipelines
  Researchers collecting website archives for AI or analytics
  Automation specialists creating chatbot-ready content libraries

  Why This Workflow Outperforms Manual Processes
  100% Automated** — From link input to Google Drive-ready .txt file
  Flexible Scope** — Choose between single-page extraction or full-site crawling
  Clean, AI-Friendly Output** — Markdown converted to standardized LLM format
  Scalable & Reliable** — Handles bulk data ingestion without formatting issues
  Cloud-First** — Centralized storage for team-wide accessibility

  Problems Solved
  No more manual copy-paste from dozens of web pages
  Eliminate formatting inconsistencies across datasets
  Avoid scattered files — all output stored in one central folder

  Instead, you get:
  Automated URL mapping for deep data coverage
  Proxy-enabled scraping for accurate extraction
  Ready-to-use llms.txt files for chatbots, fine-tuning, and AI pipelines

  How It Works — Step-by-Step

  Form Submission  
     Input your URL and choose “Single Page” or “Full Domain Crawl.”

  URL Mapping with Firecrawl API  
     Automatically discovers all internal links related to the starting URL.

  Content Extraction with Parsera API  
     Removes ads, navigation clutter, and irrelevant elements to produce clean Markdown.

  LLM-Optimized Formatting with OpenAI GPT-4.1-mini  
     Generates structured files including:
     Site title & meta description
     Page sections with summaries & full text

  Cloud Upload to Google Drive  
     Final .txt or .md files stored in your specified folder.

  Business & AI Advantages
  Save 90%+ time preparing AI training datasets
  Improve AI accuracy with high-quality, consistent input
  Maintain centralized, cloud-based storage
  Scale globally with proxy-based content collection

  Setup in Under 10 Minutes
  Import the workflow into n8n.
  Add credentials for:
     Firecrawl API
     Parsera API
     OpenAI API Key
     Google Drive (Service Account or OAuth)
  Update your Google Drive folder ID.
  Run a test job with a sample URL.
  Deploy and connect to your AI pipeline.

  Tools & Integrations Used
  n8n Form Trigger** – For user-friendly input
  Firecrawl API** – Comprehensive internal link mapping
  Parsera API** – Clean, structured content extraction
  OpenAI GPT-4.1-mini** – LLM-optimized formatting
  Google Drive API** – Secure cloud storage
  Batch & Switch Logic** – Efficient multi-page processing

  Advanced Customization Options
  Change output format: .md, .json, .csv
  Swap storage to Dropbox, AWS S3, Notion, Airtable
  Modify AI prompts for alternative formatting
  Filter by keywords or metadata before saving
  Automate runs via Google Sheets, email triggers, or cron schedules
  Add AI-powered translation for multilingual datasets
  Enrich with SEO metadata or author information
  Push directly to vector databases like Pinecone, Weaviate, Qdrant

  SEO-Optimized Keywords for Maximum Reach
  AI data extraction workflow
  Automated LLM training dataset builder
  Web to Markdown converter for AI
  Firecrawl Parsera OpenAI n8n integration
  llms.txt file generator for chatbots
  Automated website content scraper for AI
  Knowledge base creation automation
  AI-ready data pipeline for semantic search
  Batch website-to-dataset conversion

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.formTrigger","n8n-nodes-base.switch","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.splitInBatches","n8n-nodes-base.set","n8n-nodes-base.convertToFile","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.splitOut","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.convertToFile","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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

metadata_json:
  {"categories":["AI/ML","Data Processing"],"complexity":"medium","use_cases":["convert websites to markdown","build LLM training datasets","create semantic search data"],"estimated_setup_minutes":15,"required_services":["Firecrawl","Google Drive"],"key_features":["automatic webpage crawling","markdown format conversion","domain-wide content extraction"],"target_audience":["developers","data scientists"]}


name: Automate QuickBooks customer & estimate creation from Google Sheets
author_name: Intuz
author_username: intuz
categories: []
created_at: 2025-08-12T07:39:12.878Z
updated_at: 2025-08-12T07:39:12.878Z
url: https://n8n.io/workflows/7273
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  This n8n template from Intuz provides a complete and automated solution to accelerate your sales and quoting process into Quickbooks.

  This workflow creates a seamless data pipeline from a Google Sheet directly into QuickBooks, automating the creation of new customers and their initial sales estimates. It’s designed to save time, reduce human error, and ensure your financial records are always up-to-date.

  How it works

  1. Trigger on New Sheet Row: The workflow starts automatically when you add a new row containing customer and estimate details to your designated Google Sheet.

  2. Check for Duplicates: Before doing anything else, it takes the customer's name from the sheet and searches your QuickBooks account to see if a customer with that exact name already exists.

  3. Route Based on Existence (If/Else Logic):
  If the Customer is NEW: The workflow proceeds down the "true" path, first creating a new customer record in QuickBooks with the details from the sheet (Name, Email, Phone, Company). Immediately after, it creates a new sales estimate linked to that newly created customer.
  If the Customer ALREADY EXISTS: The workflow follows the "false" path and stops. This is a built-in safety measure to prevent creating duplicate customer records.

  4. End of Process: The workflow concludes, having either created a new customer and estimate or having intelligently stopped to avoid duplication.

  Step by Step Instructions
  Follow these steps carefully to get the workflow running.

  1. Connect Your Credentials
  Google: Connect your Google account using OAuth2. Ensure you have enabled permissions for both Google Sheets and Google Drive.
  QuickBooks: Connect your QuickBooks Online account using OAuth2 credentials.

  2. Prepare Your Google Sheet
  This is the most critical step. Create a Google Sheet and ensure the first row contains these exact column headers:
  CustomerName
  Email
  Phone
  Company Name
  Amount

  3. Configure the n8n Nodes

  Google Sheets Trigger:
  Select your Google Sheet from the Document ID dropdown.
  Select the specific sheet from the Sheet Name dropdown.

  Create an estimate (QuickBooks Node):
  This node has a default product/service (itemId) and tax code (TaxCodeRef) set. You must update these to match the items and tax codes in your QuickBooks account. See the Customization section for more details.

  4. Activate the Workflow
  Save the workflow and toggle the Active switch to "on". Now, every time you add a new row to your sheet, the automation will run.

  Connect with us
  Website: https://www.intuz.com/n8n-workflow-automation-templates
  Email: getstarted@intuz.com
  LinkedIn: https://www.linkedin.com/company/intuz
  Get Started: https://n8n.partnerlinks.io/intuz

  For Custom Worflow Automation
  Click here- Get Started

nodes_used:
  ["n8n-nodes-base.set","n8n-nodes-base.quickbooks","n8n-nodes-base.if","n8n-nodes-base.quickbooks","n8n-nodes-base.noOp","n8n-nodes-base.googleSheetsTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.quickbooks","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4576 characters]

metadata_json:
  {"categories":["Finance","Data Processing","Business Operations"],"complexity":"medium","use_cases":["automate customer creation","generate sales estimates","sync Google Sheets data","streamline quoting process"],"estimated_setup_minutes":30,"required_services":["QuickBooks","Google Sheets"],"key_features":["seamless Google Sheets to QuickBooks integration","automated customer and estimate management","conditional logic for data validation","error reduction through automation"],"target_audience":["admins","sales teams","finance professionals"]}


name: SEO Writer: Content Generator (2500 keywords) with Perplexity & Auto Publish
author_name: Reddit Dev
author_username: harryhaz
categories: []
created_at: 2025-08-12T10:07:29.243Z
updated_at: 2025-08-12T10:07:29.243Z
url: https://n8n.io/workflows/7279
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
description:
  🔥 TLDR

    Automatically generate and publish 2000+ word SEO-optimized blog posts to GitHub every 8 hours - Complete with trending topic research, AI content generation, and automatic JSON formatting for your blog platform. Instant SEO traffic upcoming! 

    ---
    📌 Who's it for

    Content creators, marketers, and developers who want to:
    Maintain a consistent blog publishing schedule without manual effort
    Generate high-quality, SEO-optimized content automatically
    Keep up with trending topics in their industry
    Build content libraries for their websites or applications

    🚀 What it does

    This workflow is a complete content generation pipeline that runs
    automatically every 8 hours:

    Discovers trending topics using Perplexity Sonar to find what's hot in
     your chosen categories
    Conducts deep research with real statistics, expert opinions, and
    current data
    Generates comprehensive content - 2000-2500 word articles using GPT-5
    mini
    Formats for web - Converts to JSON with proper metadata (slug,
    keywords, reading time)
    Publishes automatically to your GitHub repository as blog-ready JSON
    files

    ✨ Key Features

    SEO Optimization

    Keyword-rich content with targeted keywords naturally integrated
    Proper heading structure (H1, H2, H3) for search engine crawling
    Meta descriptions automatically generated from content
    Reading time calculation for better user engagement metrics
    URL-friendly slugs with timestamps for uniqueness

    Content Quality

    2000+ words minimum ensuring comprehensive coverage
    Research-backed with current statistics and expert opinions
    Structured format with clear sections: Introduction, Analysis,
    Applications, Challenges, Future Outlook
    Markdown formatting for easy rendering on any platform

    🛠️ How to set up

    Requirements

    n8n instance (self-hosted or cloud)
    Perplexity API account
    OpenAI API account (GPT-5 mini access)
    GitHub repository for storing blog content

    Setup Steps

    Import the workflow into your n8n instance
    Configure credentials:
      Add your Perplexity API key
      Add your OpenAI API key
      Connect your GitHub account via OAuth2
    Customize the GitHub node:
      Set your repository owner and name
      Adjust the file path if needed (default: public/blog-data/)
    Adjust the schedule (optional):
      Default runs every 8 hours
      Modify the Schedule Trigger node for your preferred frequency
    Test the workflow with manual execution before enabling automatic
    scheduling

    🎨 How to customize

    Topic Categories

    Edit the "Find trending topics" node to focus on your niche:
    Technology & AI
    Social Media & Marketing
    Business & Finance
    Health & Wellness
    Education & Career

    Content Length

    Adjust word count requirements in the "Format Blog JSON" node validation

    Output Format

    Modify the JSON structure in "Format Blog JSON" to match your blog platform's requirements

    Publishing Destination

    Change the GitHub repository path or integrate with other platforms like WordPress, Contentful, or Strapi

    📊 Workflow Benefits

    Consistency: Never miss a publishing deadline
    Scale: Generate multiple articles daily without manual effort
    Quality: Research-backed content with real data and sources
    SEO-Ready: Optimized structure and metadata for search engines
    Cost-Effective: Uses efficient AI models for sustainable content
    generation

nodes_used:
  ["n8n-nodes-base.set","n8n-nodes-base.perplexity","n8n-nodes-base.code","n8n-nodes-base.github","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.perplexity","n8n-nodes-base.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE62WS2/bMAzHv4rg66JCtmVb7q17dI/DBqzFdhiKQg8qEebKga2sC4p89zFu1qSpvCVFb7JE//UTSVG8S24gyOT0LnG+D9Jr+GiS08QLT2/b7qdt2lsqHVVNO6VT8NDJ0HbJapJ4eQNoePaRvMY18v7vGqHkbBFaOl+oxvUzcvHuC9GtD+ADCS1578KHhSLSGxJm4MmyXXTkFlTvAhCJP97I4LRsmmWCe7QG+uT0B8KtoUyVWa0Up4aZnPK8Tqk0haJZDUZwleo818kD2QUEctnOnSZvJZ5wkoTlHDZHG4Spkj2c9BBwbd4igGs9bkbTjIsJzTi7wnnZoVqADjHuVvca3/BrMM1P+GqyYcuqzBjQmorSijVbTYUBS2utSgtKGFHwLdtbgDn5Cj3ITs9G0ebQzRv47cJyn5Bl/CDC9IFPWFWBtSUVwBTlKXqxVsBpClIaW+qSZTu+O287jMN9ZD9dfPk8iqhxuAdXVOVBbNkDG08zZlRaUllZTjGQGY4qS8saClCpSiWrtmxvOpCYK+euAeL8JqFGAacuzIblXcS8yI50XyoLXdWppUwxTD2OdKrGQFe8NjzjWpS13SK++wXdkggyw+TuxzNPz8AsGrjs3HQK3X6My/owP6YnW09WULFciZSq9eXgJa8xymWOMpXUzJbKsB3Mc4e38LIDb5yf3t+VcdrxZOTVsd6syypXzAJi5pLyIgUqchBUqhKsFFanVmwxN6UFSMYYe0W+t50hZx1WiQZGads5+DO3RyoYO9CjW9Qe9/m5vPZtgOt0p7gM0+QzTo/Hd7DZmDzyWL0G4eIJSLIplKiVjHtvFymLIpHsGVBDGPOn3jkeKo9D5c+AGkrxi0DxOBR/BtRQfV8EqohDFcdDDbn9IkxlnKk8nml4CV6EqYozVcczDaX/aCa0xnUPei0zmD9+wXHiRrr1BtirrDEOLVvDXxPsvQz8Tk7Z6uoKN3/8fMS0/125o6J77VBMdaQrico96RBigv95quPCsaPFxMf6u6hqnGRHdrD6V8iiYRhtkyIQq9UfHAEzQ2wLAAA=

metadata_json:
  {"categories":["Content Creation","SEO","Marketing"],"complexity":"medium","use_cases":["Automated blog posting","SEO content generation","Trend analysis","Scheduled publishing"],"estimated_setup_minutes":15,"required_services":["Perplexity","GitHub","Markdown AI"],"key_features":["Keyword research","AI-powered writing","Automatic pipeline","JSON formatting","Scheduled publishing"],"target_audience":["Content creators","Marketers","Developers"]}


name: Generate and Share Professional PDFs with OpenAI, Google Docs, and Slack
author_name: Trung Tran
author_username: trungtran
categories: []
created_at: 2025-08-12T11:45:18.842Z
updated_at: 2025-08-12T11:45:18.842Z
url: https://n8n.io/workflows/7288
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
description:
  Free PDF Generator in n8n – No External Libraries or Paid Services
  &gt; A 100% free n8n workflow for generating professionally formatted PDFs without relying on external libraries or paid converters. It uses OpenAI to create Markdown content, Google Docs to format and convert to PDF, and integrates with Google Drive and Slack for archiving and sharing, ideal for reports, BRDs, proposals, or any document you need directly inside n8n.
  Watch the demo video below:

  Who’s it for
  Teams that need auto-generated documents (reports, guides, checklists) in PDF format.
  Operations or enablement teams who want files archived in Google Drive and shared in Slack automatically.
  Anyone experimenting with LLM-powered document generation integrated into business workflows.

  How it works / What it does
  Manual trigger starts the workflow.
  LLM generates a sample Markdown document (via OpenAI Chat Model).
  Google Drive folder is configured for storage.
  Google Doc is created from the generated Markdown content.
  Document is exported to PDF using Google Drive. (Sample PDF generated from comprehensive markdown)
  PDF is archived in a designated Drive folder.
  Archived PDF is downloaded for sharing.
  Slack message is sent with the PDF attached.

  How to set up
  Add nodes in sequence:
     Manual Trigger
     OpenAI Chat Model (prompt to generate sample Markdown)
     Set/Manual input for Google Drive folder ID(s)
     HTTP Request or Google Drive Upload (convert to Google Docs)
     Google Drive Download (PDF export)
     Google Drive Upload (archive PDF)
     Google Drive Download (fetch archived file)
     Slack Upload (send message with attachment)
  Configure credentials for OpenAI, Google Drive, and Slack.
  Map output fields:
     data.markdown → Google Docs creation
     docId → PDF export
     fileId → Slack upload
  Test run to ensure PDF is generated, archived, and posted to Slack.

  Requirements
  Credentials**:
    OpenAI API key (or compatible LLM provider)
    Google Drive (OAuth2) with read/write permissions
    Slack bot token with files:write permission
  Access**:
    Write access to target Google Drive folders
    Slack bot invited to the target channel

  How to customize the workflow
  Change the prompt** in the OpenAI Chat Model to generate different types of content (reports, meeting notes, checklists).
  Automate triggering**:
    Replace Manual Trigger with Cron for scheduled document generation.
    Use Webhook Trigger to run on-demand from external apps.
  Modify storage logic**:
    Save both .md and .pdf versions in Google Drive.
    Use separate folders for drafts vs. final versions.
  Enhance distribution**:
    Send PDFs to multiple Slack channels or via email.
    Integrate with project management tools for automated task creation.

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","n8n-nodes-base.httpRequest","n8n-nodes-base.googleDrive","n8n-nodes-base.manualTrigger","n8n-nodes-base.slack","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6236 characters]

metadata_json:
  {"categories":["Development"],"complexity":"medium","use_cases":["generate reports automatically","create proposals quickly","convert markdown to pdf","share documents via slack","archive in google drive"],"estimated_setup_minutes":30,"required_services":["openai","google docs","google drive","slack"],"key_features":["markdown conversion","pdf generation","google drive integration","slack notification","automation capablility"],"target_audience":["developers","content creators","teams"]}


name: Full-cycle invoice automation: Airtable, QuickBooks & Stripe
author_name: Intuz
author_username: intuz
categories: []
created_at: 2025-08-12T12:36:34.244Z
updated_at: 2025-08-12T12:36:34.244Z
url: https://n8n.io/workflows/7291
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  This n8n template from Intuz provides a complete and automated solution for full-cycle invoicing, orchestrating a seamless flow between Airtable, QuickBooks, and Stripe. 

  This is the ultimate sales-to-cash automation. When a deal in Airtable is marked "Approved for Invoicing," this workflow intelligently syncs customer data across QuickBooks and Stripe (creating them if they don't exist), generates an official QuickBooks invoice, creates a Stripe payment link, and then updates the original Airtable record with all the new IDs and links. Eliminate manual data entry and keep your systems perfectly in sync.

  Who's this workflow for? 

  Finance, Accounting, and Operations Teams
  SalesOps and RevOps Teams
  Small Business Owners and Founders
  Agencies and Freelancers

  How It Works:
  1. Airtable Trigger & Approval Gate: The workflow starts when a record in your Airtable base is updated. An If node immediately checks if the Status field is set to "Approved for Invoicing." If not, the workflow for that item stops.

  2. Customer Sync (QuickBooks & Stripe):
  The workflow searches for the customer in both QuickBooks and Stripe using the details from Airtable.
  Using If nodes, it intelligently checks if the customer exists. If a customer is not found in either platform, it creates a new one. This "find-or-create" logic prevents duplicate records.

  3. Update Airtable with IDs: Once the customer IDs from both QuickBooks and Stripe are secured (either found or newly created), the workflow updates the original Airtable record with these new IDs for future reference.

  4. Generate Financials:
  Stripe Payment Link: It sends an HTTP request to Stripe to create a unique, ready-to-use payment link for the specified amount.
  QuickBooks Invoice: It fetches your product list from QuickBooks, finds the matching item from the Airtable record, and generates a formal, detailed invoice.

  5. Close the Loop: In the final step, the workflow updates the Airtable record one last time to:
  Add the QuickBooks Invoice #.
  Add the Stripe Payment Link.
  Change the Status to "Invoiced."

  Step-by-Step Setup Instructions
  This is an advanced workflow. Follow these setup steps carefully.

  1. Connect Your Credentials
  Airtable: Create and connect a Personal Access Token with data.records:read and data.records:write scopes.
  QuickBooks: Connect your QuickBooks Online account using OAuth2 credentials.
  Stripe: Connect your Stripe account using your Secret Key.

  2. Airtable Base Setup (Crucial)
  Your Airtable base must have a table with the following columns. The names must match exactly:

  Deal Name (Text)
  Client Name (Text)
  Client Email (Email)
  Status (Single-select with options: Draft,
  Approved for Invoicing, Invoiced)
  QuickBooks Customer ID (Text)
  Stripe Customer ID (Text)
  Stripe Payment Link (URL)
  QuickBooks Invoice # (Text)
  Stripe Price Id (Text - The API ID of your price in Stripe, e.g., price_123...)
  Quantity (Number)
  Quickbooks Product Name (Text)
  Created (Created Time) - This is used by the trigger.

  3. Configure the n8n Nodes
  All Airtable Nodes: In each Airtable node, select your Base and Table from the dropdown lists.
  Get all Quickbook products (HTTP Request Node):
  You must replace {YOUR_QUICKBOOKS_COMPANY_ID} in the URL with your actual QuickBooks Company ID (also known as a Realm ID).

  4. Activate the Workflow
  Save the workflow and toggle the Active switch to "on". The workflow will now trigger whenever the Created field is updated for a record in your Airtable base.

  Customization Guidance
  Changing the Trigger Status: If you use a different status than "Approved for Invoicing," simply update the value in the "IF - Status Check" node.
  Modifying Invoice Details: You can customize the Description or other line item details in the "Create an invoice" (QuickBooks) node by pulling more fields from your Airtable record.
  Adding Email Notifications: To notify a customer when their invoice is ready, add a Gmail or SendGrid node after the last Airtable Update node. You can include the Stripe Payment Link and a PDF of the QuickBooks invoice directly in the email.
  Advanced Error Handling: For a production environment, consider connecting the false output of the various IF nodes or using the .onError() workflow setting to send a Slack or email alert if a customer can't be found or an API call fails.

  Support
  For further support, or to develop a custom workflow, reach out to:

  Website: https://www.intuz.com/n8n-workflow-automation-templates
  Email: getstarted@intuz.com
  LinkedIn: https://www.linkedin.com/company/intuz
  Get Started: https://n8n.partnerlinks.io/intuz

  For Custom Worflow Automation
  Click here- Get Started

nodes_used:
  ["n8n-nodes-base.airtableTrigger","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.merge","n8n-nodes-base.stripe","n8n-nodes-base.if","n8n-nodes-base.stripe","n8n-nodes-base.merge","n8n-nodes-base.quickbooks","n8n-nodes-base.quickbooks","n8n-nodes-base.quickbooks","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.noOp","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.merge","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.noOp","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 11272 characters]

metadata_json:
  {"categories":["Data Processing","Finance","Marketing"],"complexity":"medium","use_cases":["automate invoice creation","sync CRM and billing data","generate payment links","manage sales-to-cash cycle","update customer records"],"estimated_setup_minutes":15,"required_services":["Airtable","QuickBooks","Stripe"],"key_features":["cross-platform synchronization","conditional invoicing logic","automated record creation","payment link generation","data merging across services"],"target_audience":["accountants","sales managers","business owners"]}


name: Smart helpdesk ticket alerts from Easy Redmine to Teams with GPT-4 summaries
author_name: Easy8
author_username: easy8
categories: []
created_at: 2025-08-12T13:12:42.398Z
updated_at: 2025-08-12T13:12:42.398Z
url: https://n8n.io/workflows/7292
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  Automated Helpdesk Ticket Alerts to Microsoft Teams from Easy Redmine

  Intro/Overview
  This workflow automatically posts a Microsoft Teams message whenever a new helpdesk ticket is created in Easy Redmine. It’s perfect for IT teams who want real-time visibility into new issues without constantly checking ticket queues or inboxes. By integrating Easy Redmine with Teams, this setup ensures tickets are discussed and resolved faster, improving both response and resolution times.

  How it works

  Catch Easy Webhook – New Issue Created  
     Triggers whenever Easy Redmine sends a webhook for a newly created ticket.  
     Uses the webhook URL generated from Easy Redmine’s webhook settings.

  Get a new ticket by ID  
     Fetches full ticket details (subject, priority, description) via the Easy Redmine API using the ticket ID from the webhook payload.

  Pick Description & Create URL to Issue  
     Extracts the ticket description.  
     Builds a direct link to the ticket in Easy Redmine for quick access.

  AI Agent – Description Processing  
     Uses an AI model to summarize the ticket and suggest possible solutions based on the issue description.

  MS Teams Message to Support Channel  
     Formats and sends the ticket details, priority, summary, and issue link into a designated Microsoft Teams channel.  
     Uses the Teams message layout for clarity and quick scanning.

  How to Use

  Import the workflow into your n8n instance.
  Set up credentials:
     Easy Redmine API credentials with permission to read helpdesk tickets.
     Microsoft Teams credentials for posting messages to a channel.
  Configure Easy Redmine webhook 
  	To trigger on ticket creation events. 
  	Insert n8n webhook URL to your active Easy Redmine Webhook which can be created at https://easy-redmine-application.com/easy_web_hooks
  Adjust node settings:
     In the webhook node, use your Easy Redmine webhook URL.
     In the “Get a new ticket by ID” node, insert your API endpoint and authentication.
     In the Teams message node, select the correct Teams channel.
  Adjust timezone or scheduling if your team works across different time zones.
  Test the workflow by creating a sample ticket in Easy Redmine and confirming that it posts to Teams.

  Example Use Cases

  IT Helpdesk**: Notify the support team immediately when new issues are logged.
  Customer Support Teams**: Keep the entire team updated on urgent tickets in real time.
  Project Teams**: Ensure critical bug reports are shared instantly with the right stakeholders.

  Requirements

  Easy Redmine application
  Easy Redmine technical user for API calls with “read” permissions on tickets
  Microsoft Teams technical user for API calls with “post message” permissions
  Active n8n instance

  Customization

  Change the AI prompt to adjust how summaries and solutions are generated.
  Modify the Teams message format (e.g., bold priority, add emojis for urgency).
  Add filters so only high-priority or specific project tickets trigger notifications.
  Send alerts to multiple Teams channels based on ticket type or project.

  Workflow Improvement Suggestions:  
  Rename nodes for clarity (e.g., “Fetch Ticket Details” instead of “get-one-issue”).  
  Ensure no private ticket data is exposed beyond intended recipients.  
  Add error handling for failed API calls to avoid missing ticket alerts.

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.microsoftTeams","@easysoftware/n8n-nodes-easy-redmine.easyRedmine","n8n-nodes-base.webhook","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.agent"]

workflow_json_compressed:
  [encoded data, 4728 characters]

metadata_json:
  {"categories":["IT Support","DevOps"],"complexity":"medium","use_cases":["Real-time ticket notifications","Instant issue alerts","IT team coordination","New ticket summarization"],"estimated_setup_minutes":30,"required_services":["Easy Redmine","Microsoft Teams","GPT-4"],"key_features":["AI-driven ticket summarization","Automated channel posting","Custom ticket filtering","One-click ticket creation"],"target_audience":["IT administrators","DevOps engineers","Helpdesk managers"]}


name: Easy Redmine and Microsoft Teams workflow template
author_name: Easy8
author_username: easy8
categories: []
created_at: 2025-08-12T13:33:52.014Z
updated_at: 2025-08-12T13:33:52.014Z
url: https://n8n.io/workflows/7293
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  This workflow contains community nodes that are only compatible with the self-hosted version of n8n.

  Daily Easy Redmine Task Digest to Microsoft Teams Channel

  Overview  
  This workflow automatically collects newly assigned Easy Redmine tasks for a specific team and sends a concise, formatted summary to a Microsoft Teams channel each weekday morning. It’s designed to keep your team updated without manual copy-pasting or sifting through outdated information.  

  Perfect for project managers, team leads, or consultants using Easy Redmine, this automation ensures that no high-priority or recent tasks are missed, improving transparency and daily planning.  

  How it works  

  Daily Trigger (8:30 AM on workdays):** Initiates the automation at a fixed schedule.  
  Get Issues by Query:** Easy Redmine node retrieves all issues matching a saved filter   
  Split Out Issues:** Breaks the received array of tasks into individual items for separate processing.  
  Keep Relevant Fields & Add Link:** Filters to essential data (ID, author, subject, description) and creates a clickable issue link using URL concatenation.  
  Run for Each Task:** Iterates over tasks to process and send individually.  
  Message into Team Channel:** Uses the Microsoft Teams node to post formatted HTML content into the chosen channel.  

  How to Use  

  Import the workflow into your n8n instance.  
  Set up Easy Redmine credentials with API access. 
  Add or configure your Easy Redmine API credential. 
  Set up Microsoft Teams credentials with API access.  
  Add or configure your Microsoft Teams OAuth2 API credential.
  Adjust the saved filter in Easy Redmine to match your team’s needs.  
  Update Teams channel or chat selection in the final node.  
  Modify the scheduled trigger time if desired.  
  Test with a smaller query before enabling full automation.  

  Example Use Cases  

  Daily Team Stand-ups:** Provide an automated pre-meeting digest of all new or updated tasks.  
  Consulting Project Management:** Keep consultants aware of the latest client requests.  
  Support Teams:** Quickly distribute newly assigned tickets without manual coordination.  

  Requirements  

  Easy Redmine account with API access and permission to use saved filters.  
  Microsoft Teams account with permission to post to the target channel.    

  Customization  

  Adjust the saved filter in Easy Redmine to target different teams, statuses, or update windows.  
  Change the schedule to match your meeting cadence (daily, twice daily, etc.).  
  Alter the HTML formatting for better readability or company branding.  
  Add more fields from Easy Redmine (priority, due date, etc.) for richer summaries.  

  Workflow Improvement Suggestions:  
  Rename generic nodes like “manual” and “get-manyissues” to descriptive titles (e.g., “Filter Fields & Build Link”).  
  Remove any real names or project-specific data before publishing.  
  Consider adding error handling if Easy Redmine or Teams API calls fail.

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","@easysoftware/n8n-nodes-easy-redmine.easyRedmine","n8n-nodes-base.splitOut","n8n-nodes-base.set","n8n-nodes-base.microsoftTeams","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.splitInBatches"]

workflow_json_compressed:
  [encoded data, 4192 characters]

metadata_json:
  {"categories":["Communication","Project Management","Data Processing"],"complexity":"medium","use_cases":["automated task daily summary","team notifications","redmine task consolidation","scheduled email replacement"],"estimated_setup_minutes":15,"required_services":["Redmine","Microsoft Teams"],"key_features":["scheduled automated execution","new task filtering","formatted message formatting","team-wide dissemination"],"target_audience":["project managers","ops engineers","team leads"]}


name: Classify Emails and Send Replies with GPT-4o and gotoHuman for Supervision
author_name: gotoHuman
author_username: gotohuman
categories: []
created_at: 2025-08-12T16:58:54.311Z
updated_at: 2025-08-12T16:58:54.311Z
url: https://n8n.io/workflows/7301
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
description:
  Let AI classify your incoming emails and draft replies.
  Use gotoHuman to approve emails before they are sent out. It also lets you manually edit the draft or even ask for a retry.

  How it works
  The workflow is triggered for each new email which gets passed to an AI classification agent.
  It assigns the email to one of the categories defined in the prompt (Customer Support, Sales opportunity, Promo, Personal,...). The agent also determines whether a reply is needed and if it is important.
  If a reply is needed, we ask the AI Email Writer to draft a response. Even if it is missing context it can help us draft an outline for the response.
  The email draft is sent to gotoHuman where the reviewer can manually edit it or ask to regenerate it with the option to even edit the prompt (Retries loop back to the AI Email Writer node)


  Approved email replies are automatically sent from the workflow

  How to set up

  Most importantly, install the gotoHuman node before importing this template!
  (Just add the node to a blank canvas before importing)
  Set up your credentials for gotoHuman, OpenAI, and Gmail
  In gotoHuman, select and create the pre-built review template "Email agent" or import the ID: v81wzxwYoFYvWpmuIBgX
  Select this template in the gotoHuman node

  Requirements

  You need accounts for
  gotoHuman (human supervision)
  OpenAI (classification, drafting)
  Gmail

  How to customize

  Change the predefined categories in the prompt of the AI classification agent
  Provide the AI Email Writer with more context to create replies. Consider adding tools that allow the agent to fetch more infos about clients, your calendar, FAQs for your product,...

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.gmailTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.noOp","n8n-nodes-base.set","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.switch","n8n-nodes-base.noOp","@gotohuman/n8n-nodes-gotohuman.gotoHuman","n8n-nodes-base.switch","n8n-nodes-base.gmail","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5768 characters]

metadata_json:
  {"categories":["AI/ML","Communication","Productivity"],"complexity":"medium","use_cases":["Automate email classification","Generate email responses","Human-in-the-loop email approval","Prioritize incoming messages"],"estimated_setup_minutes":15,"required_services":["OpenAI GPT-4o API","newline.email","gotoHuman"],"key_features":["LLM-based email categorization","Structured output parsing","Approval workflow builder","Manual edit capability","Retry trigger mechanism"],"target_audience":["customer support teams","sales professionals","administrators"]}


name: Scrape Blog Articles into AI-Generated LinkedIn Posts with GPT-4o & Human Review
author_name: gotoHuman
author_username: gotohuman
categories: []
created_at: 2025-08-12T22:59:51.218Z
updated_at: 2025-08-12T22:59:51.218Z
url: https://n8n.io/workflows/7310
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:20
description:
  Auto-detect news from n8n and turn into a human-approved LinkedIn post.
  gotoHuman is used to keep a human in the loop. There you can manually edit the AI draft of the post or request to regenerate it.

  How it works
  The workflow is triggered each day to fetch the latest version of https://blog.n8n.io.
  It then fetches each article, checks if it was published in the last 24 hours and uses an LLM to summarize it.
  An LLM then drafts a related LinkedIn post which is sent to gotoHuman for approval. In gotoHuman, the reviewer can manually edit it or ask to regenerate it with the option to even edit the prompt (Retries loop back to the AI Draft LinkedIn Post node)


  Approved Posts are automatically published to LinkedIn

  How to set up

  Most importantly, install the gotoHuman node before importing this template!
  (Just add the node to a blank canvas before importing)
  Set up your credentials for gotoHuman, OpenAI, and LinkedIn
  In gotoHuman, select and create the pre-built review template "Blog scraper agent" or import the ID: sMxevC9tSAgdfWsr6XIW
  Select this template in the gotoHuman node

  Requirements

  You need accounts for
  gotoHuman (human supervision)
  OpenAI (summary, draft)
  LinkedIn

  How to customize

  Change the blog URL to monitor. Adapt to its' HTML structure
  Provide the AI Draft LinkedIn Post with examples of previous posts so it picks up your writing style (consider adding gotoHuman's dataset of approved examples)
  Use the workflow to target other publications, like your newsletter, blog or other socials

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.splitOut","n8n-nodes-base.html","n8n-nodes-base.httpRequest","n8n-nodes-base.html","n8n-nodes-base.httpRequest","n8n-nodes-base.html","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.set","n8n-nodes-base.linkedIn","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.splitInBatches","n8n-nodes-base.switch","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@gotohuman/n8n-nodes-gotohuman.gotoHuman","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6484 characters]

metadata_json:
  {"categories":["Marketing","Communication","Content Creation"],"complexity":"medium","use_cases":["generate social content","automate news summarization","human approve AI drafts","create LinkedIn posts"],"estimated_setup_minutes":15,"required_services":["n8n","gotohuman"],"key_features":["AI summarizes news","human-in-the-loop approval","content regeneration on request","LinkedIn integration","scheduled execution"],"target_audience":["content managers","social media managers","marketing teams"]}


name: Automated LinkedIn Lead Generation & DM Outreach with Airtable, and Unipile.
author_name: Ruben AI
author_username: rubenai
categories: []
created_at: 2025-08-13T04:56:51.552Z
updated_at: 2025-08-13T04:56:51.552Z
url: https://n8n.io/workflows/7311
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:20
description:
  LinkedIn DM Automation

  Overview
  Effortlessly scale personalized LinkedIn outreach using a no-code automation stack. This template provides a powerful, user-friendly system for harvesting leads from LinkedIn posts and managing outreach—all within Airtable and n8n.

  Features & Highlights

  Actionable Input:** Simply enter a LinkedIn post URL to kickstart the engine—no browser scraping or manual work needed.

  Lead Harvesting:** Automatically scrape commenters, likers, and profile data using Unipile’s API access.

  Qualification Hub:** Easily review and qualify leads right inside Airtable using custom filters and statuses.

  Automated Campaign Flow:** n8n handles the sequence—from sending connection requests (adhering to LinkedIn limits) to delivering personalized DMs upon acceptance.

  Unified Dashboard:** Monitor campaign progress, connection status, and messaging performance in real time.

  Flexible & Reusable:** Fully customizable for your own messaging, filters, or UD campaigns—clone, adapt, and deploy.

  Why Use This Template?

  ++Zero-code friendly:++ Ideal for entrepreneurs, sales professionals, and growth teams looking for streamlined, scalable outreach.

  ++Transparent and compliant:++ Built with Airtable UI and compliant API integration—no reliance on browser automation or unofficial methods.

  ++Rapid Deployment:++ Clone and launch your automation in under 30 minutes—no dev setup required.

  Setup Instructions

  Import the template into your n8n workspace.

  Connect your Airtable and Unipile credentials.

  Configure LinkedIn post input, filters, and DM templates in Airtable.

  Run the workflow and monitor results directly from Airtable or n8n.

  Use Cases

  Capture inbound leads from your viral LinkedIn posts.

  Qualify and nurture prospects seamlessly without manual follow-ups.

  Scale outreach with precision and personalization.

  YouTube Explanation

  You can access the video explanation of how to use the workflow: Explanation Video

nodes_used:
  ["n8n-nodes-base.switch","n8n-nodes-base.webhook","n8n-nodes-base.airtable","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.filter","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.limit","n8n-nodes-base.set","n8n-nodes-base.airtable","n8n-nodes-base.limit","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.airtable","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.merge","n8n-nodes-base.limit","n8n-nodes-base.airtable","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.httpRequest","n8n-nodes-base.splitInBatches","n8n-nodes-base.noOp","n8n-nodes-base.filter","n8n-nodes-base.limit","n8n-nodes-base.limit","n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.airtable","n8n-nodes-base.noOp","n8n-nodes-base.noOp","n8n-nodes-base.filter","n8n-nodes-base.limit","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.airtable","n8n-nodes-base.splitInBatches","n8n-nodes-base.noOp","n8n-nodes-base.noOp","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.airtable","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.merge","n8n-nodes-base.airtable","n8n-nodes-base.set","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.set","n8n-nodes-base.aggregate","n8n-nodes-base.airtable","n8n-nodes-base.splitOut","n8n-nodes-base.set","n8n-nodes-base.splitInBatches","n8n-nodes-base.limit","n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.splitInBatches","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.airtable","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.airtable","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.limit","n8n-nodes-base.filter","n8n-nodes-base.splitInBatches","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.airtable","n8n-nodes-base.filter","n8n-nodes-base.noOp","n8n-nodes-base.limit","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.splitInBatches","n8n-nodes-base.splitInBatches","n8n-nodes-base.airtable","n8n-nodes-base.splitInBatches","n8n-nodes-base.stickyNote","n8n-nodes-base.noOp","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.airtable","n8n-nodes-base.filter","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.airtable","n8n-nodes-base.limit","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.wait"]

workflow_json_compressed:
  [encoded data, 10808 characters]

metadata_json:
  {"categories":["Marketing","Lead Generation"],"complexity":"medium","use_cases":["scrape LinkedIn posts","harvest contact data","automate DM outreach","manage lead lists"],"estimated_setup_minutes":10,"required_services":["LinkedIn","Airtable","Unipile"],"key_features":["input via post URL","profile data extraction","batch processing","conditional logic"],"target_audience":["marketers","sales reps","growth hackers"]}


name: Automate Marketing Campaigns with Airtable CRM & Brevo Email Tracking
author_name: Guy
author_username: guy
categories: []
created_at: 2025-08-13T08:54:45.509Z
updated_at: 2025-08-13T08:54:45.509Z
url: https://n8n.io/workflows/7318
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  🎯 General principles

  This template automates the management of marketing campaign from a CRM based on Airtable, using Brevo for sending and tracking emails.

  🧩 It is based on two main steps:
  Sending emails to targeted companies in Airtable, creating an interaction record for each sent email.

  Real-time tracking of events (email delivered / opened / clicked, unsubscribe request) via a n8n webhook, updating the corresponding interaction or company record.

  This workflow provides precise tracking of marketing actions and facilitates the history of interactions with prospects or clients.

  Prerequisites
  Airtable with at least 3 tables:
  Company: Contains information about your clients or prospects.
  Interaction: Log of exchanges and events.
  Campaign: Information about the ongoing campaign.

  Brevo:
  A predefined email template, which can include a link to a form.
  API access for sending and tracking emails.

  ⚙️ Step-by-step description
  1️⃣ Sending Emails
  Selecting targeted companies
  The workflow queries the Company table in Airtable, filtering on a tag or a specific field related to the campaign (e.g., Campaign = "1").
  Preparing data for Brevo
  For each company, retrieves the necessary information: email address.
  Sending the email via Brevo
  Uses a Brevo Send Template node with a predefined template.
  Brevo returns a unique identifier for each email sent.
  Creating an interaction in Airtable
  A record is added to the Interaction table containing:
  Company
  Date and time of interaction
  Media = email
  Brevo email identifier
  2️⃣ Tracking Events
  Receiving Brevo events
  Brevo triggers a webhook to n8n for each event:
  Delivered
  Opened
  Clicked
  Unsubscribed
  Matching with the interaction
  Based on the Brevo identifier received, the workflow finds the corresponding Interaction in Airtable.
  Updating the interaction
  The interaction status is updated based on the event (e.g., "Opened" with date and time).
  Managing unsubscribes
  In case of an unsubscribe:
  The workflow finds the Company associated via the interaction.
  A specific field in the Company table (e.g., Opt-in) is updated to "No" in order to exclude this company from future campaigns.
  ✅ Benefits of this template
  Automated sending and real-time tracking.
  Interaction history stored in the CRM.
  RGPD (European regulations) compliance through automatic unsubscribe management.
  Clear view of campaign effectiveness (open rates, clicks, etc.).

  📬 Contact
  Need help customizing this (e.g., expanding Data Tables, connecting multiple surveys, or automating follow-ups)?

  📧 smarthome.smartelec@gmail.com
  🔗 guy.salvatore
  🌐 smarthome-smartelec.fr

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","n8n-nodes-base.stickyNote","n8n-nodes-base.sendInBlue","n8n-nodes-base.set","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook","n8n-nodes-base.switch","n8n-nodes-base.set","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4768 characters]

metadata_json:
  {"categories":["Marketing"],"complexity":"medium","use_cases":["send targeted campaigns","track email interactions","update CRM records","manage lead engagement"],"estimated_setup_minutes":15,"required_services":["Airtable","Brevo"],"key_features":["batch sending","real-time event tracking","automated record updates","template management"],"target_audience":["marketers","sales teams","admins"]}


name: Automate expense reporting from Airtable to QuickBooks
author_name: Intuz
author_username: intuz
categories: []
created_at: 2025-08-13T12:56:59.149Z
updated_at: 2025-08-13T12:56:59.149Z
url: https://n8n.io/workflows/7324
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  This n8n template from Intuz provides a complete solution to automate your expense approval and accounting process. 

  It seamlessly connects an Airtable base, where expenses are submitted, to your QuickBooks account, eliminating manual data entry and ensuring financial records are always up-to-date.

  Who's this workflow for?
  Accountants & Bookkeepers
  Small Business Owners
  Finance Teams
  Operations Managers

  How it works
  1. Trigger on New Expense: The workflow starts automatically when a new expense record is added to your Airtable base.

  2. Filter for Approval: It checks if the expense's Status field is marked as "Approved". Unapproved items are ignored.

  3. Create Expense in QuickBooks: For every approved item, the workflow creates a new expense record in QuickBooks, mapping data like amount, date, vendor, and accounts directly from Airtable.

  4. Download and Upload Receipt: It downloads the receipt from the URL provided in Airtable and uploads it as an attachment to the corresponding expense record in QuickBooks.

  5. Update Airtable Status: Once the expense and receipt are successfully logged in QuickBooks, the workflow updates the record's Status in Airtable to "Done", closing the loop.

  Setup Instructions
  1. Airtable Configuration:
  Create an Airtable base with a table for your expenses. Ensure your table includes the following columns: Status, Receipt URL, Amount, Date, Memo, QBO Vendor ID, QBO Expense Account ID, and QBO Payment Account ID.
  Connect your Airtable account to n8n.
  In the Airtable Trigger, Search records, and Update record nodes, select your credentials and specify your Base ID and Table ID.

  2. QuickBooks Configuration:
  Connect your QuickBooks account to n8n using OAuth2 credentials.
  In the QBO-Create Expense and QBO-Upload File nodes, replace {YOUR_QUICKBOOKS_COMPANY_ID} in the URL with your actual QuickBooks Company ID.
  Ensure the Vendor ID and Account IDs in your Airtable records correspond to valid IDs in your QuickBooks account.

  3. Activate Workflow:
  Save the workflow and toggle the "Active" switch to ON. Your expense management is now fully automated!

  Connect with us:
  Website: https://www.intuz.com/n8n-workflow-automation-templates
  Email: getstarted@intuz.com
  LinkedIn: https://www.linkedin.com/company/intuz
  Get Started: https://n8n.partnerlinks.io/intuz

  For Custom Worflow Automation
  Click here- Get Started

nodes_used:
  ["n8n-nodes-base.airtableTrigger","n8n-nodes-base.airtable","n8n-nodes-base.if","n8n-nodes-base.noOp","n8n-nodes-base.httpRequest","n8n-nodes-base.merge","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6268 characters]

metadata_json:
  {"categories":["Data Processing","DevOps","Accounting"],"complexity":"medium","use_cases":["Automate expense reporting","Sync expense data","Streamline approval process","Import expenses to QuickBooks","Conduct expense analysis"],"estimated_setup_minutes":5,"required_services":["Airtable","QuickBooks","Google Sheets"],"key_features":["Integrate Airtable and QuickBooks","Automate manual data entry","Ensure real-time financial updates","Route approval requests","Filter and merge expense records"],"target_audience":["Accountants","Bookkeepers","Business Owners"]}


name: CYBERPULSE AI GRC: Automate Security Questionnaire Responses
author_name: Adnan Tariq
author_username: adnantariq
categories: []
created_at: 2025-08-14T03:29:59.817Z
updated_at: 2025-08-14T03:29:59.817Z
url: https://n8n.io/workflows/7349
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:22
description:
  Description

  Automates vendor/customer security questionnaire responses. It ingests a questionnaire (Sheet/CSV/XLSX), matches each question to your approved answers and evidence, and writes a clean “Auto-Fill” sheet ready to review and send back. Optional alerts nudge reviewers and track progress to completion.

  Who’s It For

  GRC / Compliance teams responding to customer security reviews

  Security engineers and sales engineers supporting questionnaires

  Startups that need fast, consistent, audit-ready answers

  How It Works

  Trigger

  Run manually, on a schedule, or when a questionnaire file/row is added.

  Ingest & Normalize

  Reads questions from Google Sheets/CSV/XLSX.

  Normalizes columns (e.g., question, category, customer_notes) and de-duplicates.

  Classify

  Detects question type (Yes/No, multi-select, free text).

  Tags topics (encryption, access control, incident response, privacy, HR, etc.).

  Answer Retrieval

  Looks up approved answers from your Answer Library sheet (mapped by keywords/category/control).

  Falls back to templates (short form/long form) when no exact match exists.

  Evidence Linking

  Inserts Drive links for policies, diagrams, SOC2/ISO docs (from your evidence folder).

  Adds version/date so reviewers can verify what was sent.

  Auto-Fill Output

  Writes a new sheet with columns like:
  question, proposed_answer, rationale/notes, evidence_link, control_ref, owner, status, confidence, last_updated.

  Review & Notifications

  Emails the reviewer/owner with a link to the output sheet for quick approval edits.

  Status can move from draft → reviewed → ready to send.

  Export

  Optional export to CSV/XLSX to match customer’s template.

  Optional PDF of responses for audit trail.

  Requirements

  Google Sheets & Drive credentials

  Destination Sheet & Evidence folder (env vars used in the template):

  GSHEET_ID, GSHEET_SHEET

  DRIVE_FOLDER_ID (or keep SANITIZED and set after import)

  Alert email: GRC_ALERT_EMAIL

  File Templates

  GRC_SQ_AutoFill_Template.xlsx – target sheet with the output columns above

  Answer_Library.xlsx / Sheet tab – key-value pairs: keywords/category → approved answers

  Control_Mapping.xlsx / Sheet tab – optional mapping to ISO 27001, SOC2, NIST CSF

  Output

  A populated Auto-Fill sheet ready to review/share

  Evidence links with versioning

  Email notification to the reviewer with next steps

  Customization Tips

  Add your framework tags (ISO/SOC2/NIST) to enable quick mapping in the output.

  Set owners per topic (e.g., “Encryption → Security Eng”, “Privacy → Legal”).

  Add a confidence score threshold to flag answers needing human review.

  Enable “strict mode” to prevent sending answers without evidence links.

  Schedule a weekly run to pre-fill common questionnaires and keep answers fresh.

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.googleSheets","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.merge","n8n-nodes-base.code","n8n-nodes-base.gmail","n8n-nodes-base.googleDrive","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE52W3W4bNxCFX0XYa1HlP7m6qpHWrgskRuM2BVL4YkgO5YXlXXW1dmIYAvoOfcM+SUlJ1kqKZLm9EWBzeOab4fBwn4sqFONi/nD+xZ3fmg9X/u63i/anYljcYwfF+Lmo6nkHtcfLHKcjxigZQEBnJS2NMMi1NDqWgYJUsVSIXkPpmYYYo8VoDWjNpVJOh1gshkUN95ikLj6+G/zz19+Da/QPbdU9DX55wHlXNXUNVYuDs4euOa+m00TSwWRejP94XqFOfr5u1Z/vv3x+tJ+qu/as2Ci+a+5n0yqzDj7ifNbUAdu06luEDsNZl0I45YpQS6j8lbIxN2PFRtKqzynsYRZOhy1uUrYm4BYP48KlBljCS9RESpTEqWiJxBiMUSp6gz3j7+hum+YuV/U0y/+obU2WisTBHEdfNuuzZl7ldqRMhGlJh8zSlH0dsDwNYEIGERVhpgxEgpQEtBPESCtloBKQq6wEbUreYZuonxerzJ/SX0txvhiuC0GkpVZBE+qDJ1JHTcByIBRAiFKDp2j7Qi6aZjLFwfUtYjc/Ws5kGbUJ2qmJb2p6FVCO9AaRowMa0RKXq5YgAgGFglAaDAWmnZSmR/wxVN3gvMJpOA44x26Py/CExU9iiZHcYBkBApXlJFCeziFQShyThjBEYFanppaxx7qaYX122RN9n5C+67GmUE/8LVT1qMmB1R6etG/CYyO7wWM8MHBBEWN5mlAuFHGm5ASkpw50jID6yMGy/3GydPifzpQhN55FTlxkZSoPMIFFQYSjUTvvPQre013Go0RV3J8wyt80YXzUXwJROpVmC0m2LSKZSbOG0hLBnOMGI5Z8q1fvsZ3gUaD79epOb7h+w2j1PMwztAIDQQhptFI3iBUOCaYbryxYq7nYdsBwHMevFrdoZL6B8nR/NjTJyA0LuSceJJHJ9wigoUR575SN4EvwW5N0D9X0+ACtV7d4tH7h2Xa50ipgGGKqHpMvgbPEonPph6XRVZZF6U663IhtighKKU+pJpwpl4qAJOUCEhOi4U4oo7cNe30dfmirx+OtXV2Gl5idGZRvcznRm4m3lmM6bGZ9ekVENhOqIkGPClDEEG3Z4113lb97GnxouuN082XMOmQbLvdbfjuPhW/qDuv8EBbf+Ep+AcF3udJxhOkch0Xy0K6qJ8ut+DU951n/qs2v77h4ZFnjcbV/eZ4ufSwYzx1JVaXzRCNygZIYb1SwXCVDzwUmiBp9lloKp4ufftPMZPL09ub6jnn8MmqYvlwCfi3GdHFzkxCWd+OQxN6YHty8uuiHdu9euYOb14Z/MPcRs93XGW527FnObiBbJXz5yHgl4948H+Te7u0hqf2H7KDITr6TLXib2Dr2kNr2+3Bagh3UeLXFS5nF4l9YlJN8OAsAAA==

metadata_json:
  {"categories":["GRC","Compliance","Data Processing"],"complexity":"medium","use_cases":["automate security questionnaire responses","match questions to approved answers","generate clean submission documents","track questionnaire completion progress"],"estimated_setup_minutes":25,"required_services":["Google Sheets","Google Drive","AI/ML service"],"key_features":["question-to-answer matching","evidence file management","auto-generation of submission sheets","progress tracking","reviewer notifications"],"target_audience":["GRC analysts","compliance officers","security engineers"]}


name: Create a Self-Hosted Blockchain Payment Processor with x402 and 1Shot API
author_name: 1Shot API
author_username: oneshotapi
categories: []
created_at: 2025-08-14T05:17:29.215Z
updated_at: 2025-08-14T05:17:29.215Z
url: https://n8n.io/workflows/7364
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
description:
  This workflow contains community nodes that are only compatible with the self-hosted version of n8n.

  Self-Hosted x402 Facilitator

  In the x402 payment protocol, a facilitator is a role which helps sellers settle stablecoin payments onchain without dealing with blockchain complexities. This workflow allows you to run your own fully-featured, specification-compliant facilitator in n8n. You might want to do this if you want to accept payments in tokens not supported by existing facilitators or as your own business!

  Details

  A facilitator supports three routes: /verify, /settle, and /supported. These routes are all created for you in this workflow with proper error handling and responses. 

  A seller will first hit /verify with their payment details to ensure the payment information is correct. Next they will hit the /settle endpoint with the same payment information to settle the paymet on the blockchain. The /supported endpoint is used to indicate to sellers which blockchains you choose to support in a programatic fashion.

  Setup

  Create a 1Shot API account
  Create 1Shot API wallets for the networks where you wish to facilitate token payments and load them with sufficient gas tokens.
  Using 1Shot Prompts, import the transferWithAuthorization functions for the tokens you will settle payments for.
  Import this workflow into n8n and create a credential to link the 1Shot API community node to your 1Shot API business account.
  Enter the token and network information into the payment token and network configuration nodes indicated by the sticky nodes.
  Turn on your workflow and settle payments!

nodes_used:
  ["n8n-nodes-1shot.oneShot","n8n-nodes-base.webhook","n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-1shot.oneShotSynch","n8n-nodes-base.if","n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.if","n8n-nodes-base.code","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 7844 characters]

metadata_json:
  {"categories":["Blockchain","Payment Processing","DevOps"],"complexity":"medium","use_cases":["settle stablecoin payments","build custom facilitator nodes","process unlisted tokens"],"estimated_setup_minutes":25,"required_services":["x402 API","1Shot API","Websocket Gateway"],"key_features":["self-hosted区块链 facilitator","custom payment protocol validation","stabilcoin settlement automation"],"target_audience":["blockchain developers","payment engineers","self-hosting admins"]}


name: Automated content strategy with Google Trends, News, Firecrawl & Claude AI
author_name: Allan Vaccarizi
author_username: growthai
categories: []
created_at: 2025-08-14T09:22:16.685Z
updated_at: 2025-08-14T09:22:16.685Z
url: https://n8n.io/workflows/7372
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:19
description:
  📺 Full walkthrough video: https://youtu.be/dXz5OTbm4c8

  Automated trend monitoring for content strategy

  Who's it for
  Content creators, marketers, and social media managers who want to stay ahead of emerging trends and generate relevant content ideas based on data-driven insights.

  What it does
  This workflow automatically identifies trending topics related to your industry, collects recent news articles about these trends, and generates content suggestions. It transforms raw trend data into actionable editorial opportunities by analyzing search volume growth and current news coverage.

  How it works
  The workflow follows a three-step automation process:
  Trend Analysis: Examines searches related to your topics and identifies those with the strongest recent growth
  Article Collection: Searches Google News for current articles about emerging trends and scrapes their full content
  Content Generation: Creates personalized content suggestions based on collected articles and trend data
  The system automatically excludes geo-localized searches to provide a global perspective on trends, though this can be customized.

  Requirements
  SerpAPI account (for trend and news data)
  Firecrawl API key (for scraping article content from Google News results)
  Google Sheets access
  AI model API key (for content analysis and recommendations - you can use any LLM provider you prefer)

  How to set up

  Step 1: Prepare your tracking sheet
  Duplicate the Google Sheets template by opening this link: https://docs.google.com/spreadsheets/d/1Jh4sbjFcvVvDg52YFKo4aMyk2TQboyATDvWGCVTgj3U then click on File → Make a copy. Rename your copy and ensure it's accessible.

  Step 2: Configure API credentials
  Before running the workflow, set up the following credentials in n8n:
  SerpAPI: For trend analysis and Google News search
  Firecrawl API: For scraping article content
  AI Model API: For content analysis and recommendations (Anthropic Claude, OpenAI GPT, or any other LLM provider)
  Google Sheets OAuth2: For accessing and updating your tracking spreadsheet

  Step 3: Configure your monitoring topics
  In your Google Sheet "Query" tab:

  Query column: Enter the main topics/keywords you want to monitor for trending queries (e.g., "digital marketing", "artificial intelligence", "sustainable fashion")
  Query to avoid column: Optionally add specific queries you want to exclude from trend analysis (e.g., brand names, irrelevant terms, or overly specific searches that don't match your content strategy)

  This step is crucial as these queries will be the foundation for discovering related trending topics.

  Step 4: Configure the workflow
  In the "Get Query" node, paste your duplicated Google Sheets URL in the "Document" field
  Ensure your Google Sheet contains your monitoring topics in the Query column

  Step 5: Customize language and location settings

  The workflow is currently configured for French content and France location. You can modify these settings in the SerpAPI nodes:
  Language (hl): Change from "fr" to your preferred language code
  Geographic location (geo/gl): Change from "FR" to your target country code
  Date range: Currently set to "today 1-m" (last month) but can be adjusted

  Step 6: Adjust filtering (optional)
  The "Sorting Queries" node excludes geo-localized queries by default. You can modify the AI agent's instructions to include location-specific queries or change filtering criteria based on your requirements. The system will also automatically exclude any queries you've listed in the "Query to avoid" column.

  Step 7: Configure scheduling (optional)
  The workflow includes an automated scheduler that runs monthly (1st day of each month at 8 AM). You can modify the cron expression 0 8 1 * * in the Schedule Trigger node to change:
  Frequency (daily, weekly, monthly)
  Time of execution
  Day of the month

  How to customize the workflow
  Change trend count: The workflow processes up to 10 related queries per topic but filters them through AI to select the most relevant non-geolocalized ones
  Adjust article collection: Currently collects exactly 3 news articles per query for analysis
  Content style: Customize the AI prompts in content generation nodes to match your brand voice
  Output format: Modify the Google Sheets structure to include additional data points
  AI model: Replace the Anthropic model with your preferred LLM provider
  Scraping options: Configure Firecrawl settings to extract specific content elements from articles

  Results interpretation
  For each monitored topic, the workflow generates a separate sheet named by month and topic (e.g., "January Digital Marketing") containing:
  Data structure (four columns):
  Query: The trending search term ranked by growth
  Évolution: Growth percentage over the last month
  News: Links to 3 relevant news articles
  Idée: AI-generated content suggestions based on comprehensive article analysis
  The workflow provides monthly retrospective analysis, helping you identify emerging topics before competitors and optimize your content calendar with high-potential subjects.

  Workflow limitations
  Processes up to 10 related queries per topic with AI filtering
  Collects exactly 3 news articles per query
  Results are automatically organized in monthly sheets
  Requires stable internet connection for API calls

nodes_used:
  ["n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.lmChatAnthropic","n8n-nodes-serpapi.serpApi","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.code","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.if","n8n-nodes-base.googleSheets","n8n-nodes-base.code","n8n-nodes-serpapi.serpApi","n8n-nodes-serpapi.serpApi","n8n-nodes-serpapi.serpApi","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.googleSheets","n8n-nodes-base.merge","n8n-nodes-base.switch","@mendable/n8n-nodes-firecrawl.firecrawl","n8n-nodes-base.code","n8n-nodes-base.code","@mendable/n8n-nodes-firecrawl.firecrawl","@mendable/n8n-nodes-firecrawl.firecrawl","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.lmChatAnthropic","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets"]

workflow_json_compressed:
  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

metadata_json:
  {"categories":["Marketing","Communication","AI/ML"],"complexity":"medium","use_cases":["Monitor industry trends","Generate content ideas","Collect news articles","Create content suggestions"],"estimated_setup_minutes":45,"required_services":["Google Trends","news services","Firecrawl","Claude AI (Anthropic)","SerpAPI","Spreadsheets"],"key_features":["Automated trend identification","News article aggregation","Content suggestion generation","Data-driven insights","Scheduled execution"],"target_audience":["Content creators","Marketers","Social media managers"]}


name: Generate a hierarchical sitemap from a URL into Google Sheets using Firecrawl
author_name: Allan Vaccarizi
author_username: growthai
categories: []
created_at: 2025-08-14T11:35:55.742Z
updated_at: 2025-08-14T11:35:55.742Z
url: https://n8n.io/workflows/7379
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  📺 Full walkthrough video: https://youtu.be/yjeKYfZP0kU

  &gt; ⚠️ Self-hosted only — This template uses a community node (@mendable/n8n-nodes-firecrawl) and cannot run on n8n Cloud.

  Who it's for

  This workflow is for SEO consultants, web agencies, and technical teams who need to quickly audit or document a website's URL structure and export it into a clean, hierarchical spreadsheet.

  How it works

  A chat message is received containing the target website URL.
  Firecrawl maps the website via its sitemap and retrieves all available URLs.
  An IF node checks whether the Firecrawl response was successful; if not, the workflow stops with an error.
  On success, a Google Drive template file is copied to serve as the destination spreadsheet.
  A custom JavaScript node parses the crawled URLs, groups them by domain/subdomain, and structures them into a hierarchical table (up to 6 depth levels: Niv 0 to Niv 5) with HYPERLINK formulas.
  The structured rows are appended to the copied Google Sheet.

  How to set up

  [ ] Connect your Firecrawl credentials with a valid API key
  [ ] Set the Google Drive template file ID to copy for each run
  [ ] Connect your Google Sheets credentials and verify the target sheet name (FR)
  [ ] Review the Organize URLs into Table Format code node if you need to adjust the depth logic or output columns

  Requirements

  Self-hosted n8n instance
  Firecrawl account and API key
  Google Drive and Google Sheets OAuth2 credentials

  How to customize

  Modify the JavaScript code node to add URL filtering, deduplication, or category tagging before writing to the sheet.
  Extend the sheet schema beyond 5 depth levels if your website has a deeper URL hierarchy.
  Replace the chat trigger with a form or webhook to allow non-technical users to submit URLs for crawling.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.googleDrive","n8n-nodes-base.googleSheets","n8n-nodes-base.code","@mendable/n8n-nodes-firecrawl.firecrawl","n8n-nodes-base.stopAndError","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 7856 characters]

metadata_json:
  {"categories":["Data Processing","SEO Tools","Communication"],"complexity":"medium","use_cases":["Generate sitemaps from URLs","Audit website structures","Export hierarchical data to spreadsheets"],"estimated_setup_minutes":15,"required_services":["Google Sheets","Firecrawl","Google Drive","Communication"],"key_features":["Hierarchical sitemap generation","URL structure auditing","Spreadsheet export automation"],"target_audience":["SEO consultants","web agencies","technical teams"]}


name: RAG chat assistant with Claude, Supabase vector store, and Postgres memory
author_name: Allan Vaccarizi
author_username: growthai
categories: []
created_at: 2025-08-14T12:20:23.845Z
updated_at: 2025-08-14T12:20:23.845Z
url: https://n8n.io/workflows/7381
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  📺 Full walkthrough video: https://youtu.be/Z_l_T22px3U

  Who it's for

  This workflow is for developers and AI builders who want to deploy a context-aware chat assistant powered by a private knowledge base. It suits teams that need persistent conversation memory and retrieval-augmented generation (RAG) on their own infrastructure.

  How it works

  The Chat Trigger listens for incoming user messages and forwards them to the AI Agent.
  The AI Agent (Claude Sonnet 4) orchestrates the response generation.
  Postgres Chat Memory stores and retrieves the conversation history, enabling multi-turn dialogue.
  The Supabase Vector Store is queried as a tool to retrieve relevant documents from the knowledge base.
  OpenAI Embeddings convert the user query into vectors used for the Supabase similarity search.
  Claude synthesizes context from memory and retrieved documents to produce a final response.

  How to set up

  [ ] Add your Anthropic API key to the Claude Sonnet 4 Model node
  [ ] Add your OpenAI API key to the Generate OpenAI Embeddings node
  [ ] Configure your Supabase project URL, API key, and target table name
  [ ] Configure the Postgres Chat Memory node with your PostgreSQL database credentials
  [ ] Optionally set authentication on the Chat Trigger node

  Requirements

  Anthropic account (Claude Sonnet 4)
  OpenAI account (text-embedding model)
  Supabase project with a vector-enabled table
  PostgreSQL database for session memory

  How to customize

  Swap Claude for OpenAI GPT-4 or another LLM supported by n8n
  Replace Supabase Vector Store with Pinecone, Qdrant, or another vector database
  Use a unique session key per user to support isolated multi-user conversations

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.memoryPostgresChat","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.lmChatAnthropic","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5740 characters]

metadata_json:
  {"categories":["AI/ML","Communication","Data Processing"],"complexity":"medium","use_cases":["build private chat assistants","deploy context-aware AI agents","implement RAG workflows","manage persistent conversation memory"],"estimated_setup_minutes":45,"required_services":["Anthropic Claude","Supabase","PostgreSQL"],"key_features":["retrieval-augmented generation","persistent conversation memory","vector store management","AI agent orchestration","private knowledge base integration"],"target_audience":["developers","ai engineers","ml builders"]}


name: Sync Webflow form leads to Pipedrive with Discord and Gmail notifications
author_name: Allan Vaccarizi
author_username: growthai
categories: []
created_at: 2025-08-14T12:33:03.040Z
updated_at: 2025-08-14T12:33:03.040Z
url: https://n8n.io/workflows/7382
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  Who it's for

  This workflow is for sales and marketing teams using Webflow as their primary lead capture tool and Pipedrive as their CRM. It automates the entire lead intake process, from form submission to CRM entry and team notification, eliminating manual data entry.

  How it works

  A Webflow form submission triggers the workflow and captures lead fields (name, company, email, phone, website URL, message).
  Key fields are mapped and phone numbers are cleaned and formatted with the correct international dial code using a custom code node.
  The workflow searches Pipedrive for an existing organization matching the company name. If none is found, a new one is created. Results are aggregated.
  It then searches for the contact person by name. If found, their record is updated; if not, a new person is created and linked to the organization.
  A new lead is created in Pipedrive associating the person and organization.
  In parallel: a Discord message notifies the team, a Gmail confirmation email is sent to the lead, and — if a website URL was provided — the organization's URL field in Pipedrive is updated.

  How to set up

  [ ] Connect your Webflow OAuth2 credentials and configure the Form Trigger with the correct site
  [ ] Add Pipedrive API credentials to all Pipedrive nodes
  [ ] Add Discord Bot credentials and set the target server and channel in the Notify Team on Discord node
  [ ] Add Gmail OAuth2 credentials and adjust the email subject and body in Send Confirmation Email
  [ ] Review the Format Phone Numbers code node to confirm the country detection logic matches your audience
  [ ] Adjust the Filter Valid Organization URL conditions if needed

  Requirements

  Webflow account with a published form
  Pipedrive CRM account
  Discord server with a bot token
  Gmail account with OAuth2 access

  How to customize

  Extend the Set Contact Fields node to map additional Webflow form fields into Pipedrive custom properties.
  Replace the Gmail node with a SendGrid or SMTP node to use a transactional email service instead.
  Add a Slack node alongside or instead of Discord for team notifications if your team uses Slack.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.pipedrive","n8n-nodes-base.if","n8n-nodes-base.code","n8n-nodes-base.pipedrive","n8n-nodes-base.pipedrive","n8n-nodes-base.if","n8n-nodes-base.pipedrive","n8n-nodes-base.pipedrive","n8n-nodes-base.aggregate","n8n-nodes-base.aggregate","n8n-nodes-base.discord","n8n-nodes-base.pipedrive","n8n-nodes-base.pipedrive","n8n-nodes-base.webflowTrigger","n8n-nodes-base.gmail","n8n-nodes-base.filter","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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

metadata_json:
  {"categories":["Marketing"],"complexity":"medium","use_cases":["lead capture","customer onboarding","automated notifications"],"estimated_setup_minutes":15,"required_services":["Webflow","Pipedrive","Discord","Gmail"],"key_features":["multi-channel notifications","form data validation","CRM automation"],"target_audience":["marketing managers","sales representatives"]}


name: Send task completion email to customers via Motion API and Gmail
author_name: Allan Vaccarizi
author_username: growthai
categories: []
created_at: 2025-08-14T12:49:34.783Z
updated_at: 2025-08-14T12:49:34.783Z
url: https://n8n.io/workflows/7383
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  📺 Full walkthrough video: https://youtu.be/-xqjoUvbXbs

  Who it's for

  This workflow is for agencies or freelancers — such as Growth AI — who manage client projects in Motion and want to automatically notify customers when a project task has been completed, without any manual follow-up.

  How it works

  A schedule trigger fires daily between the 10th and 31st of each month at 8 AM.
  Active customer records are retrieved from an n8n Data Table and filtered to include only rows where the last notification was sent before the current month.
  Eligible rows are processed in batches of 10 in a loop.
  For each customer, the Motion API is queried to fetch their workspace projects, filtered for those in a "Todo" state.
  The workflow then queries the Motion API again to check whether the associated task is marked as completed.
  If the task is completed, a notification email is sent to the customer via Gmail.
  The Data Table row is updated with the current timestamp, and the loop continues.

  How to set up

  [ ] Configure the Schedule Trigger with your desired run interval
  [ ] Connect the Data Table nodes to your n8n data table containing customer records
  [ ] Add your Motion API key as an HTTP Header Auth credential (X-API-Key)
  [ ] Connect your Gmail OAuth2 credential to the Send Email node
  [ ] Customize the email subject and body in the Send Email to Customer node
  [ ] Adjust the Filter Todo Projects node to match your Motion project and status naming

  Requirements

  Motion account with API access
  Gmail account with OAuth2 credentials
  n8n Data Table with customer records (ClientName, MotionID, ClientMail, Active, LastSent)

  How to customize

  Replace the Gmail node with Outlook, SendGrid, or another email provider to match your stack.
  Adjust the Filter Eligible Rows logic to change the notification frequency (e.g., weekly instead of monthly).
  Extend the email template in Send Email to Customer to include task details, project names, or a link to a client portal.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.splitInBatches","n8n-nodes-base.filter","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.gmail","n8n-nodes-base.dataTable","n8n-nodes-base.dataTable","n8n-nodes-base.filter","n8n-nodes-base.scheduleTrigger"]

workflow_json_compressed:
  H4sIAAAAAAAAE7WXS28bRwzHv8pCZ40xD87Lx6ZOYaBtijTppfBhHhx7a0mratdNjMDfvVw1jbfKSLLU9iJDo1nyRy75J/1ptsQhzC4/zdpVP4RVwus8u5wpr1LwqEwQxYnIiwGVrLReejBBF9QIHiM4A4J+D8CVRE1/nLROGjV7ms9WXcZ+dvkrmR5NgrAcpIzMlIgMXHDMcxWZ8tKh0lJkgBk9FZZIt38e2nT/2PzYDSgUHQ+P6/F45VZsa5fF0ONFv701XqIr665vh7ZbkUvphZyDMDd0GjZkccBNPwaZutWAq4EsjYSj0V/ol+1D4mn+mTQ4RKuINJbAGeSSmXNBMyguozC2xLSH1JxHys/j1N6VxB3lMRfDQBRkQSjHQlFcWChJFl3lPJlS+LMhg3WgkyU0byODFANzRkeWHL13KhZQrtSTeTIl1ddcOncmp4/ea6mYCRkYGNQsoBDMSgFRozdKqyqnPD2bSrp/ASpKUQEK4y5lBtZ6FhVE5ngBcAqlC6IKekYbcUMZ1We2EaEkmyJnPmZ689lm8pYc07ZIsCjG7qqCwumg4PhcwpklKrMryDn1u9LU78aZsfMlcQfUNlEYST6Dft916+bNH7hprgdc9k27ar4JQ7rDvulKI/h++PWiHa5Xny/vloQ1NcHahVZfoAsk7zMklkmmGQDJqQue6hUDeJe1tGIiUq/bBVls3nW5a37adL9hGvq9oGV7eQfQ2aqi7gLKC/kFkadkFEjBdMqWAYZERUoFEH3WHrWXoCYt9RopL80P3ejwOOPdMKzf4u8P2A87oEbtA8WPmB4GfENDbnY5bB5whx0m7JnnIEKWJPrJM4hWscDVqGI5OJp7KRi7h/1d6O/PAJeiPrN2MzylDCGWjIYaSxIg+FH8pQHmrU85KENTdaIF12XL1rR986pbrhfkIe/lbMsOniJ1PbEANAeVVdRMODUOKEvaL4xmOaUskrKZG5woAK5yc7UM7aIZuubVQz90y20Z1gFvx5s7jJqE9S/GDxjvuu5+u8yM45yqLTAelaD+NoI2D5FZzpoHS4Vo5ViHR8KazF0VSdYwsGIoIqBvLIzrTKFZZ+lNxMwnwvYdDs3b7kPflE23bL4NQ6C3EBf7h3CmK3/fmATn4UX5f8Yk7aI1hlP1aksTjdayMfuRWa94LikKFyeY79fkF0fSUdHOx6RCfJGSPXOSimWZNTIeEsmvt4UFEFQqnjYHQeOH9syvlOxq0d625Hyb2tOUTLwMUF48iy3NqqJTKAyVTSS2AIwqWtBHsdEaY+1Uya5oODxSCh+bMBwcCDQH8sMC323a29tdTKtfpAaC2o3u0JxbkV7S0Xbs7RLQEXXLaJa28ZHgRXW5fWRO/xhk/Di75E83N+S9InU164e1pm659mZrtl8+gQ/5+ecsrPk5pOpVy9Wga5aPSd1X1uf/XfTVMVsN/+DOUDW+J66a9eN6U/Wwt2oPRLBHK6r292L9D4V49PGJz2kFHNmUKr6env4EAtyixOgPAAA=

metadata_json:
  {"categories":["Communication","Project Management"],"complexity":"medium","use_cases":["Automate customer notifications","Notify on task completion","Schedule monthly reminders","Filter active clients"],"estimated_setup_minutes":15,"required_services":["Motion","Gmail","Google Sheets"],"key_features":["Scheduled triggers","Data filtering","Batch processing","Email automation"],"target_audience":["agencies","freelancers","project managers"]}


name: Scrape URLs from Google Sheets and save as Markdown to Google Drive
author_name: Allan Vaccarizi
author_username: growthai
categories: []
created_at: 2025-08-14T13:00:56.819Z
updated_at: 2025-08-14T13:00:56.819Z
url: https://n8n.io/workflows/7384
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:19
description:
  📺 Full walkthrough video: https://youtu.be/x3PDYon4qKk

  ⚠️ Self-hosted only — This template uses a community node (Firecrawl) and cannot run on n8n Cloud.

  Who it's for

  This workflow is for content teams, SEO specialists, and developers who need to batch-scrape web pages and store their content as clean Markdown files — without manually copying and reformatting text from each URL.

  How it works

  A chat message triggers the workflow. The URL in the chat input points to a Google Sheet containing the list of URLs to scrape.
  All rows are read from the sheet, then filtered to keep only rows with a non-empty URL and no existing scraping status.
  Valid URLs are processed in configurable batches using a loop node.
  Each URL is scraped with Firecrawl, which extracts the full web page content.
  A code node cleans the raw Markdown: it removes links, standalone URLs, navigation labels, and excess whitespace.
  The cleaned Markdown file is saved to a specified Google Drive folder.
  The corresponding row in Google Sheets is updated with an "OK" status to prevent re-scraping on future runs.

  How to set up

  [ ] Connect your Google Sheets OAuth2 credential and configure the sheet containing the URLs
  [ ] Connect your Firecrawl API credential for web scraping
  [ ] Connect your Google Drive OAuth2 credential and set the destination folder ID
  [ ] Ensure the Google Sheet has a URL column and a Scraped column
  [ ] (Optional) Adjust the batch size in the loop node to control throughput

  Requirements

  Google Sheets account
  Google Drive account
  Firecrawl API key (community node — self-hosted n8n only)

  How to customize

  Replace the chat trigger with a Schedule Trigger for fully automated periodic scraping.
  Modify the Transform Scraped Content code node to enrich the Markdown (e.g. add metadata headers, extract specific sections).
  Add a Slack or email notification step after the loop completes to report how many URLs were successfully scraped.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chatTrigger","@mendable/n8n-nodes-firecrawl.firecrawl","n8n-nodes-base.googleSheets","n8n-nodes-base.filter","n8n-nodes-base.googleDrive","n8n-nodes-base.googleSheets","n8n-nodes-base.code","n8n-nodes-base.splitInBatches","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5200 characters]

metadata_json:
  {"categories":["Data Processing","Automation","Web Scrapping"],"complexity":"medium","use_cases":["batch scrape web pages\",\"store content as markdown\",\"process Google Sheets URLs"],"estimated_setup_minutes":25,"required_services":["Google Sheets API","Google Drive API","Firecrawl"],"key_features":["batch processing URLs from spreadsheet\",\"extraction of web page content as markdown\",\"automation of content team workflows"],"target_audience":["content team members","SEO specialists","developers"]}


name: Monthly Google Ads performance report sync to Google Sheets
author_name: Allan Vaccarizi
author_username: growthai
categories: []
created_at: 2025-08-14T13:18:09.081Z
updated_at: 2025-08-14T13:18:09.081Z
url: https://n8n.io/workflows/7387
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  Who it's for
  This workflow is for digital marketing agencies or in-house PPC managers who handle multiple Google Ads accounts and need to consolidate monthly campaign performance data into Google Sheets automatically.

  How it works
  A schedule trigger fires on the 3rd of each month at 10 AM to start the reporting process.
  A Google Sheets node reads the list of clients (including their Customer IDs) from a source sheet.
  A loop iterates over each client one by one, sending a POST request to the Google Ads API (searchStream endpoint) to retrieve last month's campaign metrics (cost, clicks, impressions, conversions, conversion value).
  A JavaScript code node flattens and transforms the raw API response, normalizing cost from micros and rounding numeric values.
  The processed rows are appended to a dedicated per-client tab in the same Google Sheet.
  A wait node pauses execution between each client iteration to respect API rate limits before looping back.

  How to set up
  [ ] Duplicate the template spreadsheet : Google Sheets Template and save it to your Google Drive
  [ ] Connect your Google Sheets OAuth2 credentials and set the correct spreadsheet and source sheet (client list)
  [ ] Connect your Google Ads OAuth2 credentials in the HTTP Request node
  [ ] Replace the developer-token and login-customer-id header values with your own
  [ ] Ensure each client tab in the spreadsheet is named Data {Client} to match the dynamic sheet name
  [ ] Adjust the Wait node delay if needed to avoid rate limiting

  Requirements
  Google Ads account with API access and a valid developer token
  Google Sheets account with OAuth2 credentials
  A spreadsheet with a "Client" sheet listing clients and their Customer IDs

  How to customize
  Modify the GAQL query in the HTTP Request node to pull different metrics or date ranges (e.g., LAST_7_DAYS, THIS_MONTH)
  Extend the JavaScript transformation to compute additional KPIs such as CPC or ROAS before appending to the sheet
  Add a Slack or email notification step after each client is processed to alert stakeholders when the report is ready

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.splitInBatches","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.code","n8n-nodes-base.wait"]

workflow_json_compressed:
  H4sIAAAAAAAAE62WS3PjNgzHv4pGZzPD9yO3bNrtZKbtbpNOe9jJASLBxLO25Fp008yOv3shJ7W9XjmbR0+WKQr4AfwD4Jd6jgXq0y/1tO0LtBEvUn1aq6AiBFQWRPai4dlqFZ10QQZtwWQ0qAM22lst6D1oriQa+vHSeWlVPakLzhczKHi+xNRfYVktzjtawYLkoCxXuJ7UbZewr08/kffBazKQUCTBhHAN01kCa3iKDLOQqWm80kKQ5RbmSLuvyjR+vq9+7QqKjcP7xbDc+pZt7LIGejzpN7uGTbRl0fXTMu1acimM1xMWhLymZViSyYLLfkhE7NqCbSFT9frB6h/0ZvOVWE8eUSOPATAZpqNSTFtBqI10TGnjg4UonQrjqPaVqEJJ/zpWDMCDyMSacmC6kYY1wjpmLZoos3U+6VHWF5N67SfMvJbTBEdSsoZFFJJpbizzNmpmfKOct0JKE8dz+vKUKsvfQAqogrBKswYlCdU2yEBZy9Bwk7IQ0TUwSipfTuqcfQMpTzJqnjNTkIiUZ2C+8Ug65Q004CNEHCV9eUVJqd+SUydtNpH4AD2dPmrJgtWUYktdBaW31qUd6Y9/4/K+UstUdbn6hezfVlAqwWF+nDveYlrN8Pfl9OYGl4MtioEAa8GrtKrm3bQ/yD15njBlv4lo/fjtRft+1t09tLPDwE7kNjRLXVOhVkwpTs0CMrIAgeoRpDHgkSPIXWiXCKk6n00pY32Vl928urpFLP3RwG667maG2037AVjOjwXwFa0+cVtaobihaiONOOOpZ8TIQA/n0jiTdUiR87yj/bnrFtUHOo3/kI/nfzGblov2HRQ6iENQL/WzQNUWU3uDPgbNlMyEqcEznwkz8NyQ5I2QYq8GP3Z9qX7aJKo6S33124r0cxT1tpTFJf61wr4caJzb53HqEzmpYXYH9/2HVVmsyg8wjNmHufcYgRTWex4tS5bEroP2rDE6sBQUZpW8gbyX6LPFAtu0gR9sVaV7vS6kDvbFujDouHII1EVwKNAUWBj+euAi0YiJaPZw39Psp6Kvzj5eVJfYL7q2x+qCLgXHeSM9HrYUf7QAv+Lc1VpsMmlBNCxTi2baGcW8w8ScDCJJq2PCvYb3J0xL9Q7LHRLqTpnjfHe0+YDPyW193WFz23WfN9enTMMAXKBaF3Qn0ICCsuQMM2E4Wq1TyEN/fTIkcSLWZJZ6Z4tx8Ldppd+WGy3OYTrQfLqe0E1qAP6+4DefTOjSl/Cf+pSvr6/J/2g29uxvjT9R9KOGx2HGLD9HNqMujnbN/4P/eO2NWX9aVKMOnhhnYx6+PyJGvTyR3DEvz+g4I27W638B0/NlkFQMAAA=

metadata_json:
  {"categories":["Marketing"],"complexity":"medium","use_cases":["generate monthly performance reports","automate client data consolidation","sync Google Ads metrics to spreadsheets"],"estimated_setup_minutes":30,"required_services":["Google Ads API","Google Sheets"],"key_features":["scheduled automation","multi-client iteration","batch processing","automated reporting","spreadsheet synchronization"],"target_audience":["PPC managers","digital marketing agencies"]}


name: LLM Usage Tracker & Cost Monitor with Node-Level Analytics (v2)
author_name: Amir Safavi-Naini
author_username: amirsafavi
categories: []
created_at: 2025-08-14T20:13:23.211Z
updated_at: 2025-08-14T20:13:23.211Z
url: https://n8n.io/workflows/7398
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:20
description:
  LLM Cost Monitor & Usage Tracker for n8n

  &gt; v2: Now it can read multiple types of LLM usages. Better dynamic approach for reading model usage. 

  🎯 What This Workflow Does

  This workflow provides comprehensive monitoring and cost tracking for all LLM/AI agent usage across your n8n workflows. It extracts detailed token usage data from any workflow execution and calculates precise costs based on current model pricing. 

  The Problem It Solves
  When running LLM nodes in n8n workflows, the token usage and intermediate data are not directly accessible within the same workflow. This monitoring workflow bridges that gap by:
  Retrieving execution data using the execution ID
  Extracting all LLM usage from any nested structure
  Calculating costs with customizable pricing
  Providing detailed analytics per node and model
  WARNING: it works after the full execution of the workflow (i.e. you can't get this data before completion of all tasks in the workflow)

  ⚙️ Setup Instructions

  Prerequisites
  Experience Required: Basic familiarity with n8n LLM nodes and AI agents
  Agent Configuration: In your monitored workflows, go to agent settings and enable "Return Intermediate Steps" 
  For getting execution data, you need to set upthe  n8n API in your instance (also available onthe  free version) 

  Installation Steps
  Import this monitoring workflow into your n8n instance
  Go to Settings &gt;&gt; select n8n API from left bar &gt;&gt; define an API. Now you can add this as the credential for your "Get an Execution" node
  Configure your model name mappings in the "Standardize Names" node
  Update model pricing in the "Model Prices" node (prices per 1M tokens)
  To monitor a workflow:
     Add an "Execute Workflow" node at the end of your target workflow
     Select this monitoring workflow
     Important: Turn OFF "Wait For Sub-Workflow Completion"
     Pass the execution ID as input

  🔧 Customization

  When You See Errors
  If the workflow enters the error path, it means an undefined model was detected. Simply:
  Add the model name to the standardize_names_dic 
  Add its pricing to the model_price_dic
  Re-run the workflow

  Configurable Elements
  Model Name Mapping**: Standardize different model name variations (e.g., "gpt-4-0613" → "gpt-4")
  Pricing Dictionary**: Set costs per million tokens for input/output
  Extraction Depth**: Captures tokens from any nesting level automatically

  📊 Output Data

  Per LLM Call
  Cost Breakdown**: Prompt, completion, and total costs in USD
  Token Metrics**: Prompt tokens, completion tokens, total tokens
  Performance**: Execution time, start time, finish reason
  Content Preview**: First 100 chars of input/output for debugging
  Model Parameters**: Temperature, max tokens, timeout, retry count
  Execution Context**: Workflow name, node name, execution status
  Flow Tracking**: Previous nodes chain

  Summary Statistics
  Total executions and costs
  Breakdown by model type
  Breakdown by node
  Average cost per call
  Total execution time

  ✨ Key Benefits

  No External Dependencies**: Everything runs within n8n
  Universal Compatibility**: Works with any workflow structure
  Automatic Detection**: Finds LLM usage regardless of nesting
  Real-time Monitoring**: Track costs as workflows execute
  Debugging Support**: Preview actual prompts and responses
  Scalable**: Handles multiple models and complex workflows

  📝 Example Use Cases

  Cost Optimization**: Identify expensive nodes and optimize prompts
  Usage Analytics**: Track token consumption across teams/projects
  Budget Monitoring**: Set alerts based on cost thresholds
  Performance Analysis**: Find slow-running LLM calls
  Debugging**: Review actual inputs/outputs without logs
  Compliance**: Audit AI usage across your organization

  🚀 Quick Start

  Import workflow
  Update model prices (if needed)
  Add monitoring to any workflow with the Execute Workflow node
  View detailed cost breakdowns instantly

  Note: Prices are configured per million tokens. Default includes GPT-4, GPT-3.5, Claude, and other popular models. Add custom models as needed.

nodes_used:
  ["n8n-nodes-base.n8n","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.stopAndError","n8n-nodes-base.if","n8n-nodes-base.merge","n8n-nodes-base.code","n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.code"]

workflow_json_compressed:
  [encoded data, 6360 characters]

metadata_json:
  {"categories":["Data Processing","DevOps","AI/ML"],"complexity":"medium","use_cases":["track LLM token usage","monitor AI AI model costs","analyze workflow execution details","calculate LLM expenses","generate usage reports"],"estimated_setup_minutes":30,"required_services":["OpenAI","Anthropic","Google Vertex AI","AWS Bedrock","Azure AI","MongoDB","PostgreSQL"],"key_features":["multi-model cost tracking","token usage extraction","detailed execution analytics","dynamic pricing calculation","automatic report generation"],"target_audience":["developers","operations managers","cost analysts"]}


name: Automated Phone Interview Evaluation with Vapi, GPT-4o & Google Sheets
author_name: Robert Breen
author_username: rbreen
categories: []
created_at: 2025-08-14T21:51:28.556Z
updated_at: 2025-08-14T21:51:28.556Z
url: https://n8n.io/workflows/7401
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
description:
  This n8n workflow template automatically processes phone interview transcripts using AI to evaluate candidates against specific criteria and saves the results to Google Sheets. Perfect for HR departments, recruitment agencies, or any business conducting phone screenings.

  What This Workflow Does

  This automated workflow:
  Receives phone interview transcripts via webhook
  Uses OpenAI GPT models to analyze candidate responses against predefined qualification criteria
  Extracts key information (name, phone, location, qualification status)
  Automatically saves structured results to a Google Sheet for easy review and follow-up

  The workflow is specifically designed for driving job interviews but can be easily adapted for any position with custom evaluation criteria.

  Tools & Services Used

  N8N** - Workflow automation platform
  OpenAI API** - AI-powered transcript analysis (GPT-4o-mini)
  Google Sheets** - Data storage and management
  Webhook** - Receiving transcript data

  Prerequisites

  Before implementing this workflow, you'll need:

  N8N Instance - Self-hosted or cloud version
  OpenAI API Account - For AI transcript processing
  Google Account - For Google Sheets integration
  Phone Interview System - That can send webhooks (like Vapi.ai)

  Step-by-Step Setup Instructions

  Step 1: Set Up OpenAI API Access

  Visit OpenAI's API platform
  Create an account or log in
  Navigate to API Keys section
  Generate a new API key
  Copy and securely store your API key

  Step 2: Create Your Google Sheet

  Option 1: Use Our Pre-Made Template (Recommended)
  Copy our template: Driver Interview Results Template
  Click "File" → "Make a copy" to create your own version
  Rename it as desired
  Copy your new sheet's URL - you'll need this for the workflow

  Option 2: Create From Scratch
  Go to Google Sheets
  Create a new spreadsheet
  Name it "Driver Interview Results" (or your preferred name)
  Set up the following column headers in row 1:
     A1: name
     B1: phone
     C1: cityState
     D1: qualifies
     E1: reasoning
  Copy the Google Sheet URL - you'll need this for the workflow

  Step 3: Import and Configure the N8N Workflow

  Import the Workflow
     Copy the workflow JSON from the template
     In your N8N instance, go to Workflows → Import from JSON
     Paste the JSON and import

  Configure OpenAI Credentials
     Click on either "OpenAI Chat Model" node
     Set up credentials using your OpenAI API key
     Test the connection to ensure it works

  Configure Google Sheets Integration
     Click on the "Save to Google Sheets" node
     Set up Google Sheets OAuth2 credentials
     Select your spreadsheet from the dropdown
     Choose the correct sheet (usually "Sheet1")

  Update the Webhook
     Click on the "Webhook" node
     Note the webhook URL that n8n generates
     This URL will receive your transcript data

  Step 4: Customize Evaluation Criteria

  The workflow includes predefined criteria for a Massachusetts driving job. To customize for your needs:

  Click on the "Evaluate Candidate" node
  Modify the system message to include your specific requirements
  Update the evaluation criteria checklist
  Adjust the JSON output format if needed

  Current Evaluation Criteria:
  Valid Massachusetts driver's license
  No felony convictions
  Clean driving record (no recent tickets/accidents)
  Willing to complete background check
  Can pass drug test (including marijuana)
  Available full-time Monday-Friday
  Lives in Massachusetts

  Step 5: Connect to Vapi.ai (Phone Interview System)

  This workflow is specifically designed to work with Vapi.ai's phone interview system. Here's how to connect it:

  Setting Up the Vapi Integration

  Copy Your N8N Webhook URL
     In your n8n workflow, click on the "Webhook" node
     Copy the webhook URL (it should look like: https://your-n8n-instance.com/webhook-test/351ffe7c-69f2-4657-b593-c848d59205c0)

  Configure Your Vapi Assistant
     Log into your Vapi.ai dashboard
     Create or edit your phone interview assistant
     In the assistant settings, find the "Server" section
     Set the Server URL to your n8n webhook URL
     Set timeout to 20 seconds (as configured in the workflow)

  Configure Server Messages
     In your Vapi assistant settings, enable these server messages:
       end-of-call-report
       transcript[transcriptType="final"]

  Set Up the Interview Script
     Use the provided interview script in your Vapi assistant (found in the workflow's system message)
     This ensures consistent data collection for the AI evaluation

  Expected Data Format from Vapi

  The workflow expects Vapi to send data in this specific format:

  {
    "body": {
      "message": {
        "artifact": {
          "transcript": "AI: Hi. Are you interested in driving for Bank of Transport?\nUser: Yes.\nAI: Great. Before we go further..."
        }
      }
    }
  }

  Vapi Configuration Checklist

  ✅ Webhook URL set in Vapi assistant server settings
  ✅ Server messages enabled: end-of-call-report, transcript[transcriptType="final"]
  ✅ Interview script configured in assistant
  ✅ Assistant set to send webhooks on call completion

  Alternative Phone Systems

  If you're not using Vapi.ai, you can adapt this workflow for other phone systems by:
  Modifying the "Edit Fields2" node to extract transcripts from your system's data format
  Updating the webhook data structure expectations
  Ensuring your phone system sends the complete interview transcript

  Step 6: Test the Workflow

  Test with Sample Data
     Use the "Execute Workflow" button with test data
     Verify that data appears correctly in your Google Sheet
     Check that the AI evaluation logic works as expected

  End-to-End Testing
     Send a test webhook with a real transcript
     Monitor each step of the workflow
     Confirm the final result is saved to Google Sheets

  Workflow Node Breakdown

  Webhook - Receives transcript data from your phone system
  Edit Fields2 - Extracts the transcript from the incoming data
  Evaluate Candidate - AI analysis using GPT-4o-mini to assess qualification
  Convert to JSON - Ensures proper JSON formatting with structured output parser
  Save to Google Sheets - Automatically logs results to your spreadsheet

  Customization Options

  Modify Evaluation Criteria
  Edit the system prompt in the "Evaluate Candidate" node
  Add or remove qualification requirements
  Adjust the scoring logic

  Change Output Format
  Modify the JSON schema in the "Structured Output Parser" node
  Update Google Sheets column mapping accordingly

  Add Additional Processing
  Insert nodes for email notifications
  Add Slack/Discord alerts for qualified candidates
  Integrate with your CRM or ATS system

  Troubleshooting

  Common Issues:
  OpenAI API Errors**: Check API key validity and billing status
  Google Sheets Not Updating**: Verify OAuth permissions and sheet access
  Webhook Not Receiving Data**: Confirm URL and POST format from your phone system
  AI Evaluation Inconsistencies**: Refine the system prompt with more specific criteria

  Usage Tips

  Monitor Token Usage**: OpenAI charges per token, so monitor your usage
  Regular Review**: Periodically review AI evaluations for accuracy
  Backup Data**: Export Google Sheets data regularly for backup
  Privacy Compliance**: Ensure transcript handling complies with local privacy laws

  Need Help with Implementation?

  For professional setup, customization, or troubleshooting of this workflow, contact:

  Robert - Ynteractive Solutions
  Email**: rbreen@ynteractive.com
  Website**: www.ynteractive.com
  LinkedIn**: linkedin.com/in/robert-interactive

  Specializing in AI-powered workflow automation, business process optimization, and custom integration solutions.

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured"]

workflow_json_compressed:
  [encoded data, 5100 characters]

metadata_json:
  {"categories":["HR","Recruitment","Data Processing"],"complexity":"simple","use_cases":["automatic phone interview evaluation","candidate screening with AI","transcript analysis","database result saving"],"estimated_setup_minutes":30,"required_services":["Vapi","OpenAI (GPT-4o)","Google Sheets"],"key_features":["voicemail transcription","AI scoring","criterion evaluation","data export to spreadsheet"],"target_audience":["HR managers","recruiters","hiring teams"]}


name: Scheduled Daily Affirmations via Email and Telegram using Cron
author_name: Shelly-Ann Davy
author_username: SheCodesFlow
categories: []
created_at: 2025-08-15T09:26:15.639Z
updated_at: 2025-08-15T09:26:15.639Z
url: https://n8n.io/workflows/7421
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
description:
  Description

  Wake up gently. This elegant workflow runs every morning at 7 AM, picks one uplifting affirmation from a curated list, and delivers it to your inbox (with optional Telegram). Zero code, zero secrets—just drop in your SMTP and Telegram credentials, edit the affirmations, and activate. Perfect for creators, homemakers, and entrepreneurs who crave intention and beauty before the day begins.

  How it works (high-level steps)
  Cron wakes the flow daily at 7 AM.
  Set: Configuration stores your email, Telegram chat ID, and affirmations.
  Code node randomly selects one affirmation.
  Email node sends the message via SMTP.
  IF node decides whether to forward it to Telegram as well.
  Set-up time
  2 – 3 minutes
  30 s: add SMTP credential
  30 s: add Telegram Bot credential (optional)
  1 min: edit affirmations & email addresses
  30 s: activate

  Detailed instructions

  All deep-dive steps live inside the yellow and white sticky notes on the canvas—no extra docs needed.

  Requirements

  SMTP account (SendGrid, Gmail, etc.)
  Telegram Bot account (optional)
  Customisation tips
  Change Cron time or frequency
  Swap affirmation list for quotes, verses, or mantras
  Add Notion logger branch for journaling

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.cron","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.emailSend","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE51VSW/bVhD+Kw88JYBe8PZFl8KQXSCHpEXs9hL48JZ5CmGJVEnKtWHov3dIt/ISyVF6I8iZ+ZZZ+FDVuZpXf3zWbffXzaK1i81K9ryaVWsYQjV/qOqmH0KT4OMY55KLgoWSveIhGGM8c5JFXXhh0WcblOE8CB2ZdCI5Y3UQJWCKMKVIwbDuAOvNKgyw6CD3lzBsN4sW38AACDB0W9jNqiasAdEu0zfI2xWQHOrVPQml1N06DHXb9GRoyX277UjdxPaObPu6WZJF1zbkXbsZI8KKXMEKll1Yvx9Rw7Kv5l+vsXabYXx8eFTOk41eQKFJRkeVNpF6KwUVUWhuY2ZZymrP6MvF2fmnC0Kx9qMKcg596uoJcoS534xhjWvohENj6OFDP9Tp5v5zOwCGbNq+nqLnXynXgs0oNwx5bQJSRRe6fnQ9tc0AzYC1qt1j2T/xy5TGd7M99xQC14aC85IqJgr1IlnKmNGsyKyZgCfuoztzctXVyyV05PzR0oFYcvbpKPPUTbKec5bGzYQVrxkfZwmgIFiBLK2NVAUdaQQRqGTBS1midio8scSJmJNF25R6ue2mXpN3kOuBrOH9cYNheMVSnURS7Eky0DJ6rmkxjFOVtachIUmlGE4Dz0xb/8xKhJ6T37Gr5EtocrsmZ0+zedxMfHxJU2jzczRz8SIUoaiRRVBVmKFBRE2T11CStSypZ9P68df5fgnIRRPiCvIvR+nV5SU5rdRMOnV6oxlYnkM0VLNo0UODHspiaeHgtC+gmeVP5C7WOIFzcglNPsk9GOPH6Jcs3b7Tf0P81rY3051KyQflracSTxFudZHUOZlpDlmbAJx5ZqqTXQ/CauZLotomrFa4pU5bdJ3rmANnUfBnwv5z/Ce0Df+mfC9N89fSuIxSacHxYDmFc54VdTDSctEFr4oTzP1IGv/wJE5EC8wooBELYtecpzFroAX3wWPjXAH/Yj23G3JVb/r/c+2Ymmn/3bi/fewwOqShvkWkElY9zCrc9gHP/ZQKd5C2I8BvXYYOK9zyscbtY/5kmLBFuISKJFeGKsAnrzPOgkrRaNxuE8bJRxINpOnnMhY+vDv4AcdwVIP/j1Hzif2ekmb4L81wV83Z7voaSb51kA8BnXYaD0K9mXoI68QLd1jXm7mH0H54Cw7g7Hb/AFcxBZ68CAAA

metadata_json:
  {"categories":["Communication","Productivity"],"complexity":"simple","use_cases":["automatic morning affirmations","daily motivational messages","email delivery with telegram backup"],"estimated_setup_minutes":15,"required_services":["gmail","telegram"],"key_features":["cron scheduling","templated messages","multi-channel delivery","custom affirmation list"],"target_audience":["creators","homemakers","entrepreneurs"]}


name: Amazon Affiliate Marketing Automation
author_name: Rakin Jakaria
author_username: rakinjakaria
categories: []
created_at: 2025-08-15T09:59:49.026Z
updated_at: 2025-08-15T09:59:49.026Z
url: https://n8n.io/workflows/7422
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:22
description:
  Who this is for

  This workflow is for Amazon affiliate marketers and social media managers who want to quickly turn product links into engaging Facebook posts with AI-generated captions and images — fully automated.

  What this workflow does

  This workflow starts every time a new Product Link is added to a connected Google Sheet. It then:

  Extracts the ASIN** from the product link.
  Fetches product details** from Amazon using RapidAPI.
  Generates a short, scroll-stopping Facebook caption** with OpenRouter AI.
  Creates a product image prompt** and sends it to Google Gemini for high-quality image generation.
  Uploads the creative directly to Facebook** via the Facebook Graph API.
  Marks the Google Sheet row** as “Done ✅” after posting.

  The Facebook post includes:

  Product image (AI-enhanced)
  Short, benefit-focused caption with emojis
  Affiliate link

  Setup

  To set this template up, follow the sticky notes inside the workflow and:

  Google Sheets → Connect your sheet and ensure the columns “Product Link” & “Facebook Upload” exist.
  RapidAPI → Add your API key in the “Amazon Product Details” node.
  OpenRouter → Add credentials for caption generation.
  Google Gemini → Add your API key for image generation.
  Facebook Graph API → Connect your Facebook account for posting.

  How to customize this workflow to your needs

  Change the Facebook caption prompt to match your tone or branding.
  Adjust the AI image generation prompt to fit your preferred photography style.
  Modify the Google Sheet update logic if you want to track additional info (e.g., posting date, engagement stats).
  Switch Facebook posting to Instagram or another platform by replacing the final API call.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.convertToFile","n8n-nodes-base.facebookGraphApi","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.googleSheetsTrigger","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.googleSheets","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5836 characters]

metadata_json:
  {"categories":["Marketing"],"complexity":"medium","use_cases":["Turn product links into Facebook posts","Automate affiliate content creation","Extract and format Amazon product data"],"estimated_setup_minutes":15,"required_services":["Amazon (via RapidAPI)","Facebook Graph API","Google Sheets","OpenRouter API"],"key_features":["AI-generated post captions","Automated data extraction","Spreadsheet trigger integration","Social media post creation"],"target_audience":["Affiliate marketers","Social media managers","E-commerce managers"]}


name: Lead Generation Agent
author_name: Rakin Jakaria
author_username: rakinjakaria
categories: []
created_at: 2025-08-15T10:12:52.175Z
updated_at: 2025-08-15T10:12:52.175Z
url: https://n8n.io/workflows/7423
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  Who this is for

  This workflow is for digital marketing agencies or sales teams who want to automatically find business leads based on industry & location, gather their contact details, and send personalized cold emails — all from one form submission.

  What this workflow does

  This workflow starts every time someone submits the Lead Machine Form. It then:

  Scrapes business data* (company name, website, phone, address, category) using *Apify** based on business type & location.
  Extracts the best email address* from each business website using *Google Gemini AI**.
  Stores valid leads* in *Google Sheets**.
  Generates cold email content** (subject + body) with AI based on your preferred tone (Friendly, Professional, Simple).
  Sends the cold email** via Gmail.
  Updates the sheet** with send status & timestamp.

  Setup

  To set this workflow up:

  Form Trigger – Customize the “Lead Machine” form fields if needed (Business Type, Location, Lead Number, Email Style).
  Apify API – Add your Apify Actor Endpoint URL in the HTTP Request node.
  Google Gemini – Add credentials for extracting email addresses.
  Google Sheets – Connect your sheet for storing leads & email status.
  OpenAI – Add your credentials for cold email generation.
  Gmail – Connect your Gmail account for sending cold emails.

  How to customize this workflow to your needs

  Change the AI email prompt to reflect your brand’s voice and offer.
  Add filters to only target leads that meet specific criteria (e.g., website must exist, email must be verified).
  Modify the Google Sheets structure to track extra info like “Follow-up Date” or “Lead Source”.
  Switch Gmail to another email provider if preferred.

nodes_used:
  ["n8n-nodes-base.formTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.informationExtractor","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.filter","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.noOp","n8n-nodes-base.stickyNote","n8n-nodes-base.gmail","@n8n/n8n-nodes-langchain.informationExtractor","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5888 characters]

metadata_json:
  {"categories":["Marketing","Data Processing"],"complexity":"medium","use_cases":["generate qualified leads","scrape website data","send personalized cold emails","enrich lead information"],"estimated_setup_minutes":30,"required_services":["Apify","Google Gemini","Spreadsheets"],"key_features":["real-time lead enrichment","automated data scraping","AI-powered extraction","cold email automation","conditional workflow logic"],"target_audience":["marketing agents","sales teams","digital marketers"]}


name: Generate Weekly Grocery Lists in Notion with Automated Email Notifications
author_name: Shelly-Ann Davy
author_username: SheCodesFlow
categories: []
created_at: 2025-08-15T11:28:37.226Z
updated_at: 2025-08-15T11:28:37.226Z
url: https://n8n.io/workflows/7427
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
description:
  Who’s it for
  Busy homemakers, creators, and anyone who wants a simple, no-cost way to plan weekly meals and get a ready-to-shop grocery list—without extra apps.

  What it does
  Runs on a weekly Cron schedule, generates a grocery list, creates rows in your Notion database (Ingredient, Quantity, Status), and emails the list (optional Telegram confirmation). It includes a Notion connection check, detailed error notifications (email and optional Telegram), a success email with timestamp, and optional persistent logging to a Notion “Logs” database.

  Requirements
  Notion account + integration connected to your database  
  SMTP credentials for the Email node  
  (Optional) Telegram bot and chat ID for alerts  
  (Optional) Notion log database if you want persistent logs

  How to set up
  Import the workflow and open Set: Configuration to fill:
     fromEmail, emailTo, notifyEmail, notionDb, telegramChatId  
     (Optional) logToNotion (true/false), notionLogDb
  In Notion, create a DB with properties:
     Ingredient (Title), Quantity (Rich text), Status (Select: “To Buy”)
  Attach your Notion and SMTP credentials (and Telegram if used).
  Run once to test, then set Cron to your preferred weekly time.

  How to customize
  Edit the recipe/grocery items in the Code node.
  Change the Cron schedule (test with “Every minute,” then revert to weekly).
  Enable Telegram alerts, and/or turn on Notion logging for audit trails.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.cron","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.notion","n8n-nodes-base.if","n8n-nodes-base.emailSend","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.notion","n8n-nodes-base.set","n8n-nodes-base.emailSend","n8n-nodes-base.emailSend","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.if","n8n-nodes-base.notion","n8n-nodes-base.notion"]

workflow_json_compressed:
  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

metadata_json:
  {"categories":["Productivity","Communication","Data Processing"],"complexity":"medium","use_cases":["generate weekly shopping lists","plan meals automatically","sync data to Notion"],"estimated_setup_minutes":15,"required_services":["Notion","Email","Telegram"],"key_features":["cron-based scheduling","automated data entry in Notion","detailed error reporting","notification emails"],"target_audience":["busy homemakers","creators","personal organizers"]}


name: Daily Tech & Cyber Security Brief with RSS, OpenAI GPT-4o, and Gmail
author_name: Calistus Christian
author_username: ca7ai
categories: []
created_at: 2025-08-15T11:55:02.949Z
updated_at: 2025-08-15T11:55:02.949Z
url: https://n8n.io/workflows/7428
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:20
description:
  What this workflow does
  Pulls free security/tech headlines from multiple RSS feeds (e.g., CISA, BleepingComputer, Krebs, SecurityWeek, Ars Technica, TechCrunch, Hacker News).

  De-duplicates stories, keeps only the last 24 hours, and limits to a manageable number.

  Uses OpenAI to write a concise brief with sections and "Why it matters."

  Sends a clean HTML email via Gmail.

  Category: Security / News\
  Time to set up: ~10--15 minutes\
  Difficulty: Beginner--Intermediate\
  Cost: Mostly free (OpenAI tokens + Gmail)

  *

  What you'll need
  n8n (recent version)
  OpenAI credentials
  Gmail (or SMTP) credentials
  A few free RSS feed URLs (swap in/out as you like)

  *

  Set up steps
  Trigger -- Add a Cron to run daily (pick your time and timezone).
  Fetch -- Add one RSS Read node per source and connect all to a Merge (append).
  De-duplicate (this run) -- Add Remove Duplicates and compare on a stable key (prefer the article URL).
  Freshness -- Add an IF to pass only items published in the last 24 hours.
  Limit -- Add Limit to cap the total items (e.g., 25).
  Summarize -- Add OpenAI → Message a model to produce a JSON brief with subject + HTML body.
  Email -- Add Gmail → Send to deliver the brief to your inbox.

  *

  Tips & troubleshooting
  If everything gets discarded at de-dup e while testing, switch to "within current input" or reset the node's stored values.
  If no items pass the IF, widen the date window temporarily (some feeds publish late).
  If the email arrives blank, ensure Gmail email type is set to HTML and the subject/body fields map to the model's output.

  *

  Sources you can start with (swap freely)
  CISA, BleepingComputer, KrebsOnSecurity, SecurityWeek, Ars Technica (Security), TechCrunch (Security), Hacker News (front page).

nodes_used:
  ["n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.merge","n8n-nodes-base.rssFeedRead","n8n-nodes-base.removeDuplicates","n8n-nodes-base.if","n8n-nodes-base.limit","n8n-nodes-base.gmail","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE52X227bRhCGX0XgtTbd88FXTR00NdAmQBSkBYpc7GHWZiNRgkg5CQy/e4eSElIWKUu+sEGbw3+/ndk57ENRpuKq+Mr/bvLb2T/+v/QHGOGKabGAxhdXD0VZ1Y2vIty0dkxqH2xmEWiELENyUQfHUuCa+2RiMkYLC5xSqVRSVtjgqRKeG5BMhYi6DSxWc9/A9RpSPYNms7pe4n+gAVygWW/gcVpUfgG42htfzr9PZhA36+b75B18rdvv/W1dXP37Ga2WCdrHh90epPJJMGqIxaWI9JCJy9ISaW0S0oEOlhU/tX+bA6zK6nbSrr5pYN1Kf1+1rypbka02Cb6GV+u6/h0gfQCf0Ga1rMumXFa4LmFSTimCrPwaRVEDaR4edzqf8K+tGXvFH6d7RK1N5slZkhmXRArtiE/eE6AQuVFReCo6xOub2evJ2/efXkjGHL+EzWfgXjpKlIwB2RxHRwZHJPVBSIyoCKZja9cNm3X1Yr8poy+hU0JH6bIhOco2uFSTwKwhDOm8Zxy0dR3d63U9+QjxriqjfyGf0fYSPqOyU5kxIqSOeOTw3DkRBAEPylmXQRjo+Fq2uN5U8e6FdE5fdO6MF8igFBGZUiKD8sRmKojhQUPmUghhO7q/YH0Lo2CL/dsekqVTyZ4Np+gBCWVdNEEhgRBEKicJOoqTTBXPLjPreeyA7ir0xgs9Jay8xFOZqxS804Q7yonkDIizgRPgwdgcscJF2oF9gMXyHiZvNqs5nrQGTkBuLQ8Me6SCyqm0z4a0w0wyeqGUI44BYsbgSVAyYbJiOUFvov9yh3mTR7nKfEiiuD2LpOcyoNRaJw3RMWJqaqeIxZ5AMqcxsYiJxHuF489yUTajOPP92x6RUfysIP7kcZQyI7kmoLBKSIZxdJZKIiwmpDdCZMs7nhlUaeInC6hrf+LU3y6wFx2CMex1e7KvEO6Wyy/bFkmtNpxnT6JOWOOlySRIfEqQTQY8qIbK4ln3dtsBJyJyC8K59Vj5MpA2O4jzCbRJDCDrfu5u99HuCOHn3X5+xQ390m1q7qvbeOfL6tVyBdXr8snWsNyflzm2q9AmGq5YJJoahhWQRhKEkNhEBMU2DFrk3pG8Rgo26u2Ij4dE7qevz8wQqlzy2MCIYjljhRHYMBTzxPNgndAYkmwPcfgFOEyddyo7Hmt0BhYiUdRgCdZJYBilRm9FxxxQk1IvjLN4B2kzh8nHdXl7e6LJ1nvDzq5fAIU+K5sPCqA0yiAMSSpg9mgNxGeHyZ0tOJpjYFl2nO+W7Vg2ucGhbrz2HbuvzekzBoAeVUjSUBoITRkPl7KZ+AiYY86CCdxhM+tRzZoyfsGBcdmMJ3S9tdmb9H2G6Tnl5mh0KuKyaqBqUKkYrz2QBXbTtvgpC0RihSDBRE+MkwL5Lf7AIOd4LpwElfroCJ4HarIxQiZDYhJYtJ0VJOCuidJCZhuyjNQOgo5nyUlQrY6ifRoUrX1syntcKPt5DdOihqbBgX37KXzDS0Gr/36d8NRfFfes1bjffb+tw5pyrLiY8Y47nGdlpsRSnwkwnBnxFiNFbkERooLYSm2FsVXibyz2LTneLNr9HXet7fspXo0SfCuuKMJ2psMpcfTFZ8TdFcGh9UbL+KgOH9QZ626DMrtNDsk8qdaDX++mxqGvT0xJg0q7cW/YLevxXfC9M37cmi4WYDuB3tXmYgmxk+jN9xdLqJ3EwRXmYhH5IyaHx2gstvyZiBy1oyGhEzfqp6LTbvWjO+647ZNrwLjh0OV03Hr4sjhuP3R5G/TasUMujuNe6TiDhpT6Y/6AzOPj/9GIfwHtEQAA

metadata_json:
  {"categories":["Security","News","Communication"],"complexity":"medium","use_cases":["watch security news","generate tech briefs","send daily updates"],"estimated_setup_minutes":15,"required_services":["OpenAI","Gmail","RSS"],"key_features":["RSS aggregation","content deduplication","AI summarization","automated email delivery"],"target_audience":["security analysts","it managers","tech enthusiasts"]}


name: Automate Meeting Minutes Distribution with Google Sheets and Gmail
author_name: Yassin Zehar
author_username: yassinzehar
categories: []
created_at: 2025-08-15T12:15:06.068Z
updated_at: 2025-08-15T12:15:06.068Z
url: https://n8n.io/workflows/7429
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  Description
  This workflow sends a summary of your meeting minutes via Gmail, directly from the notes stored in your Google Sheet.

  Context
  Taking notes during meetings is important, but sharing them with the team can be time-consuming. This workflow makes it simple: just write down your meeting minutes in a Google Sheets, and n8n will automatically send them by email after each meeting.

  Who is this for?
  Perfect for anyone who:

  Uses Google Sheets to keep track of meeting notes.

  Wants to automatically share minutes with teammates or stakeholders.

  Values speed, productivity, and automation.

  Requirements

  Google account.

  Google Sheets (with your meeting minutes).  You will need to setup  the required columns first : Topic, Status, Owner, Next Step.

  Gmail.

  How it works

  ⏰ Trigger starts after a new row is added in your Google Sheet.

  📑 The meeting minutes are retrieved from the sheet.

  📨 Gmail automatically sends the minutes to the configured recipients.

  Steps
  🗒️ Use the sticky notes in the n8n canvas to:


  Add your Google credentials (Sheets + Gmail).

  Define your sheet and recipient email addresses.

  Test the workflow to check if the minutes are sent.

  You’ll get this: An email containing your full meeting minutes, straight from your notes.

  Tutorial video
  Watch the Youtube Tutorial video

  About me :
  I’m Yassin a Project & Product Manager  Scaling tech products with data-driven project management.
  📬 Feel free to connect with me on Linkedin

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.gmail","n8n-nodes-base.code","n8n-nodes-base.googleSheets"]

workflow_json_compressed:
  H4sIAAAAAAAAE5VYa3LbOBK+CpbJVuQaUeKbFKO4Kg/lNbHjiTWT7MapCUiAEmOKZEDQsqJR1f7aA+y/PcHUnmNuMifZBkBRsiI/RvohEmx0f93or7uppZYSLdTmLAl+JMaHd9GPz0cv5++0rjajHGvhUkvziuM8pq+EnOHYhu9bBFtu4kcxtgZR4tLEiizXNAIPB24SOcbAcw0be4kfmK7lEduKaEIMOyCetupqOZ5RUHVEKU/zCTpK85rTCj2ueTHDPC1y1HlRFJOMotMpyFToB/RihtPsAEBxPKm08ONSobbHfn355eTJcRp9+/o6G2mtcqUA7mNGMafkMYdFy7Bc3Qh0Mxgbfmi6oW31HM/4J4jVJbldbNVt7PrfRvM3z59mF/TDk1FMoo3diQJeCeA3W/dCy+r5rneL9Y1Ya300ePVlerJ4fcH8Zx9+mnzbWJ81IZ2pkN4MwA8Nv2fc6v5GrAXwvnpxPD55Us2ekkvXPf+6AUDFOd3Fb8e9k99CrDUbTdyn8/J5YCdPXrIXj6cbsyesIHXM04uUL+5y5oPBnc5ciLXW6eNvx6PTr29+fj9/f8RGg60zv6vTxm1mN2KrT6C+IHQr2TGNYzuyLd127Eh3LDPSI98NdOo5FnDQj33X2IA65Wl8vkDHBaem4M2iFKt5kOtSrR7hivYqKSRkQKQsqlSwDywaXQPsl5iBLk5ZJcpAXGQF00K7q01pOpkCetP3wOki5zQXvty7h97Rr3XKKDnLxVdHDY1xHBd1zhWLt9YlvUVFEOh+ATvSurk5cBzQyPRdnSRxoDsROBv5MdVtk7g0osSDorLX47/ssOVbXd12reu8trraPCV8qoWO6W0iEDjBTgTM3vuCnSdZMUecpZMJZYhyBAeO0QTzKWVATxGbsXoYoiOc1zhDzT0KEatzBIJovtaDEwCDFkWNkjRPqymas1SyXEjtMB7hnAjRP//1X0YR5CNZIF6gisIyiM96wvaxiAdK84sCChgJ1VHt4Pjz3/9BUPYZVN9tMFeOtanOnXdg5kDuKOssUxvWeBJWzAQgpkqi2L+9GyDKjJlBAKsGyTqJEMS+nuVViMZFmcZddMoxr6suejvPKeuiY3rJYY2WYtsp5XXZKDilGY25hHFaihhI0zI0YxyhDu1Nel20034OemrzKMcRoPu5ohBuVgFCcQQVmoIeylqhqob4KoBI5F+FoHXFU0QvccyzBepUJc0y0N+PIe+U8nEqEOroVSJPM8PiXOcYiIHb1teFiJQZjunugcxTPkUYncZTSmoA2CHApUV/Tul5thD6b+CR59sDBz46cT1Td7wg0aPYJbrpUJ/4NvViJ9jLI/svE8k3nBuJ5LREcj3jJiJZPThHlbWIqrpxlp/UDGzRED2p04xsE0BfJxwcRYUndDfxFAVFCkgupFzQQuxnAgAEPU7LVCTh9Qx5Couo87zOY+GrSvikYHBuFWqgo87L8dGbA2Wnjr6INIQkoA1thBuKWYChuuqaTGDUkUZEnA/EDpGFfJpWqMrTsqQS9IRC9kPqQDI0JrpIWEVRQRZdaXrjzXdhgGyu+mtirekiLSt0jWnpL3AQdKQ4AwpWilNSk5J8C/PaFMWtkKr5v+AsJTKTlWpAgxGcC1eeCgeEDlCXKH5JS1Man4OjGJiQZeua0BYA1LmlAEDAITqYNc7nQFTYyyAMQEWF6wZ2wDgL42tA9MAKBtBlHE8PYFTVPZr4VuC5GDrNhh0NH68lxkzSdiO1xQ0buGHb3i41rkc2wIER4BjrbuR6ukOAsoPEM/TAM6npExK40RZvRzLAsk58PwfuB7ueXLZADqygATmn0bQozuXYP3BMM6IUKojtOrpjEIiWgy3ddQdR5EU08iMxBF+lvMjycbE1FTbchJVHy+X9L1WR96Z8lq1W8KwoBYAmHk1ib70k5IUgNy8IXjyo1v59d6hWbxO8mMCbh0l88NS2dWcQ2DqOiaMnFvHcJAhix7S33hfWrGpJeW3QYrjcKXqWse9gtS+VoLPAAp7J3H7F6axCj9D9NC9r3oOVzsFDlaFCpshoLysmnTPtWZHnf/wPXGb0j99rClzVuuj16dtjqLxihkiTRWetr4ty6LtdZB0oXf0+itr6yEU7O8szUTzE5TsoAADgwQMQXSvoQRkb4XjaSeEOPTpEy7McbYn/8Ah9FitDzg7Fr7gih/eXQrwnj1ESFP32G+hdDfvwcL+YIvDtcpLgt4p9PNM2M4D2aVceLtjhZ3Bz1YalrZ2yYqqYcyRyEEkXh3979vbp+B8nI7kGWobtL7R/pbXii4w2gGSIVLTEJyoYlB4dylaGS9Gm1lcP1xKy94XINIy/t2szzCZpHiLLKC+R0S4n0FL0BM+gy4foMYMK20UVziu9giEyacRWDY5pF3GyCwTsgEZIqpSge0R+Wu0cAqdDrZ6A4YwmvH1QYkIgv0IUlJe7RrYM4Ph8wmCoJ7ps7CG6l1jiexX+XLb3EPBkZFvZsL+O4rDfRHYo2peKcHn4Emanojvsl5sFGLcwa+iZqXkRFcn2CBCu5VWqiqNp86Y9PnXL2mv58FCmL+TLdGdd5eueBzJB96y3+XjlmczEBkp/G8uQt16Lz/1ly7lVK76JS3/j0zos+ELMAZOiIDDgLHrDiPUPT47QmOKZisaw3+yHQItU/iypwKDlsxx9XCLBoxAtFQdWaPXp4fdFtS2pduLFcQJNEsOrlyipph4ZcGvYtuEaAxvbSbJdUtUMLiav6zuQfBlQbxJXi6prWnuL6tVGITYeS3tL7ddfWaaFnNUUWo0qvKno3Bc4q5sb2EKKuBbpI/ra3j01y7Y2ibvVbkicnide0LH4ywGEEhiRYH9FuchDiZJe0rgWQN8KJoKeC1MYv1AaZE+l1HZjL4IG5cYuzB02vN2algecd7BHEse3PFeTU3FO47XP7fwBl9ClRKA+LuU/BddGXIp1tRTGokstNFafPgGQK6L7dV3fEK/R+N2GfXrvMqXs0b9a/R+FEkN+qRQAAA==

metadata_json:
  {"categories":["Communication","Productivity"],"complexity":"simple","use_cases":["automate meeting minute distribution","send notes via email","integrate Google Sheets with Gmail"],"estimated_setup_minutes":5,"required_services":["Google Sheets","Gmail"],"key_features":["automatic email triggering","sheet-to-email integration","direct meeting notes distribution"],"target_audience":["team leads","administrators","project managers"]}


name: Consolidate Daily Google Form Submissions into One Gmail Recap
author_name: Yassin Zehar
author_username: yassinzehar
categories: []
created_at: 2025-08-15T12:29:56.900Z
updated_at: 2025-08-15T12:29:56.900Z
url: https://n8n.io/workflows/7431
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  Description
  Receive one clean Gmail recap each day with all Google Forms submissions. The workflow reads your Form-linked Google Sheets, compiles every request submitted today, and sends a single, structured email at your chosen time—keeping your inbox tidy.

  Context
  Instead of receiving dozens of individual notifications, consolidate all daily form submissions into one organized email recap.

  Who is this for?

  Teams managing multiple incoming requests per day.

  Managers who want a daily summary instead of real-time alerts.

  Anyone who prefers to avoid notification spam.

  Requirements

  Google account with Forms & Sheets access

  Google Forms linked to Google Sheets 

  Gmail account with n8n OAuth configured

  Steps


  🗒️ Use the sticky notes in the n8n canvas to:

  Credentials : Add/verify Google (Sheets) and Gmail credentials in n8n.

  Schedule : Add a Cron/Schedule Trigger (default: 17:00/ 5PM, your local time).

  Add Google Sheets node → Read mode.

  Spreadsheet: select your Form-linked sheet.

  Build the Recap Body

  Use a Code (Function) node to assemble a simple HTML list or table from the filtered rows.

  Send Gmail : Add Gmail node and setup your team inbox / distribution list. For the body, paste the HTML body from step 5 and enable HTML.

  Test & Activate : Submit a few sample responses, run once, confirm the email looks right.

  Turn the workflow ON.


  You’ll get this:


  A structured Gmail message listing all daily submissions with: submitter name, timestamp, request details, and any custom fields from your form.

  Tutorial video
  Watch the Youtube Tutorial video

  How it works

  ⏰ Trigger: workflow runs once a day at your chosen time (default 5 PM).

  📑 Collects all requests from that day in the Google Sheet.

  📝 Compile: Generates a recap list/table.

  📝 Generates a recap list with all submissions.

  📨 Sends one Gmail email summarizing all requests of the day.

  About me :
  I’m Yassin a Project & Product Manager  Scaling tech products with data-driven project management.
  📬 Feel free to connect with me on Linkedin

nodes_used:
  ["n8n-nodes-base.gmail","n8n-nodes-base.googleSheetsTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code"]

workflow_json_compressed:
  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

metadata_json:
  {"categories":["Communication","Data Processing"],"complexity":"medium","use_cases":["Consolidate daily form submissions","Send daily summary emails","Automate inbox management"],"estimated_setup_minutes":15,"required_services":["Gmail","Google Forms","Google Sheets"],"key_features":["Daily email consolidation","Scheduled execution","Structured email formatting"],"target_audience":["Managers","Administrators","Team leads"]}


name: Instant Gmail Notifications for Google Form Submissions
author_name: Yassin Zehar
author_username: yassinzehar
categories: []
created_at: 2025-08-15T12:39:39.350Z
updated_at: 2025-08-15T12:39:39.350Z
url: https://n8n.io/workflows/7432
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  Description
  Get a single Gmail notification immediately whenever someone submits your Google Forms. The workflow watches the Form-linked Google Sheets for new rows and sends a clean, readable email within about a minute—perfect for time-sensitive workflows.

  Context
  Stay responsive to urgent requests without inbox overload. Get notified immediately when new submissions arrive, with all key details in one clean email.

  Who is this for?

  Teams collecting support requests, project inputs, or approvals.

  Anyone who needs to respond quickly to new form submissions.

  Perfect for time-sensitive workflows.

  Requirements

  Google account

  A Google Forms linked to a Google Sheets (Responses → “Link to Sheet”)

  Gmail account connected to n8n (OAuth)

  Steps


  🗒️ Use the sticky notes in the n8n canvas to:

  Create a Google Forms and link it to a Google Sheets.

  Credentials**: Add/verify Google (Sheets) and Gmail credentials in n8n.


  Add Google Sheets Trigger node.


  Spreadsheet: your Form-linked sheet.

  Polling interval**: every 1 minute (or adjust as needed).

  Send Gmail**: Add Gmail node and set up recipient team inbox or on-call email.


  Test & Activate**: Submit a sample form, wait 1 minute, confirm the email.

  Make sure the workflow is always activated**

  You’ll get this:


  A Gmail message with key details (requester, summary, priority, link to the sheet), easy to scan and act on.

  Tutorial video
  Watch the Youtube Tutorial video

  How it works

  ⏰ Trigger: workflow runs every time you get a request from the form (trigger checks every minute)

  📝 Prepare: Format the submission into a concise message.


  📨 Notify: Sends one Gmail email per submission

  About me :
  I’m Yassin a Project & Product Manager  Scaling tech products with data-driven project management.
  📬 Feel free to connect with me on Linkedin

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.googleSheetsTrigger","n8n-nodes-base.gmail"]

workflow_json_compressed:
  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

metadata_json:
  {"categories":["Communication","Data Processing"],"complexity":"simple","use_cases":["real-time form submission alerts","urgent request notifications","quick data monitoring"],"estimated_setup_minutes":5,"required_services":["Gmail","Google Forms","Google Sheets"],"key_features":["immediate email alerts","clean submission formatting","form-linked sheet monitoring"],"target_audience":["support teams","project managers"]}


name: Auto-Generate LinkedIn Content with Gemini AI: Posts & Images 24/7
author_name: Muhammad Farooq Iqbal
author_username: mfarooqone
categories: []
created_at: 2025-08-15T17:15:56.308Z
updated_at: 2025-08-15T17:15:56.308Z
url: https://n8n.io/workflows/7448
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:20
description:
  🔄 How It Works - LinkedIn Post with Image Automation

  Overview
  This n8n automation creates and publishes LinkedIn posts with AI-generated images automatically. It's a complete end-to-end solution that transforms simple post titles into engaging social media content.

  Step-by-Step Process

  1. Content Trigger & Management
  Google Sheets Trigger** monitors a spreadsheet for new post titles
  Only processes posts with "pending" status
  Limits to one post at a time for controlled execution

  2. AI Content Generation
  AI Agent** uses Google Gemini to create engaging LinkedIn posts
  Takes the post title and generates:
    Compelling opening hooks
    3-4 informative paragraphs
    Engagement questions
    Relevant hashtags (4-6)
    Appropriate emojis
  Output is structured and formatted for LinkedIn

  3. AI Image Creation
  Google Gemini Image Generation** creates custom visuals
  Uses the AI-generated post content as context
  Generates professional images featuring:
    Modern workspace with coding elements
    Flutter development themes
    Professional, LinkedIn-appropriate aesthetics
    16:9 aspect ratio, high resolution
  No text or captions** in the generated image

  4. Image Processing & Storage
  Generated images are uploaded to Google Drive
  Files are shared with public access permissions
  Image URLs are stored back in the spreadsheet for tracking

  5. LinkedIn Publishing
  LinkedIn API integration** handles the posting process:
    Registers image uploads
    Uploads images to LinkedIn's servers
    Creates posts with text + image
    Publishes to your LinkedIn profile
  Updates spreadsheet status to "posted"

  Technical Architecture

  Google Sheets → AI Content → AI Image → Google Drive → LinkedIn API → Status Update
       ↓              ↓          ↓          ↓           ↓           ↓
    Trigger      Gemini LLM   Gemini    File Upload  Posting    Tracking
                Content Gen   Image Gen

  Key Features

  ✅ Fully Automated - Runs continuously without manual intervention
  ✅ AI-Powered - Both content and images generated by AI
  ✅ Professional Quality - LinkedIn-optimized formatting and visuals
  ✅ Real-time Tracking - Monitor status and performance
  ✅ Scalable - Handle multiple posts and campaigns

  How to Use

  Setup Requirements
  Google Gemini API for content and image generation
  LinkedIn API credentials for posting
  Google Sheets for content management
  Google Drive for image storage
  n8n instance for workflow execution

  Content Management
  Add new post titles to your Google Sheet
  Set status to "pending"
  Automation automatically processes and publishes
  Status updates to "posted" upon completion

  Customization Options
  Modify AI prompts for different content styles
  Adjust image generation parameters
  Change posting frequency and timing
  Add multiple LinkedIn accounts
  Integrate with other content sources

  Use Cases

  �� Perfect for:
  Startups** wanting consistent LinkedIn presence
  Marketing teams** overwhelmed with content creation
  HR departments** building employer branding
  Agencies** managing multiple client accounts
  Solo entrepreneurs** needing professional social media presence

  Benefits

  ⏰ Time Savings: 20+ hours per week for content teams
  📈 Consistency: Daily, professional posts without gaps
  🎨 Quality: AI-optimized content and visuals
  📊 Scalability: Handle unlimited content volume
  💰 Cost Effective: Reduce manual content creation costs

  🔄 The automation runs continuously, ensuring your LinkedIn presence stays active and engaging 24/7!

  For inquiries: mfarooqiqbal143@gmail.com

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheetsTrigger","n8n-nodes-base.if","n8n-nodes-base.limit","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.googleGemini","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","n8n-nodes-base.googleSheets","n8n-nodes-base.googleDrive"]

workflow_json_compressed:
  [encoded data, 6592 characters]

metadata_json:
  {"categories":["Marketing","AI/ML"],"complexity":"medium","use_cases":["Automated LinkedIn posting","AI-generated image creation","Scheduled social media content"],"estimated_setup_minutes":45,"required_services":["Google Sheets","Google Drive","Google Cloud/Natural Language API","Gemini AI","LinkedIn"],"key_features":["Status-aware content triggering","Automated image generation","Spreadsheet-based workflow management"],"target_audience":["Marketers","Social Media Managers","Content Creators"]}


name: Talk to Your Google Sheets Using ChatGPT-5
author_name: Robert Breen
author_username: rbreen
categories: []
created_at: 2025-08-15T17:54:40.842Z
updated_at: 2025-08-15T17:54:40.842Z
url: https://n8n.io/workflows/7449
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:20
description:
  This n8n workflow template creates an intelligent data analysis chatbot that can answer questions about data stored in Google Sheets using OpenAI's GPT-5 Mini model. The system automatically analyzes your spreadsheet data and provides insights through natural language conversations.

  What This Workflow Does

  Chat Interface**: Provides a conversational interface for asking questions about your data
  Smart Data Analysis**: Uses AI to understand column structures and data relationships
  Google Sheets Integration**: Connects directly to your Google Sheets data
  Memory Buffer**: Maintains conversation context for follow-up questions
  Automated Column Detection**: Automatically identifies and describes your data columns

  🚀 Try It Out!

  1. Set Up OpenAI Connection

  Get Your API Key
  Visit the OpenAI API Keys page.
  Go to OpenAI Billing.
  Add funds to your billing account.
  Copy your API key into your OpenAI credentials in n8n (or your chosen platform).

  2. Prepare Your Google Sheet

  Connect Your Data in Google Sheets
  Data must follow this format: Sample Marketing Data
  First row** contains column names.
  Data should be in rows 2–100.
  Log in using OAuth, then select your workbook and sheet.

  3. Ask Questions of Your Data

  You can ask natural language questions to analyze your marketing data, such as:
  Total spend** across all campaigns.
  Spend for Paid Search only**.
  Month-over-month changes** in ad spend.
  Top-performing campaigns** by conversion rate.
  Cost per lead** for each channel.

  📬 Need Help or Want to Customize This?
  📧 rbreen@ynteractive.com  
  🔗 LinkedIn
  🔗 n8n Automation Experts

nodes_used:
  ["n8n-nodes-base.googleSheetsTool","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi"]

workflow_json_compressed:
  H4sIAAAAAAAAE+1Y3Y7buBV+FUIB2sQwbVH/MrDYzM7OJtnN/DQzkyA7MxhQImULlkVHpOw6wQB9gt5sgV72quhNn6pP0EfoISXb4xnHddJF0YsiQSJLh+f343cO+cmacEWtwScrL6WiZcpfMWtgUWYT4qau53HuuKEbxxwe44yQMI4S208oTyKXBiQOmE88GlMeM4eykKRu4qex1bUUn0wLqvhhxZk856qeHgp4wxUHA6qq+V3XKgXj0hpcgXVtlQWxHwaZi/0kTrDHXQ8nYBmDSuYRl/kupaC5pBMO0gclLRYfOfqeKv1WLab6bRmV2KjFCZW8NxRiWPDzEedKXghRgOBUyFzlogS7mDhe1CW+G9zAe1qBYsUrqdMhplpGP4KfUq8/MWY/Wbe3VdFE0LUmYAmMFrlUoHlGixp+uoEfEpv4UddKaTri7A2XdaEu9TJrpNRUDvp9JlLZetdLxaQvpxWnzBiSfdYnl9+/Uzb+Oc5efpiX5yfZpTubjc7F+8MfXgRHL9wj/DOf/3h4e/j6g9fnLFdPhjn7ZmXZ2jTduG6ZTEE4YLue8FLpUu8Rj/Ulzlj/zaC/reX0G1blMy7ZeHvM51SDDh3TasxVXg4NXBBGgBPr7q6BzVuouQGE1wvvui0YSeB4zPYI5l7kYs9ObQBjwnHmscQHsHMv5Gswnqs8HS/QiVDc+SwYpRHSMg9g6NiB1wV7j1CYikJU1iDsWvOcqZE1IMR3utaI58OR0r8CDTJRKqgm2HvyBF3QYoyUQO9FXTWxznM1Qi9M0lGzEdBv0OmUlwev0IuzC+yj47zMr8uLUS51WtBcVOOsEHO03MIohTIpLhEtUQ62iiIfgkHEtHqqt6GEpemIqkQopOB/lIIoLeWcV+hDzaXZS4gmom5XSSWAF0DbA89qqWvUePdbec8/pKFZ9NDFiCO5kOAaorUSEwo5pUWxaPz4CE4udOT3kLV0k6FpJWY5VAPMSp1ACb5Woh6OUElVXdECFbQc1nQIEYtyBjWgxvHedWk9hApZAYWFdmDHIcfM9YG1fJfjxHbhKeAuC72Ih0GwBsqj+qzR8hyS319DRvsCOc3LHtXZfshcrhN1o3gXcVlNno65lKABDGym+kCO8fvTyze3p2dHJwevbn86en/78ujN0cPf6LrUf8BhRCu+97IeOnhY/6a4m16cnrx+j2Y5hVJwyIsoUMIBez30HYd68TSX3NQOCiJ5NYOCzHjPuARIAHcAeKKE8ouSm0JLrnqIwY5AVI7RXGOxfY1y+CubtZegVRs00DBWoSQtXvX7pc89XfcRlae1mtbqjFbgw6p7beDB6TkrRDjED6Ioodh2sgx7SRBgyoIQZy5LXTtOvdjxt1JH+DXUQYJuGO1BHV5kr5nDc51N4niC3J6uLfrdqlwiW6N0iQCzr0Hq0YZZV9lksmnNZitOVtSrs91Fsk5HoGNwXWLU6VwIBWokbHjW6SCaVkICURQFWJpMaT40u08LnmsRlIkKndGcoXNOK9Cja9/ptCLHEM8IC9i4eKIfNSWVQy5BMRANZY2Z3tLwFE95BQon2reVORBOFsv9DwGhCqivXXMopEKwCBVALiCoveHQc4yhEuhpB014qZ/Z3Gc4JpxiL0vhyScME98nJPU9xmOyFRTRV4ACesnWftJCwQfu2NVE/vmXP/4VvaMKIjNd4QKYtsppoVHw/AqqquqE3zz9IKu3Z0wEcpY+a0hC44j0oDgKXU6XTeZQQG5S7Vsr8gS9AAGDrYOzV+gnvrguYdXbHCIw2++qXdl+lTdPlxOE7ke6ZD0BEjQ3UwSd5ngMUs/QFJAIpXJ6QDIah0s93+XQssrhbjVAERqlsi+qIS3zj4b7+0mztK9RNcv5/Bno1zuFARbrkhm4G5i3ggDhVNSlAjGvB6FPF81nHQo4qftnu6DTab2D7sog9ZDfFqm6CT8FaBmxdCQkL9HSY20fwIhxk2wI9aziU03MJp/3yXWV7bYA92aCh31Xw9t8mNSA8EwUpv3r0mubVA3Q1dZBap3RX32025hnN6fbZ81u/CGvwNlKzCFrGr7QKmEKEUU9gRQC6BvmMGHJkagLBq1FR97pwBqJnH/84Rdi2y17vBZD/a1pUVCag1qNOp2uhmOJJC90/kw99HSUCDE2XcnEt1mR/9Pof06j9xIKXPTL39EJh2HxJS+mCETfUejukJ5DwKqY5JAgTVLfXpcg+jd0VSUV5+XzBfBZRVMzLwAgb55OaF4oMdj++RlCev2f/oyuXuflmLNX5Rrb8/m8V5i3MIxpcOdlvxIJrxQ2yrATe04cOH7f0OCuJuA6mU8ow2GahNijjoejKLRhdIx4lIQxc8Ptk0H8lZMBcYLPjgbu3qPBvpTe8vXA0PkmBZ+1/LUnlW/R8GuSuOkR/5bD4ZyUrggcXFsTuG5S4hF77yy9kzlZxLIAhxHn2AszjqlLUkwzErhQpSwNkq2lJ/aX1554obNn7X3i7Kz9F3WYxZ4dpiFi2nYXJPNJXtAKmczm8n+w26x6zfZOs4oOomqaC4bWcq+vmEO4aSpOc5wZCWjrn+soeuGpOcfRYoAuKkOkZsNBJiBJB3mlaFLwrgaIJtflsKB90MjYgcMkJWkUZgkOfY9gL05tHCdugAnhaUrswPWzezg81Aco4/yXHFj1VcBFlQ+HcFp6AMzIs7vE9vW5dc4TyMLYXDhyllI7sykOw9TFnst9HPGUY65vF4FevSDTxPjZO7pH8fbcVcRw5Mpi17GxA0dyPXlzHFP4x4ed6AcJhV2ZriM+5hNRLfYIcmIEv6uzjFfv8pKJ+aPLxRgI2I6ih5twl7M0jvzAziLw0w+gPDTFUeInOAVnY4dSG5hiK018JUnsdXTcxRE7oBaHhDgkjuHg6wPUgsTDlFI4B5OIgt0wtF22jmXZWjTijvVlD9mjCMVEy5ul+SOo2fpu17EfxWeukva7+hxOFfZ6BJe0FNsvGDckIBc7Qenc3Zjctc3TeNMCDp5ofjtpf1xdfTK347tvjNYLuhYgkP/eGth3Nzdgd+NyvFGtrzm+QLFqbss31W6pUaN8OcAeN6nd28rmuofmtrGPrh9Ufl8bRnZT793dvwBYO1989hgAAA==

metadata_json:
  {"categories":["Data Processing","AI/ML"],"complexity":"medium","use_cases":["ask questions about sheet data","get data insights naturally","analyze spreadsheet content"],"estimated_setup_minutes":15,"required_services":["Google Sheets","OpenAI"],"key_features":["conversational data interface","natural language queries","automatic data analysis"],"target_audience":["analysts","administrators","data users"]}


name: Monitor Competitors & Generate Content Ideas with GPT4 & Gemini to Google Sheets
author_name: Shelly-Ann Davy
author_username: SheCodesFlow
categories: []
created_at: 2025-08-15T19:34:29.346Z
updated_at: 2025-08-15T19:34:29.346Z
url: https://n8n.io/workflows/7454
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
description:
  Who’s it for
  Women creators, homemakers-turned-entrepreneurs, and feminine lifestyle brands who want a graceful, low-lift way to keep an eye on competitor content and spark weekly ideas.

  What it does
  On a weekly schedule, this workflow crawls your competitor URLs with Firecrawl (HTTP Request), summarizes each page with OpenAI, brainstorms carousel/pin ideas with Gemini, appends results to Google Sheets (Date, URL, Title, Summary, Ideas), and sends you a single email digest (optional Telegram alert). It includes basic error notifications and a setup-friendly config node.

  Requirements
  HTTP credentials** for Firecrawl, OpenAI, and Gemini (no keys in nodes)
  Google Sheets** OAuth credential
  A Sheets document with a target sheet/range (e.g., Digest!A:F)
  (Optional) Telegram bot + chat ID

  How to set up
  Open Set: Configuration (edit me) and fill:
     competitorUrls (one per line), sheetsSpreadsheetId, sheetsRange,
       ownerEmail, emailTo, geminiModel, openaiModel
  Attach credentials to the HTTP and Sheets nodes.
  Test by switching Cron to Every minute, then revert to weekly.

  How it works
  Cron → Firecrawl (per URL) → Normalize → OpenAI (summary) + Gemini (ideas) → Merge → Compile Row → Google Sheets append → Build one digest → Email (+ optional Telegram).

  How to customize
  Add/remove competitors or change the weekly send time.
  Tweak the OpenAI/Gemini prompts for your brand voice.
  Expand columns in Sheets (e.g., category, tone, CTA).
  Swap email/Telegram for Slack/Notion, or add persistent logs.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.cron","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.merge","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.code","n8n-nodes-base.emailSend","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.emailSend","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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

metadata_json:
  {"categories":["Marketing","Data Processing"],"complexity":"medium","use_cases":["automated competitor analysis","content idea generation","weekly content planning"],"estimated_setup_minutes":30,"required_services":["Firecrawl","OpenAI","Google Gemini API","Google Sheets"],"key_features":["scheduled crawling","AI summarization","idea generation from multiple models","spreadsheets integration","email/telegram notifications"],"target_audience":["marketers","content creators","social media managers"]}


name: Process Multiple Media Files in Telegram with Gemini AI & PostgreSQL Database
author_name: John Alejandro SIlva
author_username: alejandro-silva
categories: []
created_at: 2025-08-15T22:30:01.603Z
updated_at: 2025-08-15T22:30:01.603Z
url: https://n8n.io/workflows/7455
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:20
description:
  🤖📨 Telegram AI Assistant with Multi-File Media Group Handling, Smart File Processing & PostgreSQL Integration

  &gt; AI-powered Telegram bot for text, voice, video, documents & media — with database-driven grouping and Telegram-safe formatting.

  📋 Description

  This n8n template creates a next-generation Telegram AI assistant 🧠💬 capable of handling text messages, media files, and documents with advanced processing, PostgreSQL integration, and AI-powered responses.

  It is designed to solve Telegram’s media group challenge 📦 — when multiple files are sent together, they are stored, processed, and combined into one coherent AI-generated reply.

  ✨ Key Features
  📂 Multi-file media group management with PostgreSQL:
    media_group
    media_queue
    chat_histories
  📑 Document parsing for CSV, HTML, ICS, JSON, ODS, PDF (with AI fallback), RTF, TXT, XML, and spreadsheets.
  🎤 Voice & video transcription for AI analysis.
  🖼️ Image, audio, and video description for richer AI context.
  🛡️ Telegram-safe MarkdownV2 formatting with auto-splitting for messages over 4096 chars.
  ⚠️ Error fallback for unsupported file types.

  💡 Acknowledgment

  A huge thank you to Ezema Gingsley Chibuzo 🙌 for the inspiration of the first version of this workflow:  
  Create a Multi-Modal Telegram Support Bot with GPT-4 and Supabase RAG  
  Your pioneering work laid the foundation for this improved, database-powered multi-modal assistant 🚀

  🏷 Tags
  telegram ai-assistant postgresql multi-file media-group  
  file-processing voice-transcription document-parser pdf-extraction  
  markdown-formatting n8n-template

  💼 Use Case
  Use this template if you need an AI-powered Telegram bot that can:
  📦 Handle multiple files sent in a single message (albums, multiple PDFs, etc.).
  🧾 Extract & analyze content from many file formats.
  🎙️ Transcribe voice and video messages.
  🗂️ Maintain chat memory for contextual AI answers.
  🛡️ Avoid Telegram formatting errors and length limit issues.

  This workflow automates the full chain: Receive → Process → AI Analysis → Telegram-safe Reply.

  💬 Example User Interactions

  📄 Multiple PDFs with a caption** → AI extracts and summarizes all PDFs in one combined reply.  
  🎤 Voice message** → AI transcribes and replies with a contextual answer.  
  📊 CSV or spreadsheet file** → AI parses and summarizes the data.  
  🖼️ Multiple images** → AI describes each image and replies in a single message.

  🔑 Required Credentials
  Telegram Bot API** (Bot Token)  
  PostgreSQL** (Connection credentials)  
  AI Provider API** (OpenAI, Google Gemini, or compatible LLM)

  ⚙️ Setup Instructions
  🗄️ Create the PostgreSQL tables (Gray section SQL):
     media_group
     media_queue
     chat_histories
  🔌 Configure the Telegram Trigger with your bot token.
  🤖 Connect your AI provider credentials.
  🗂️ Set up PostgreSQL credentials in the database nodes.
  ▶️ Deploy the workflow in n8n.
  🎯 Start sending messages and files to your bot.

  📌 Extra Notes
  ✅ Green section ensures only one trigger per media group.  
  📌 Yellow section guarantees captions and files are stored in the correct sequence.  
  ✨ Purple section formats AI output to be Telegram-safe and split if needed.  
  🧠 AI prompt is not fixed, allowing full customization.

  💡 Need Assistance?

  If you’d like help customizing or extending this workflow, feel free to reach out:  

  📧 Email: johnsilva11031@gmail.com  
  🔗 LinkedIn: John Alejandro Silva Rodríguez

nodes_used:
  ["n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.switch","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.postgres","n8n-nodes-base.postgres","n8n-nodes-base.wait","n8n-nodes-base.postgres","n8n-nodes-base.postgres","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.wait","n8n-nodes-base.postgres","n8n-nodes-base.postgresTrigger","n8n-nodes-base.set","n8n-nodes-base.manualTrigger","n8n-nodes-base.postgres","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.code","n8n-nodes-base.telegram","n8n-nodes-base.extractFromFile","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.extractFromFile","n8n-nodes-base.telegram","n8n-nodes-base.extractFromFile","n8n-nodes-base.telegram","n8n-nodes-base.extractFromFile","n8n-nodes-base.telegram","n8n-nodes-base.extractFromFile","n8n-nodes-base.telegram","n8n-nodes-base.extractFromFile","n8n-nodes-base.telegram","n8n-nodes-base.extractFromFile","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.extractFromFile","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.googleGemini","@n8n/n8n-nodes-langchain.googleGemini","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.googleGemini","@n8n/n8n-nodes-langchain.googleGemini","n8n-nodes-base.code","n8n-nodes-base.switch","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.googleGemini","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.telegram","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.aggregate","n8n-nodes-base.set","n8n-nodes-base.html","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.extractFromFile","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.googleGemini","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.memoryPostgresChat","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.telegramTrigger","n8n-nodes-base.set","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 22544 characters]

metadata_json:
  {"categories":["AI/ML","Communication","Data Processing"],"complexity":"complex","use_cases":["handle media groups","process voice files","analyze document text","store conversations","generate smart responses"],"estimated_setup_minutes":45,"required_services":["Telegram","Google Gemini","PostgreSQL"],"key_features":["Multi-file media group processing","Voice and document content extraction","Database-driven file grouping","Telegram-safe message formatting","AI-powered conversational responses"],"target_audience":["developers","communications engineers","AI integrators"]}


name: 🤖 Automate CV Screening with AI Candidate Analysis
author_name: Lucas Peyrin
author_username: lucaspeyrin
categories: []
created_at: 2025-08-15T23:23:45.102Z
updated_at: 2025-08-15T23:23:45.102Z
url: https://n8n.io/workflows/7456
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:19
description:
  How it works

  This workflow automates your initial hiring pipeline by creating an AI-powered CV scanner. It collects job applications through a web form, uses AI to analyze the candidate's CV against your job description, and neatly organizes the results in a Google Sheet.

  Here’s the step-by-step process:
  The Application Form:** A Form Trigger provides a public web form for candidates to submit their name, email, and CV (as a PDF).
  Initial Logging:** As soon as an application is submitted, the candidate's name and email are added to a Google Sheet. This ensures every applicant is logged, even if a later step fails.
  CV Text Extraction:* The workflow uses *Mistral's OCR** model to accurately extract all the text from the uploaded CV PDF.
  AI Analysis:* The extracted text is sent to *Google Gemini**. A detailed prompt instructs the AI to act as a hiring assistant, scoring the CV against the specific requirements of your job role and providing a detailed explanation for its score.
  Structured Output:** A JSON Output Parser ensures the AI's analysis is returned in a clean, structured format, making the data reliable.
  Final Record:** The AI-generated qualification score and explanation are added to the candidate's row in the Google Sheet, giving you a complete, analyzed list of applicants.

  Set up steps

  Setup time: ~15 minutes

  You'll need API keys for Mistral and Google AI, and to connect your Google account.

  Get Your Mistral API Key:
      Visit the Mistral Platform at console.mistral.ai/api-keys.
      Create and copy your API key.
      In the workflow, go to the Extract CV Text node, click the Credential dropdown, and select + Create New Credential.
      Paste your key into the API Key field and Save.

  Get Your Google AI API Key:
      Visit Google AI Studio at aistudio.google.com/app/apikey.
      Click "Create API key in new project" and copy the key.
      In the workflow, go to the Gemini 2.5 Flash Lite node, click the Credential dropdown, and select + Create New Credential.
      Paste your key into the API Key field and Save.

  Connect Your Google Account:
      Select the Create 'CVs' Spreadsheet node.
      Click the Credential dropdown and select + Create New Credential to connect your Google account.
      Repeat this for the Log Candidate Submission and Add CV Analysis nodes, selecting the credential you just created.

  Create Your Spreadsheet:
      Click the "play" icon on the Start Here node to run it. This will create a new Google Sheet in your Google Drive named "CVs" with the correct columns.

  Customize the Job Role:
      Go to the AI Qualification node.
      In the Text parameter, find the job_requirements section and replace the example job description with your own. Be as detailed as possible for the best results.

  Start Screening!
      Activate the workflow using the toggle at the top right.
      Go to the Application Form node and click the "Open Form URL" button.
      Fill out the form with a test application and upload a sample CV. Check your Google Sheet to see the AI's analysis appear within moments

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.formTrigger","n8n-nodes-base.manualTrigger","n8n-nodes-base.mistralAi","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chainLlm"]

workflow_json_compressed:
  [encoded data, 10112 characters]

metadata_json:
  {"categories":["Human Resources","Marketing"],"complexity":"medium","use_cases":["CV screening","applicant tracking","candidate analysis"],"estimated_setup_minutes":30,"required_services":["Mistral AI","Google Sheets","Form.io"],"key_features":["AI-powered CV analysis","automated application collection","structured data export"],"target_audience":["recruiters","hr managers"]}


name: LeadBot Autopilot — Chat-to-Lead for Salesforce
author_name: Le Nguyen
author_username: leeseifer
categories: []
created_at: 2025-08-16T10:24:30.951Z
updated_at: 2025-08-16T10:24:30.951Z
url: https://n8n.io/workflows/7467
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  LeadBot Autopilot — Chat-to-Lead for Salesforce

  Description — How It Works
  Greets & Guides: Welcomes the visitor and collects info step-by-step — Full Name → Email → Mobile → Product Interest.
  Validates Inputs: Checks email/phone formats; politely re-asks if invalid.
  De-dupe in Salesforce: Looks up by email; updates an existing lead if found.
  Create/Update Lead: Writes to Salesforce, including ProductInterest__c.
  Notify Instantly: Sends a Slack alert to your team and a personalized email to the prospect.
  Close the Loop: Confirms submission and ends the chat.

  Description — Set Up Steps (≈45–75 mins)
  Connect Credentials (20–30 mins):** Salesforce OAuth, OpenAI, Slack, SMTP.  
  Tune the Prompt (5–10 mins):** Greeting, field order, product options.  
  Map Fields (10–15 mins):** Name split, email/phone, ProductInterest__c.  
  Smoke Test (10–15 mins):** Run a full chat; verify de-dupe, Slack + email.  
  Go Live (5–10 mins):** Expose the webhook/chat entry point on your site.

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.salesforceTool","@n8n/n8n-nodes-langchain.toolThink","n8n-nodes-base.salesforceTool","n8n-nodes-base.salesforceTool","n8n-nodes-base.emailSendTool","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.slackTool","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6264 characters]

metadata_json:
  {"categories":["Sales","Customer Engagement","Communication"],"complexity":"medium","use_cases":["collect visitor leads","qualify leads","update Salesforce records","notify sales team"],"estimated_setup_minutes":15,"required_services":["Slack","Salesforce"],"key_features":["real-time chat qualification","duplicate prevention","personalized notifications","data validation"],"target_audience":["sales teams","marketing managers"]}


name: Auto-Label Gmail Messages with Custom Categories using GPT-4o-mini
author_name: Ashish Kumar Swain
author_username: phoenix
categories: []
created_at: 2025-08-16T20:23:44.041Z
updated_at: 2025-08-16T20:23:44.041Z
url: https://n8n.io/workflows/7477
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:22
description:
  Why settle for Gmail’s default tabs when AI can sort your inbox your way?

  Who is this for?

  Job seekers, freelancers, and students who receive job-related emails and want them auto-sorted into labels

  Use case

  Problem**: Job emails get buried.Manually reading, labeling, and tracking them in a sheet is error-prone and time-consuming.

  Use Case**: An n8n workflow that fetches new Gmail messages on a schedule, classifies them with OpenAI, adds customised Gmail labels defined by the user.

  What this workflow does? 

  Runs on a schedule (Cron) to fetch new Gmail messages.
  Uses OpenAI to classify each email into: Job Opportunity, Application Status, Enquiries, or Others (you can edit categories).
  Adds Gmail labels accordingly (auto-creates them if missing).

  Prerequisites

  n8n (Cloud or self-hosted).
  Credentials set up in n8n:
  	Gmail OAuth
  	OpenAI (API key)

  Setup 

  Import the JSON (below) into n8n.
  Open Credentials for Gmail, OpenAI.
  In the OpenAI node, pick your model (e.g., gpt-4o-mini or any GPT-4 class model).
  In the Gmail Add Labels nodes, confirm/adjust label names:
  	Job Opportunity, Application Status, Enquiries, Others

  How to customize it for your needs

  Add a Follow-Up Date parser (e.g., “We’ll get back in 2 weeks”) → push to Calendar.

  Extend categories (e.g., Interview Invite, Offer, Rejection, HR Enquiry).

  Threaded Gmail Draft Reply for Enquiries using a template.

  Troubleshooting

  No items flowing?** Check Gmail scope/label filters and Cron timing.

  Labels not created?** The Gmail node can create them; ensure the label names match exactly.

  Why Use This Template?

  Gmail can classify messages into Spam, Promotions, or Social, but have you ever wished you could sort emails your own way?

  With this AI-powered workflow, you can create custom categories that fit your needs — like Job Opportunity, Application Status, or Enquiries — so you never lose track of what matters.

  Need Assistance?

  For setup guidance, customization, or business inquiries,
  Email: phoenixaiagentsolutions@gmail.com

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.gmail","@n8n/n8n-nodes-langchain.textClassifier","n8n-nodes-base.cron","n8n-nodes-base.gmail"]

workflow_json_compressed:
  H4sIAAAAAAAAE7WV227jNhCGX0XQRa/MlOeDr7pIs0Xapllsii2KYlEMqWEsxJZVm84Bgd+9Iye7TuIcL3JhQKaG/3y/Zoa8rtumHtdHZ58P/vytP/z46a+/9z+3R/WonmGBenxdt92yQJfwcIhTDZfJCeW9Eg6CU1a7hNhk7QXY6HKQQYvkrE1ZuGwdRUJUWjRGmuA56Rac9VMouL/AZnmCZdXvz2kFC1KCsljhelR3MEPKdjKDRal+mUE7rfansFy2ucXF+NvzVfVD9TtEnFYXbZlU8x67D4dDBjhd1uN/vpLOvMHh8frGZeDKZ8ctEyl7poWxLHjjWbABXGzQSlT19+zHG71qfwKlOiKh6SB91Q+vfup89yP92CYBm0J3mibQdnvT2RC+2dlSeD9ftqWdd4TAvPYj4yxR9bCgDAUXhHa9vhH9Qv82gWJPrke3vBzRaJmQeRMT09wAi8A1cyCNQ9/YrPOW99d5rI77fr4oq64tV1vaLWiEJe6dDt/zAZzResQJ7QLjZD4/29TaZKsVl4px1yDT0SsGMjtmMudCg8RkQ/2CG7knvrtBtEFIQ0YskJ4KDYs8Opa4sJBFNE22Wzcf+n7aJhgAq5MCZbV8syER5DtbUi6rYKNlTklHlprIokbDUGlnbPQSlL7TUGUySL7VhvL6nW00QTnUKjKXuWEaG+qzHEiZB1CSsoUQtjYOuv9W7aLFtzu5af937bGos4zZMm0UOYnBkp4wzKQQsso8Rn6nIAcPTpZXDHjBy3Jvw12PgTxK718e8S2wQO+tJFbhE3VQtsjA6WHEhXOeO+QctsA/E+9VdYs9wXT2ZAnSgjLdpxMqyFfhbc8fl7wJWTAvc2ZaWs9iEwLj3lnugxJa8i3cRyxpUv2BFzeAb2sPIay/hbvbH+hsw0EnhsAldSZoGjAaNS6dEiYJ8Nq+2B9rEoVU2nNiyTBd4qheYiltN1wT1zVeYloNHMeLhko6rs9FTRrnN/s3GA7A8jiMBedUpWgDi1ICA0i+Mc6jCMPFkeZdh2mQ2gjvtBet0dLgl26k4YM8d2pvIkd0/TZ4WY85mdhueu5wfG7fwxPoudhHxnwn/Ct9p52yP+by6Ul7VHO3zx8TfbrhHhXdvc9JFNp/h+FewSnerr2Kemfb/WTr9f+q9PisWAkAAA==

metadata_json:
  {"categories":["Communication","AI/ML"],"complexity":"simple","use_cases":["Auto-sort Gmail messages","Classify job-related emails","Organize inbox with AI","Track job applicant emails","Automated email labeling"],"estimated_setup_minutes":15,"required_services":["Gmail","OpenAI"],"key_features":["Scheduled message fetching","AI-based email classification","Custom label creation","Integration with Gmail API"],"target_audience":["Job seekers","Freelancers","Students"]}


name: Generate Personalized Startup Ideas with Claude Analysis and Gmail Reports
author_name: Luka Zivkovic
author_username: zivkovic58
categories: []
created_at: 2025-08-16T22:01:06.982Z
updated_at: 2025-08-16T22:01:06.982Z
url: https://n8n.io/workflows/7480
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:20
description:
  Get Started with n8n now!

  Who's it for
  This workflow is designed for developers, entrepreneurs, and startup enthusiasts who want personalized, AI-driven startup idea generation and analysis. Perfect for solo developers seeking side project inspiration, startup accelerators evaluating concepts, or anyone looking to validate business ideas with professional-grade analysis.

  How it works
  The workflow uses a three-stage Claude AI agent pipeline to create comprehensive startup analyses. The first agent generates innovative startup ideas based on your technical skills and preferences. The second agent acts as a venture capitalist, critically analyzing market viability, competition, and execution challenges. The third agent performs sentiment analysis and synthesizes a final recommendation with actionable next steps.

  How to set up
  Configure Anthropic API credentials for all three Claude AI model nodes
  Set up Gmail OAuth2 for email delivery
  Fill out the "My Information" node with your developer profile
  Update the recipient email address in the Gmail node
  Test with the manual trigger before enabling daily automation

  Requirements
  n8n account
  Anthropic API account for Claude AI access
  Gmail account with OAuth2 configured
  Basic understanding of developer skills and market preferences

  How to customize the workflow
  Modify the AI agent prompts to focus on specific industries or business models. Adjust temperature settings for different creativity levels. Add database storage to track idea history. Configure the form trigger for team-wide idea generation or integrate with Slack for automated sharing.

  Got a good idea?
  Visit my site https://techpoweredgrowth.com to get help getting to the next level
  Or reach out to luka.zivkovic@techpoweredgrowth.com

nodes_used:
  ["@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.formTrigger","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.manualTrigger","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.gmail","n8n-nodes-base.merge","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.set","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 14980 characters]

metadata_json:
  {"categories":["AI/ML","Business Development"],"complexity":"medium","use_cases":["generate startup ideas","analyze business concepts","create product market fit reports","validate startup hypotheses","extract email intelligence"],"estimated_setup_minutes":25,"required_services":["Anthropic Claude API","Gmail"],"key_features":["multi-stage AI analysis","structured data output","email-based insight extraction","personalized ideation","automated workflow execution"],"target_audience":["entrepreneurs","developers","startup founders"]}


