by Oneclick AI Squad
This n8n workflow automates task creation and scheduled reminders for users via a Telegram bot, ensuring timely notifications across multiple channels like email and Slack. It streamlines task management by validating inputs, storing tasks securely, and delivering reminders while updating statuses for seamless follow-up. Key Features Enables users to create tasks directly in chat via webhook integration. Triggers periodic checks for due tasks and processes them individually for accurate reminders. Routes reminders to preferred channels (Telegram, email, or Slack) based on user settings. Validates inputs, handles errors gracefully, and logs task data for persistence and auditing. Workflow Process The Webhook Entry Point node receives task creation requests from users via chat (e.g., Telegram bot), including details like user ID, task description, and channel preferences. The Input Validation node checks for required fields (e.g., user ID, task description); if validation fails, it routes to the Error Response node. The Save to Database node stores validated task data securely in a database (e.g., PostgreSQL, MongoDB, or MySQL) for persistence. The Success Response node (part of Response Handlers) returns a confirmation message to the user in JSON format. The Schedule Trigger node runs every 3 minutes to check for pending reminders (with a 5-minute buffer for every hour to avoid duplicates). The Fetch Due Tasks node queries the database for tasks due within the check window (e.g., reminders set for within 3 minutes). The Tasks Check node verifies if fetched tasks exist and are eligible for processing. The Split Items node processes each due task individually to handle them in parallel without conflicts. The Channel Router node directs reminders to the appropriate channel based on task settings (e.g., email, Slack, or Telegram). The Email Sender node sends HTML-formatted reminder emails with task details and setup instructions. The Slack Sender node delivers Slack messages using webhooks, including task formatting and user mentions. The Telegram Sender node sends Telegram messages via bot API, including task ID, bot setup, and conversation starters. The Update Task Status node marks the task as reminded in the database (e.g., updating status to "sent" with timestamp). The Workflow Complete! node finalizes the process, logging completion and preparing for the next cycle. Setup Instructions Import the workflow into n8n and configure the Webhook Entry Point with your Telegram bot's webhook URL and authentication. Set up database credentials in the Save to Database and Fetch Due Tasks nodes (e.g., connect to PostgreSQL or MongoDB). Configure channel-specific credentials: Telegram bot token for Telegram Sender, email SMTP for Email Sender, and Slack webhook for Slack Sender. Adjust the Schedule Trigger interval (e.g., every 3 minutes) and add any custom due-time logic in Fetch Due Tasks. Test the workflow by sending a sample task creation request via the webhook and simulating due tasks to verify reminders and status updates. Monitor executions in n8n dashboard and tweak validation rules or response formats as needed for your use case. Prerequisites Telegram bot setup with webhook integration for task creation and messaging. Database service (e.g., PostgreSQL, MongoDB, or MySQL) for task storage and querying. Email service (e.g., SMTP provider) and Slack workspace for multi-channel reminders. n8n instance with webhook and scheduling enabled. Basic API knowledge for bot configuration and channel routing. Modification Options Customize the Input Validation node to add fields like priority levels or recurring task flags. Extend the Channel Router to include additional channels (e.g., Microsoft Teams or SMS via Twilio). Modify the Schedule Trigger to use dynamic intervals based on task urgency or user preferences. Enhance the Update Task Status node to trigger follow-up actions, like archiving completed tasks. Adjust the Telegram Sender node for richer interactions, such as inline keyboards for task rescheduling. Explore More AI Workflows: Get in touch with us for custom n8n automation!
by Daniel
Transform any website into a structured knowledge repository with this intelligent crawler that extracts hyperlinks from the homepage, intelligently filters images and content pages, and aggregates full Markdown-formatted content—perfect for fueling AI agents or building comprehensive company dossiers without manual effort. 📋 What This Template Does This advanced workflow acts as a lightweight web crawler: it scrapes the homepage to discover all internal links (mimicking a sitemap extraction), deduplicates and validates them, separates image assets from textual pages, then fetches and converts non-image page content to clean Markdown. Results are seamlessly appended to Google Sheets for easy analysis, export, or integration into vector databases. Automatically discovers and processes subpage links from the homepage Filters out duplicates and non-HTTP links for efficient crawling Converts scraped content to Markdown for AI-ready formatting Categorizes and stores images, links, and full content in a single sheet row per site 🔧 Prerequisites Google account with Sheets access for data storage n8n instance (cloud or self-hosted) Basic understanding of URLs and web links 🔑 Required Credentials Google Sheets OAuth2 API Setup Go to console.cloud.google.com → APIs & Services → Credentials Click "Create Credentials" → Select "OAuth client ID" → Choose "Web application" Add authorized redirect URIs: https://your-n8n-instance.com/rest/oauth2-credential/callback (replace with your n8n URL) Download the client ID and secret, then add to n8n as "Google Sheets OAuth2 API" credential type During setup, grant access to Google Sheets scopes (e.g., spreadsheets) and test the connection by listing a sheet ⚙️ Configuration Steps Import the workflow JSON into your n8n instance In the "Set Website" node, update the website_url value to your target site (e.g., https://example.com) Assign your Google Sheets credential to the three "Add ... to Sheet" nodes Update the documentId and sheetName in those nodes to your target spreadsheet ID and sheet name/ID Ensure your sheet has columns: "Website", "Links", "Scraped Content", "Images" Activate the workflow and trigger manually to test scraping 🎯 Use Cases Knowledge base creation: Crawl a company's site to aggregate all content into Sheets, then export to Notion or a vector DB for internal wikis AI agent training: Extract structured Markdown from industry sites to fine-tune LLMs on domain-specific data like legal docs or tech blogs Competitor intelligence: Build dossiers by crawling rival websites, separating assets and text for SEO audits or market analysis Content archiving: Preserve dynamic sites (e.g., news portals) as static knowledge dumps for compliance or historical research ⚠️ Troubleshooting No links extracted: Verify the homepage has tags; test with a simple site like example.com and check HTTP response in executions Sheet update fails: Confirm column names match exactly (case-sensitive) and credential has edit permissions; try a new blank sheet Content truncated: Google Sheets limits cells to ~50k chars—adjust the .slice(0, 50000) in "Add Scraped Content to Sheet" or split into multiple rows Rate limiting errors: Add a "Wait" node after "Scrape Links" with 1-2s delay if the site blocks rapid requests
by Cheng Siong Chin
How It Works This workflow automates personalized customer journeys by analyzing CRM data, purchase history, chat interactions, and performance metrics to intelligently route customer actions through multiple channels (email, SMS, retargeting) via AI-optimized schemas. A webhook trigger initiates the process by fetching CRM customer data, which is then merged with historical records and interactions. OpenAI builds comprehensive customer state profiles, enabling intelligent routing to appropriate channels using optimized journey logic. The system aggregates performance metrics in real-time and updates the database to maintain synchronized customer information across all systems. Setup Steps Connect CRM credentials (source system) Add OpenAI API key for state builder Configure Gmail/SMS provider credentials Add Google Sheets connection for performance tracking Set Touchpoint Event Webhook URL Map database connection for customer state persistence Prerequisites OpenAI API key, CRM access, Gmail/SMS provider accounts, Google Sheets, database (PostgreSQL/MySQL), n8n instance with webhook enabled. Use Cases E-commerce personalization, SaaS customer retention, multi-touch marketing automation Customization Modify journey schemas in Journey Optimizer AI, adjust routing rules in Action Type Router Benefits Reduces manual campaign management 80%, improves conversion via AI personalization
by Kumar Shivam
The AI-Powered Shopify SEO Content Automation is an enterprise-grade workflow that transforms product content creation for e-commerce stores. This sophisticated multi-agent system integrates GPT-4o, Claude Sonnet 4, Claude 3.5, Perplexity AI, and Haloscan keyword research to generate SEO-optimized product descriptions, metafields, and meta descriptions with zero manual intervention and built-in cannibalization prevention. To see the demo connect via my profile profile 💡 Key Advantages 🎯 Multi-Agent AI Orchestration Central Orchestrator manages complex workflows with specialized agents for descriptions, metafields, and SEO, each optimized for specific content types. 🔍 Advanced Keyword Research & Cannibalization Prevention Integrates Haloscan API for premium keyword discovery and SERP overlap analysis to prevent keyword cannibalization across your product catalog. 📊 Enterprise SEO Optimization Specialized for e-commerce with semantic alignment, TF-IDF optimization, and compliance with industry regulations and best practices. 🧠 Intelligent Content Strategy Perplexity AI provides market intelligence, search intent analysis, and trending keyword discovery for data-driven content decisions. 🏗️ Comprehensive Content Generation Creates product descriptions, 6 specialized metafields, SEO meta descriptions, and rich text formatting for complete Shopify integration. 📋 Automated Workflow Management Airtable integration tracks content creation status, manages keyword databases, and provides centralized workflow control. ⚙️ How It Works Content Type Selection Form-based trigger allows selection of content types: create_product_description, create_product_meta, or create_product_seo. Product Data Collection Retrieves comprehensive product information from Shopify and Airtable, including titles, descriptions, handles, and vendor details. Premium Keyword Discovery Haloscan API analyzes product titles for keyword opportunities Extracts search metrics, competitor keywords, and SERP data Perplexity provides market intelligence and search intent analysis SEO Compliance Checking Performs SERP overlap analysis to identify existing rankings Filters keywords to prevent cannibalization Updates Airtable with curated keyword lists Generates actionable SEO content strategies Multi-Agent Content Generation Product Description Agent (Claude Sonnet 4): Generates SEO-optimized product descriptions with verified facts Implements strict HTML structure with proper heading hierarchy Ensures compliance with e-commerce regulations and best practices Meta Fields Agent (Claude Sonnet 4): Creates 6 specialized metafields: ingredients, recommendations, nutritional values, warnings, short descriptions, and client arguments Enforces strict formatting rules and regulatory compliance Generates clean HTML compatible with Shopify themes SEO Fields Agent (Claude Sonnet 4): Produces optimized meta descriptions for search engines Integrates keyword research data for maximum organic visibility Applies current year SEO best practices and anti-keyword stuffing techniques Shopify Integration & Updates Updates product descriptions via Shopify API Uploads metafields using GraphQL mutations Converts HTML to Shopify Rich Text format Tracks completion status in Airtable 🛠️ Setup Steps Core Integrations Shopify Access Token – For product data retrieval and content updates OpenRouter API – For GPT-4o and Claude model access Haloscan API – For keyword research and SERP analysis Perplexity API – For market intelligence and content strategy Airtable OAuth – For workflow management and keyword tracking Agent Configuration Orchestrator Agent – Central workflow management with routing logic Product Description Agent – SEO content generation with fact verification Meta Fields Agent – Structured metafield creation with compliance rules SEO Fields Agent – Meta description optimization with keyword integration Premium Keyword Discovery – Automated keyword research and analysis -SEO Compliance Checker – Cannibalization prevention and strategy generation Workflow Tools MCP Server Integration – Airtable data management HTTP Request Tools – Haloscan API communication Structured Output Parsers – Data validation and formatting Memory Buffer Windows – Conversation context management Rich Text Converters – Shopify-compatible content formatting 🎯 Workflow Capabilities Product Description Generation Length Control: 150-300 words with hard limits SEO Structure: Optimized heading hierarchy and keyword placement Fact Verification: Zero-invention policy with source validation Brand Compliance: Controlled brand mentions and positioning Metafield Creation 6 Specialized Fields: Arguments, ingredients, recommendations, nutrition, warnings, descriptions HTML Formatting: Clean structure with allowed tags only Regulatory Compliance: Industry-specific warnings and disclaimers Dynamic Content: Adapts to different product categories automatically Advanced SEO Features Keyword Research: Automated discovery with search volume analysis Cannibalization Prevention: SERP overlap detection and filtering Meta Optimization: Character-limited descriptions with CTR focus Content Strategy: AI-generated SEO roadmaps based on market data 🔐 Credentials Required Shopify Access Token – Product management and content publishing OpenRouter API Key – Multi-model AI access (GPT-4o, Claude variants) Haloscan API Key – Keyword research and SERP analysis Perplexity API Key – Market intelligence and content strategy Airtable OAuth – Database management and workflow tracking 👤 Ideal For E-commerce Teams scaling content creation across hundreds of products SEO Specialists implementing advanced cannibalization prevention strategies Shopify Store Owners seeking enterprise-level content automation Marketing Agencies building scalable, multi-client SEO workflows Product Managers requiring compliance-focused content generation 💬 Advanced Features Multi-Language Ready Workflow architecture supports easy extension to multiple markets and languages with minimal configuration changes. Compliance Framework Built-in regulatory compliance checking ensures content meets industry standards and legal requirements. Scalable Architecture Modular design allows adding new content types, AI models, or integration points without workflow restructuring. Error Handling & Retries Comprehensive error management with automatic retries and fallback mechanisms ensures reliable content generation. 💡 Pro Tip: This workflow represents a complete SEO content factory that can process hundreds of products daily while maintaining quality, compliance, and search engine optimization standards.
by Eugen
👥 Who the Automation is for This automation is perfect for bloggers, solopreneurs, business owners, and marketing teams who want to scale SEO content creation. Instead of spending hours on research and drafting, you can go from a single keyword idea to a ready-to-edit WordPress draft in minutes. ⚙️ How the Automation Works Collect keywords in a Google Sheet and mark the ones you want as “prioritized.” Click “Prepare Content” → your keyword(s) are sent to n8n. n8n pulls the top 10 Google SERP results. AI analyzes competitors (tone, content type, gaps) and creates a content brief. Another AI generates a blog draft based on the brief. The draft is automatically uploaded to WordPress and your sheet updates. 👉 In short: Keyword → SERP → Brief → Draft → WordPress. 🛠 How to Set Up Full Setup Guide Copy the Google Sheets Template. Import the workflow into n8n. Add your API keys: Google Custom Search, Claude AI, and WordPress credentials. Test the webhook connection from Google Sheets. 🎉 Done — you now have a one-click pipeline from keyword idea to WordPress draft.
by moosa
This workflow monitors product prices from BooksToScrape and sends alerts to a Discord channel via webhook when competitor's prices are lower than our prices. 🧩 Nodes Used Schedule (for daily or required schedule) If nodes (to check if checked or unchecked data exists) HTTP Request (for fetching product page ) Extract HTML (for extracting poduct price) Code(to clean and extract just the price number) Discord Webhook (send discord allerts) Sheets (extract and update) 🚀 How to Use Replace the Discord webhook URL with your own. Customize the scraping URL if you're monitoring a different site.(Sheet i used) Run the workflow manually or on a schedule. ⚠️ Important Do not use this for commercial scraping without permission. Ensure the site allows scraping (this example is for learning only).
by Daniel Rosehill
Voice Note Context Extraction Pipeline with AI Agent & Vector Storage This n8n template demonstrates how to automatically extract and store contextual information from voice notes using AI agents and vector databases for future retrieval. How it works Webhook trigger** receives voice note data including title, transcript, and timestamp from external services (example here: voicenotes.com) Field extraction** isolates the key data fields (title, transcript, timestamp) for processing AI Context Agent** processes the transcript to extract meaningful context while: Correcting speech-to-text errors Converting first-person references to third-person facts Filtering out casual conversation and focusing on significant information Output formatting** structures the extracted context with timestamps for embedding File conversion** prepares the context data for vector storage Vector embedding** uses OpenAI embeddings to create searchable representations Milvus storage** stores the embedded context for future retrieval in RAG applications How to use Configure the webhook endpoint to receive data from your voice note service Set up credentials for OpenRouter (LLM), OpenAI (embeddings), and Milvus (vector storage) Customize the AI agent's system prompt to match your context extraction needs The workflow automatically processes incoming voice notes and stores extracted context Requirements OpenRouter account for LLM access OpenAI API key for embeddings Milvus vector database (cloud or self-hosted) Voice note service with webhook capabilities (e.g., Voicenotes.com) Customizing this workflow Modify the context extraction prompt** to focus on specific types of information (preferences, facts, relationships) Add filtering logic** to process only voice notes with specific tags or keywords Integrate with other storage** systems like Pinecone, Weaviate, or local vector databases Connect to RAG systems** to use the stored context for enhanced AI conversations Add notification nodes** to confirm successful context extraction and storage Use cases Personal AI assistant** that remembers your preferences and context from voice notes Knowledge management** system for capturing insights from recorded thoughts Content creation** pipeline that extracts key themes from voice recordings Research assistant** that builds context from interview transcripts or meeting notes
by Ruthwik
🚀 AI-Powered WhatsApp Customer Support for Shopify Brands This n8n template builds a WhatsApp support copilot that answers **order status* and *product availability** from Shopify using LLM "agents," then replies to the customer in WhatsApp or routes to human support. Use cases "Where is my order?" → live status + tracking link "What are your best-selling T-shirts?" → in-stock sizes & variants Greetings / small talk → welcome message Anything unclear → handoff to support channel Good to know WhatsApp Business conversations are billed by Meta/Twilio/Exotel; plan accordingly. Shopify Admin API has rate limits (leaky bucket) --- stagger requests. LLM usage incurs token costs; cap max tokens and enable caching where possible. Avoid sending PII to the model; only pass minimal order/product fields. How it works WhatsApp Trigger\ Receives an incoming message (e.g., "Where is my order?"). Get Customer from Shopify → Customer Details → Normalize Input\ Looks up the customer by phone, formats the query (lower-case, emoji & punctuation normalization). Switch (intent router)\ Classifies into welcome, orderStatusQuery, productQuery, or supportQuery. Welcome path\ Welcome message → polite greeting → (noop placeholder). Order status path (Orders Agent) Orders Agent (LLM + Memory) interprets the user request and extracts needed fields. Get Customer Orders (HTTP to Shopify) fetches the user's latest order(s). Structured Output Parser cleans the agent's output into a strict schema. Send Order Status (WhatsApp message) returns status, ETA, and tracking link. Products path (Products Agent) Products Agent (LLM + Memory) turns the ask into a product query. Get Products from Shopify (HTTP) pulls best sellers / inventory & sizes. Structured Output Parser formats name, price, sizes, stock. Send Products message (WhatsApp) sends a tidy, human-readable reply Support path Send a message to support posts the transcript/context to your agent/helpdesk channel and informs the user a human will respond How to use Replace the manual/WhatsApp trigger with your live WhatsApp number/webhook. Set env vars/credentials: Shopify domain + Admin API token, WhatsApp provider keys, LLM key (OpenAI/OpenRouter), and (optionally) your support channel webhook. Edit message templates for tone, add your brand name, and localize if needed. Test with samples: "Where is my order?", "Show best sellers", "Hi". Requirements WhatsApp Business API (Meta/Twilio/Exotel) Shopify store + Admin API access LLM provider (OpenAI/OpenRouter etc.) Slack webhook for human handoff Prerequisites Active WhatsApp Business Account connected via API provider (Meta, Twilio, or Exotel). Shopify Admin API credentials** (API key, secret, store domain). Slack OAuth app** or webhook for human support escalation. API key for your LLM provider (OpenAI, OpenRouter, etc.). Customising this workflow Add intents: returns/exchanges, COD confirmation, address changes. Enrich product replies with images, price ranges, and "Buy" deep links. Add multilingual support by detecting locale and templating responses. Log all interactions to a DB/Sheet for analytics and quality review. Guardrails: confidence thresholds → fallback to support; redact PII; retry on API errors.
by Cheng Siong Chin
How It Works This workflow automates performance monitoring by aggregating data from PM tools, code repositories, meeting logs, and CRM systems. It processes team metrics using AI-powered analysis via OpenAI, identifies bottlenecks and workload issues, then creates manager follow-ups and tasks. The system runs weekly, collecting 4 data sources, combining them, analyzing trends, evaluating team capacity, and routing alerts to managers via Gmail. Managers receive structured summaries highlighting performance gaps and required actions. Target audience: Engineering managers and team leads monitoring team velocity, code quality, and capacity planning. Setup Steps Configure credentials: PM Tool API key, Code Repo token, and CRM API key. Set the OpenAI API key. Connect your Gmail account via OAuth. In the Workflow Configuration node, adjust API endpoints and polling intervals. Map data field names to match your tools. Test data fetch nodes using sample queries before deployment. Prerequisites PM tool API access, GitHub/GitLab token, CRM credentials, OpenAI API key, Gmail OAuth connection Use Cases Track engineering team productivity weekly; identify code review bottlenecks; Customization Replace PM tool with Jira/Linear; swap OpenAI for Claude/Gemini; Benefits Reduces manual performance tracking by 6+ hours weekly; provides real-time visibility into team capacity;
by Davide
This workflow is designed to automatically process AI news emails, extract and summarize articles, categorize them, and store the results in a structured Google Sheet for daily tracking and insights. This automated workflow processes a daily AI newsletter from AlphaSignal, extracting individual articles, summarizing them, categorizing them, and saving the results to a Google Sheet. Key Features 1. ✅ Fully Automated Daily News Pipeline No manual work is required — the workflow runs autonomously every time a new email arrives. This eliminates repetitive human tasks such as opening, reading, and summarizing newsletters. 2. ✅ Cross-AI Model Integration It combines multiple AI systems: Google Gemini* and *OpenAI GPT-5 Mini** for natural language processing and categorization. Scrapegraph AI** for external web scraping and summarization. This multi-model approach enhances accuracy and flexibility. 3. ✅ Accurate Content Structuring The workflow transforms unstructured email text into clean, structured JSON data, ensuring reliability and easy export or reuse. 4. ✅ Multi-Language Support The summaries are generated in Italian, which is ideal for local or internal reporting, while the metadata and logic remain in English — enabling global adaptability. 5. ✅ Scalable and Extensible New newsletters, categories, or destinations (like Notion, Slack, or a database) can be added easily without changing the core logic. 6. ✅ Centralized Knowledge Repository By appending to Google Sheets, the team can: Track daily AI developments at a glance. Filter or visualize trends across categories. Use the dataset for further analysis or content creation. 7. ✅ Error-Resilient and Maintainable The JSON validation and loop-based design ensure that if a single article fails, the rest continue to process smoothly. How it Works Email Trigger & Processing: The workflow is automatically triggered when a new email arrives from news@alphasignal.ai. It retrieves the full email content and converts its HTML body into clean Markdown format for easier parsing. Article Extraction & Scraping: A LangChain Agent, powered by Google Gemini, analyzes the newsletter's Markdown text. Its task is to identify and split the content into individual articles. For each article it finds, it outputs a JSON object containing the title, URL, and an initial summary. Crucially, the agent uses the "Scrape" tool to visit each article's URL and generate a more accurate summary in Italian based on the full page content. Data Preparation & Categorization: The JSON output from the previous step is validated and split into individual data items (one per article). Each article is then processed in a loop: Categorization: An OpenAI model analyzes the article's title and summary, assigning it to the most relevant pre-defined category (e.g., "LLM & Foundation Models," "AI Automation & WF"). URL Shortening: The article's link is sent to the CleanURI API to generate a shortened URL. Data Storage: Finally, for each article, a new row is appended to a specified Google Sheet. The row includes the current date, the article's title, the shortened link, the Italian summary, and its assigned category. Set up Steps To implement this workflow, you need to configure the following credentials and nodes in n8n: Email Credentials: Set up a Gmail OAuth2 credential (named "Gmail account" in the workflow) to allow n8n to access and read emails from the specified inbox. AI Model APIs: Google Gemini: Configure the "Google Gemini(PaLM)" credential with a valid API key to power the initial article extraction and scraping agent. OpenAI: Configure the "OpenAi account (Eure)" credential with a valid API key to power the article categorization step. Scraping Tool: Set up the ScrapegraphAI account credential with its required API key to enable the agent to access and scrape content from the article URLs. Google Sheets Destination: Configure the "Google Sheets account" credential via OAuth2. You must also specify the exact Google Sheet ID and sheet name (tab) where the processed article data will be stored. Activation: Once all credentials are tested and correctly configured, the workflow can be activated. It will then run automatically upon receiving a new newsletter from the specified sender. Need help customizing? Contact me for consulting and support or add me on Linkedin.
by Msaid Mohamed el hadi
Overview This workflow automates the discovery, extraction, enrichment, and storage of business information from Google Maps search queries using AI tools, scrapers, and Google Sheets. It is ideal for: Lead generation agencies Local business researchers Digital marketing firms Automation & outreach specialists 🔧 Tools & APIs Used Google Maps Search (via HTTP)** Custom JavaScript Parsing** URL Filtering & De-duplication** Google Sheets (Read/Write)** APIFY Actor** for business scraping LangChain AI Agent** (OpenRouter - Gemini 2.5) n8n Built-in Logic** (Loops, Conditions, Aggregators) 🧠 Workflow Summary Trigger The automation starts via schedule (every hour). Read Queries from Google Sheet Loads unprocessed keywords from a Google Sheet tab named keywords. Loop Through Keywords Each keyword is used to search Google Maps for relevant businesses. Extract URLs JavaScript parses HTML to find all external website URLs from the search results. Clean URLs Filters out irrelevant domains (e.g., Google-owned, example.com, etc.), and removes duplicates. Loop Through URLs For each URL: Checks if it already exists in the Google Sheet (to prevent duplication). Calls the APIFY Actor to extract full business data. Optionally uses AI Agent (Gemini) to provide detailed insight on the business, including: Services, About, Market Position, Weaknesses, AI suggestions, etc. Converts the AI result (text) to a structured JSON object. Save to Google Sheet Adds all extracted and AI-enriched business information to a separate tab (Sheet1). Mark Queries as Processed Updates the original row in keywords to avoid reprocessing. 🗃️ Output Fields Saved The following information is saved per business: Business Name, Website, Email, Phone Address, City, Postal Code, Country, Coordinates Category, Subcategory, Services About Us, Opening Hours, Social Media Links Legal Links (Privacy, Terms) Logo, Languages, Keywords AI-Generated Description** Google Maps URL 📈 Use Cases Build a prospect database for B2B cold outreach. Extract local SEO insights per business. Feed CRMs or analytics systems with enriched business profiles. Automate market research for regional opportunity detection. 📩 Want a Similar Workflow? If you’d like a custom AI-powered automation like this for your business or agency, feel free to contact me: 📧 msaidwolfltd@gmail.com
by Sulieman Said
How it Works This workflow automates the process of discovering companies in different cities, extracting their contact data, and storing it in Airtable. City Loop (Airtable → Google Maps API) Reads a list of cities from Airtable. Uses each city combined with a search term (e.g., SEO Agency, Berlin) to query Google Maps. Marks processed cities as “checked” to allow safe restarts if interrupted. Business Discovery & Deduplication Searches for businesses via Google Maps Text Search. Checks Airtable to avoid scraping the same company multiple times. Fetches detailed info for each business via Google Maps Place Details API. Impressum Extraction (Website → HTML Parsing) Builds an Impressum page URL for each business. Requests the HTML and cleans out ads, headers, footers, etc. Extracts relevant contact info using an AI extractor (OpenAI node). Contact Information Extraction Pulls out: Decision Maker (Name + Position in one string, if available). Email address (must be valid, containing @). Phone number (international format if possible). Filters out incomplete results (e.g., empty email). Database Storage Writes company data back into Airtable: Company name Address Website Email Phone number Decision Maker (Name + Position) Search term & city used Setup Steps 1. Prerequisites Google Maps API Key with access to: Places API → Text Search + Place Details Airtable base with at least two tables: Cities (with columns: ID, City, Country, Status) Companies (for scraped results) OpenAI API key (for decision maker + contact extraction). 2. Authentication Configure your Airtable API credentials in n8n. Set up HTTP Query Auth with your Google Maps API key. Add your OpenAI API key in the OpenAI Chat node. 3. Configuration In the Airtable “Cities” table, list all cities you want to scrape. Define your search term in the “Execute Workflow” node (e.g., SEO Agency). Adjust the batch sizes and wait intervals if you want faster/slower scraping (Google API has strict rate limits). 4. Execution Start manually or from another workflow. The workflow will scrape all companies in each city step by step. It can be safely stopped and resumed — cities already marked as processed will be skipped. 5. Results Enriched company dataset stored in Airtable, ready for CRM import, lead generation, or further automation. Tips & Notes Always respect GDPR and local laws when handling scraped data. The workflow is modular → you can swap Airtable with Google Sheets, Notion, or a database of your choice. Add custom filters to limit results (e.g., only companies with websites). Use sticky notes inside the workflow to understand each step (mandatory for template publishing). Keep an eye on Google Places API costs** — queries are billed after the free quota. If you are still within the first 2 months of the Google Cloud Developer free trial, you can benefit from free credits. Questions or custom requests? 📩 suliemansaid.business@gmail.com