by Incrementors
🛒 Google Maps Business Phone Number Scraper Using Bright Data API & Google Sheets Integration This template requires a self-hosted n8n instance to run. An automated workflow that extracts business information including phone numbers from Google Maps using Bright Data's API and saves the data to Google Sheets for easy access and analysis. 📋 Overview This workflow provides an automated solution for extracting business contact information from Google Maps based on location and keyword searches. Perfect for lead generation, market research, competitor analysis, and business directory creation. ✨ Key Features 🎯 Form-Based Input: Easy-to-use form for location and keyword submission 🗺️ Google Maps Integration: Uses Bright Data's Google Maps dataset for accurate business data 📊 Comprehensive Data Extraction: Extracts business names, addresses, phone numbers, ratings, and more 📧 Automated Processing: Handles the entire scraping process automatically 📈 Google Sheets Storage: Automatically saves extracted data to organized spreadsheets 🔄 Smart Status Checking: Monitors scraping progress with automatic retry logic ⚡ Fast & Reliable: Professional scraping with built-in error handling 🎯 Customizable Output: Configurable data fields for specific business needs 🎯 What This Workflow Does Input Location:** Geographic area to search (city, state, country) Keywords:** Business type or industry keywords Processing Form Submission: User submits location and keywords through web form API Request: Sends scraping request to Bright Data's Google Maps dataset Status Monitoring: Continuously checks scraping progress Data Retrieval: Fetches completed business data when ready Data Storage: Saves extracted information to Google Sheets Error Handling: Implements retry logic for failed requests Output Data Points | Field | Description | Example | |-------|-------------|---------| | Business Name | Official business name from Google Maps | "Joe's Pizza Restaurant" | | Phone Number | Contact phone number | "+1-555-123-4567" | | Address | Complete business address | "123 Main St, New York, NY 10001" | | Rating | Google Maps rating score | 4.5 | | URL | Google Maps listing URL | "https://maps.google.com/..." | 🚀 Setup Instructions Prerequisites n8n instance (self-hosted or cloud) Google account with Sheets access Bright Data account with Google Maps dataset access 5-10 minutes for setup Step 1: Import the Workflow Copy the JSON workflow code from the provided file In n8n: Workflows → + Add workflow → Import from JSON Paste JSON and click Import Step 2: Configure Bright Data Set up Bright Data credentials: In n8n: Credentials → + Add credential → HTTP Request Auth Enter your Bright Data API key Test the connection Configure dataset: Ensure you have access to Google Maps dataset (gd_m8ebnr0q2qlklc02fz) Verify dataset permissions in Bright Data dashboard Step 3: Configure Google Sheets Integration Create a Google Sheet: Go to Google Sheets Create a new spreadsheet named "Business Data" or similar Copy the Sheet ID from URL: https://docs.google.com/spreadsheets/d/SHEET_ID_HERE/edit Set up Google Sheets credentials: In n8n: Credentials → + Add credential → Google Sheets OAuth2 API Complete OAuth setup and test connection Prepare your data sheet with columns: Column A: Name Column B: Address Column C: Rating Column D: Phone Number Column E: URL Step 4: Update Workflow Settings Update Google Sheets node: Open "Save to Google Sheets" node Replace the document ID with your Sheet ID Select your Google Sheets credential Choose the correct sheet/tab name Update Bright Data nodes: Open HTTP Request nodes Replace BRIGHT_DATA_API_KEY with your actual API key Verify dataset ID matches your subscription Step 5: Test & Activate Test the workflow: Activate workflow (toggle switch) Submit test form with location: "New York" and keywords: "restaurants" Verify data appears in Google Sheet Check for proper phone number extraction 📖 Usage Guide Submitting Search Requests Access the form URL provided by n8n Enter the desired location (city, state, or country) Enter relevant keywords (business type, industry, etc.) Submit the form and wait for processing Understanding the Results Your Google Sheet will populate with business data including: Complete business contact information Verified phone numbers from Google Maps Accurate addresses and ratings Direct links to Google Maps listings 🔧 Customization Options Adding More Data Points Edit the "Bright Data API - Request Business Data" node to capture additional fields: Business descriptions Operating hours Reviews count Website URLs Photos and videos Modifying Search Parameters Customize the search behavior: Adjust "limit_per_input" for more or fewer results Modify search type and discovery method Add geographical coordinates for precise targeting 🚨 Troubleshooting Common Issues & Solutions 1. "Bright Data connection failed" Cause:** Invalid API credentials or dataset access Solution:** Verify credentials in Bright Data dashboard, check dataset permissions 2. "No business data extracted" Cause:** Invalid search parameters or no results found Solution:** Try broader keywords or different locations, verify dataset availability 3. "Google Sheets permission denied" Cause:** Incorrect credentials or sheet permissions Solution:** Re-authenticate Google Sheets, check sheet sharing settings 4. "Workflow execution timeout" Cause:** Large search results or slow API response Solution:** Reduce search scope, increase timeout settings, check internet connection 📊 Use Cases & Examples 1. Lead Generation Goal:** Find potential customers in specific areas Search for businesses by industry and location Extract contact information for outreach campaigns Build targeted prospect lists 2. Market Research Goal:** Analyze local business landscape Study competitor density in target markets Identify market gaps and opportunities Gather business intelligence for strategic planning 3. Directory Creation Goal:** Build comprehensive business directories Create industry-specific business listings Maintain updated contact databases Support local business communities 📈 Performance & Limits Expected Performance Processing time:** 1-5 minutes per search depending on results Data accuracy:** 95%+ for active Google Maps listings Success rate:** 90%+ for accessible businesses Concurrent requests:** Depends on Bright Data plan limits Resource Usage Memory:** ~50MB per execution Storage:** Minimal (data stored in Google Sheets) API calls:** 2-3 Bright Data calls + 1 Google Sheets call per search Bandwidth:** ~1-2MB per search request Execution time:** 2-5 minutes for typical searches Scaling Considerations Rate limiting:** Respect Bright Data API limits Error handling:** Implement retry logic for failed requests Data validation:** Add checks for incomplete business data Cost optimization:** Monitor API usage to control expenses Batch processing:** Group multiple searches for efficiency 🤝 Support & Community Getting Help n8n Community Forum:** community.n8n.io Documentation:** docs.n8n.io Bright Data Support:** Contact through your dashboard GitHub Issues:** Report bugs and feature requests Contributing Share improvements with the community Report issues and suggest enhancements Create variations for specific use cases Document best practices and lessons learned 🎯 Ready to Use! This workflow provides a solid foundation for automated Google Maps business data extraction. Customize it to fit your specific needs and use cases. Your workflow URL: https://your-n8n-instance.com/workflow/google-maps-scraper For any questions or support, please contact: info@incrementors.com or fill out this form: https://www.incrementors.com/contact-us/
by Agent Studio
Restore backed up workflows from GitHub to your n8n workspace. This workflow was inspired by this one that lets you back up your n8n workflows to GitHub. It will let you restore your backed up workflows in your workspace, without creating duplicates. In case of issue with your instance, it will save you a lot of time to restore them. How it works It retrieves the workflows saved in a GitHub repository. Then compares these saved workflows with the ones in your n8n workspace based on the name. It will only create them if they don't already exist. Set up steps Open the "Global" node and set your own information (see Configuration below) Click on "Test workflow" It will run through all the workflows in the GitHub repository, check if the name doesn't already exist in your workspace and, in this case, create it. Configuration repo.owner: your GitHub owner name repo.name: your GitHub repository name repo.path: the path within the GitHub repository
by InfyOm Technologies
✅ What problem does this workflow solve? Shopify and E-Commerce store owners often struggle to create engaging 3D videos from static product images. This workflow automates that entire process—from image upload to video delivery—so store owners can get professional-looking 3D videos without any manual editing or follow-up. ⚙️ What does this workflow do? Accepts a 2D product image and name via a public n8n form. Generates a unique slug and folder in Google Drive for the product. Uploads the original image to Google Drive and logs data in a spreadsheet. Removes the background from the image using remove.bg API. Uploads the cleaned image to Google Drive and updates the spreadsheet. Creates a 3D product video using the cleaned image via the Fal.ai API. Periodically checks the video creation status. Once completed, download the video, upload it to Google Drive, and log the link. Notifies the store owner via email with the video download link. 🔧 Setup 🟢 Google Services Google Drive**: Create and connect a folder where all product assets will be stored. Google Spreadsheet**: A spreadsheet to log the product name, original image link, cleaned image link, and final video URL. Gmail**: Connect Gmail to send the final notification email to the store owner. 🔑 API Keys Required Remove.bg**: Get an API key from remove.bg. Fal.ai**: Sign up at fal.ai and obtain your API key to use the image-to-video generation service. 🧠 How it Works 📝 1. Product Form Submission A store owner submits the product name and 2D image via a public n8n form. 🗂 2. Organize in Google Drive A unique slug is generated for the product. A new folder is created inside Google Drive using that slug. The original image is uploaded into the folder. 📊 3. Record in a Spreadsheet The product name and original image URL are stored in a Google Sheet. 🧹 4. Background Removal The uploaded image is processed through remove.bg API to eliminate noisy or cluttered backgrounds. The cleaned image is uploaded back into the product’s Drive folder. The cleaned image link is updated in the spreadsheet. 🎥 5. Create 3D Video (via Fal.ai) The cleaned image is passed to the Fal.ai video generation API. The workflow periodically checks the status until the video is ready. ☁️ 6. Store Final Video Once the video is ready, the file is downloaded. The final video is uploaded into the same Google Drive folder. Its link is saved in the spreadsheet next to the respective product entry. 📧 7. Notify the Store Owner An automated email is sent to the store owner with the video link, letting them know it's ready for use—no waiting, no manual follow-up needed. 👤 Who can use it? This workflow is ideal for: 🛍 Shopify Sellers 🧺 E-commerce Store Owners 📸 Product Photographers 🎬 Marketing Teams 🤖 Automation Enthusiasts If you want to automate 3D product video creation using AI—this is the no-code workflow you’ve been waiting for!
by Wikus Bergh
Who is this for? This template is ideal for n8n administrators, automation engineers, and DevOps teams who want to maintain bidirectional synchronization between their n8n workflows and GitHub repositories. It helps teams keep their workflow backups up-to-date and ensures consistency between their n8n instance and version control system. What problem is this workflow solving? Managing workflow versions across n8n and GitHub can become complex when changes happen in both places. This workflow solves that by automatically synchronizing workflows bidirectionally, ensuring that the most recent version is always available in both systems without manual intervention or version conflicts. What this workflow does: Runs on a weekly schedule (every Monday) to check for synchronization needs. Fetches all workflows from your n8n instance and compares them with GitHub repository files. Identifies workflows that exist only in n8n and uploads them to GitHub as JSON backups. Identifies workflows that exist only in GitHub and creates them in your n8n instance. For workflows that exist in both places, compares timestamps and syncs the most recent version: If n8n version is newer → Updates GitHub with the latest workflow If GitHub version is newer → Updates n8n with the latest workflow Automatically handles file naming, encoding/decoding, and commit messages with timestamps. Setup: Connect GitHub: Configure GitHub API credentials in the GitHub nodes. Note: Use a GitHub Personal Access Token (classic) with repo permissions to read and write workflow files. Connect n8n API: Provide your n8n API credentials in the n8n nodes. Check this doc Configure GitHub Details in the Set GitHub Details node: github_account_name: Your GitHub username or organization github_repo_name: The repository name where workflows should be stored repo_workflows_path: The folder path in your repo (e.g., workflows or n8n-workflows) Adjust Schedule: Modify the Schedule Trigger if you want a different sync frequency (currently set to weekly on Mondays). Test the workflow: Run it manually first to ensure all connections and permissions are working correctly. How to customize this workflow to your needs: Change sync frequency**: Modify the Schedule Trigger to run daily, hourly, or on-demand. Add filtering**: Extend the Filter node to exclude certain workflows (e.g., test workflows, templates). Add notifications**: Insert Slack, email, or webhook notifications to report sync results. Implement conflict resolution**: Add custom logic for handling workflows with the same timestamp. Add workflow validation**: Include checks to validate workflow JSON before syncing. Branch management**: Modify to sync to different branches or create pull requests instead of direct commits. Backup retention**: Add logic to maintain multiple versions or archive old workflows. Key Features: Bidirectional sync**: Handles changes from both n8n and GitHub Timestamp-based conflict resolution**: Always keeps the most recent version Automatic file naming**: Converts workflow names to valid filenames Base64 encoding/decoding**: Properly handles JSON workflow data Comprehensive comparison**: Uses dataset comparison to identify differences Automated commits**: Includes timestamps in commit messages for traceability This automated synchronization workflow provides a robust backup and version control solution for n8n workflows, ensuring your automation assets are always safely stored and consistently available across environments.
by Shiv Gupta
Trustpilot Insights Scraper: Auto Reviews via Bright Data + Google Sheets Sync Overview A comprehensive n8n automation that scrapes Trustpilot business reviews using Bright Data and automatically stores structured data in Google Sheets. Workflow Architecture 1. 📝 Form Trigger Node Purpose: Manual input interface for users Type**: n8n-nodes-base.formTrigger Configuration**: Form Title: "Website URL" Field: "Trustpilot Website URL" Function**: Accepts Trustpilot URL input from users to initiate the scraping process 2. 🌐 HTTP Request (Trigger Scraping) Purpose: Initiates scraping on Bright Data platform Type**: n8n-nodes-base.httpRequest Method**: POST Endpoint**: https://api.brightdata.com/datasets/v3/trigger Configuration**: Query Parameters: dataset_id: gd_lm5zmhwd2sni130p include_errors: true limit_multiple_results: 2 Headers: Authorization: Bearer BRIGHT_DATA_API_KEY Body: JSON with input URL and 35+ custom output fields Custom Output Fields The workflow extracts the following data points: Company Information**: company_name, company_logo, company_overall_rating, company_total_reviews, company_about, company_email, company_phone, company_location, company_country, company_category, company_id, company_website Review Data**: review_id, review_date, review_rating, review_title, review_content, review_date_of_experience, review_url, date_posted Reviewer Information**: reviewer_name, reviewer_location, reviews_posted_overall Review Metadata**: is_verified_review, review_replies, review_useful_count Rating Distribution**: 5_star, 4_star, 3_star, 2_star, 1_star Additional Fields**: url, company_rating_name, is_verified_company, breadcrumbs, company_other_categories 3. ⌛ Snapshot Progress Check Purpose: Monitors scraping job status Type**: n8n-nodes-base.httpRequest Method**: GET Endpoint**: https://api.brightdata.com/datasets/v3/progress/{{ $json.snapshot_id }} Configuration**: Query Parameters: format=json Headers: Authorization: Bearer BRIGHT_DATA_API_KEY Function**: Receives snapshot_id from previous step and checks if data is ready 4. ✅ IF Node (Status Check) Purpose: Determines next action based on scraping status Type**: n8n-nodes-base.if Condition**: $json.status === "ready" Logic**: If True: Proceeds to data download If False: Triggers wait cycle 5. 🕒 Wait Node Purpose: Implements polling delay for incomplete jobs Type**: n8n-nodes-base.wait Duration**: 1 minute Function**: Pauses execution before re-checking snapshot status 6. 🔄 Loop Logic Purpose: Continuous monitoring until completion Flow**: Wait → Check Status → Evaluate → (Loop or Proceed) Prevents**: API rate limiting and unnecessary requests 7. 📥 Snapshot Download Purpose: Retrieves completed scraped data Type**: n8n-nodes-base.httpRequest Method**: GET Endpoint**: https://api.brightdata.com/datasets/v3/snapshot/{{ $json.snapshot_id }} Configuration**: Query Parameters: format=json Headers: Authorization: Bearer BRIGHT_DATA_API_KEY 8. 📊 Google Sheets Integration Purpose: Stores extracted data in spreadsheet Type**: n8n-nodes-base.googleSheets Operation**: Append Configuration**: Document ID: 1yQ10Q2qSjm-hhafHF2sXu-hohurW5_KD8fIv4IXEA3I Sheet Name: "Trustpilot" Mapping: Auto-map all 35+ fields Credentials: Google OAuth2 integration Data Flow User Input (URL) ↓ Bright Data API Call ↓ Snapshot ID Generated ↓ Status Check Loop ↓ Data Ready Check ↓ Download Complete Dataset ↓ Append to Google Sheets Technical Specifications Authentication Bright Data**: Bearer token authentication Google Sheets**: OAuth2 integration Error Handling Includes error tracking in Bright Data requests Conditional logic prevents infinite loops Wait periods prevent API rate limiting Data Processing Mapping Mode**: Auto-map input data Schema**: 35+ predefined fields with string types Conversion**: No type conversion (preserves raw data) Setup Requirements Prerequisites Bright Data Account: Active account with API access Google Account: With Sheets API enabled n8n Instance: Self-hosted or cloud version Configuration Steps API Keys: Configure Bright Data bearer token OAuth Setup: Connect Google Sheets credentials Dataset ID: Verify correct Bright Data dataset ID Sheet Access: Ensure proper permissions for target spreadsheet Environment Variables BRIGHT_DATA_API_KEY: Your Bright Data API authentication token Use Cases Business Intelligence Competitor analysis and market research Customer sentiment monitoring Brand reputation tracking Data Analytics Review trend analysis Rating distribution studies Customer feedback aggregation Automation Benefits Scalability**: Handle multiple URLs sequentially Reliability**: Built-in error handling and retry logic Efficiency**: Automated data collection and storage Consistency**: Standardized data format across all scrapes Limitations and Considerations Rate Limits Bright Data API has usage limitations 1-minute wait periods help manage request frequency Data Volume Limited to 2 results per request (configurable) Large datasets may require multiple workflow runs Compliance Ensure compliance with Trustpilot's terms of service Respect robots.txt and rate limiting guidelines Monitoring and Maintenance Status Tracking Monitor workflow execution logs Check Google Sheets for data accuracy Review Bright Data usage statistics Regular Updates Update API keys as needed Verify dataset ID remains valid Test workflow functionality periodically Workflow Metadata Version ID**: dd3afc3c-91fc-474e-99e0-1b25e62ab392 Instance ID**: bc8ca75c203589705ae2e446cad7181d6f2a7cc1766f958ef9f34810e53b8cb2 Execution Order**: v1 Active Status**: Currently inactive (requires manual activation) Template Status**: Credentials setup completed For any questions or support, please contact: Email or fill out this form
by Oneclick AI Squad
Transform your meetings into actionable insights automatically! This workflow captures meeting audio, transcribes conversations, generates AI summaries, and emails the results to participants—all without manual intervention. What's the Goal? Auto-record meetings** when they start and stop when they end Transcribe audio** to text using Vexa Bot integration Generate intelligent summaries** with AI-powered analysis Email summaries** to meeting participants automatically Eliminate manual note-taking** and post-meeting admin work Never miss important discussions** or action items again Why Does It Matter? Save 90% of Post-Meeting Time**: No more manual transcription or summary writing Never Lose Key Information**: Automatic capture ensures nothing falls through cracks Improve Team Productivity**: Focus on discussions, not note-taking Perfect Meeting Records**: Searchable transcripts and summaries for future reference Instant Distribution**: Summaries reach all participants immediately after meetings How It Works Step 1: Meeting Detection & Recording Start Meeting Trigger**: Detects when meeting begins via Google Meet webhook Launch Vexa Bot**: Automatically joins meeting and starts recording End Meeting Trigger**: Detects meeting end and stops recording Step 2: Audio Processing & Transcription Stop Vexa Bot**: Ends recording and retrieves audio file Fetch Meeting Audio**: Downloads recorded audio from Vexa Bot Transcribe Audio**: Converts speech to text using AI transcription Step 3: AI Summary Generation Prepare Transcript**: Formats transcribed text for AI processing Generate Summary**: AI model creates concise meeting summary with: Key discussion points Decisions made Action items assigned Next steps identified Step 4: Distribution Send Email**: Automatically emails summary to all meeting participants Setup Requirements Google Meet Integration: Configure Google Meet webhook and API credentials Set up meeting detection triggers Test with sample meeting Vexa Bot Configuration: Add Vexa Bot API credentials for recording Configure audio file retrieval settings Set recording quality and format preferences AI Model Setup: Configure AI transcription service (e.g., OpenAI Whisper, Google Speech-to-Text) Set up AI summary generation with custom prompts Define summary format and length preferences Email Configuration: Set up SMTP credentials for email distribution Create email templates for meeting summaries Configure participant list extraction from meeting metadata Import Instructions Get Workflow JSON: Copy the workflow JSON code Open n8n Editor: Navigate to your n8n dashboard Import Workflow: Click menu (⋯) → "Import from Clipboard" → Paste JSON → Import Configure Credentials: Add API keys for Google Meet, Vexa Bot, AI services, and SMTP Test Workflow: Run a test meeting to verify end-to-end functionality Your meetings will now automatically transform into actionable summaries delivered to your inbox!
by PollupAI
Social Media Analysis and Automated Email Generation > by Thomas Vie Thomas@pollup.net Who is this for? This template is ideal for marketers, lead generation specialists, and business professionals seeking to analyze social media profiles of potential leads and automate personalized email outreach efficiently. What problem is this workflow solving? Manually analyzing social media profiles and crafting personalized emails can be time-consuming and prone to errors. This workflow streamlines the process by integrating social media APIs with AI to generate tailored communication, saving time and increasing outreach effectiveness. What this workflow does: Google Sheets Integration: Start with a Google Sheet containing lead information such as LinkedIn URL, Twitter handle, name, and email. Social Media Data Extraction: Automatically fetch profile and activity data from Twitter and LinkedIn using RapidAPI integrations. AI-Powered Content Generation: Use OpenAI's Chat Model to analyze the extracted data and generate personalized email subject lines and cover letters. Automated Email Dispatch: Send the generated email directly to the lead, with a copy sent to yourself for tracking purposes. Progress Tracking: Update the Google Sheet to indicate completed actions. Setup: Google Sheets: Create a sheet with the columns: LinkedIn URL, name, Twitter handle, email, and a "done" column for tracking. Populate the sheet with your leads. RapidAPI Accounts: Sign up for RapidAPI and subscribe to the Twitter and LinkedIn API plans. Configure API authentication keys in the workflow. AI Configuration: Connect OpenAI Chat Model with your API key for text generation. Email Integration: Add your email credentials or service (SMTP or third-party service like Gmail) for sending automated emails. How to customize this workflow to your needs: Modify the AI Prompt:** Adapt the prompt in the AI node to better align with your tone, style, or specific messaging framework. Expand Data Fields:** Add additional data fields in Google Sheets if you require further personalization. API Limits:** Adjust API configurations to fit your usage limits or upgrade to higher tiers for increased data scraping capabilities. Personalize Email Templates:** Tweak email formats to suit different audiences or use cases. Extend Functionality:** Integrate additional social media platforms or CRM tools as needed. By implementing this workflow, you’ll save time on repetitive tasks and create more effective lead generation strategies.
by Davide
This low-code automation enables all eCommerce store visitors to upload a photo of themselves and virtually “try on” a garment in just a few clicks. With this workflow, WooCommerce, Prestashop, Shopify and more merchants can offer a cutting-edge “virtual try-on” feature with minimal development effort, enhancing customer engagement and reducing product returns. Key Advantages Zero-Coding, Visual Setup** Build end-to-end e-commerce features with drag-and-drop nodes instead of custom backend code. Asynchronous, Scalable Processing** Non-blocking “Wait” + “If” loop handles multi-second AI jobs gracefully, freeing up the workflow for other tasks. Dynamic Inputs & URLs** Query strings (e.g. ?Product=IMAGE_URL) allow you to embed the form on any product page and pass the garment image on the fly. Seamless User Experience** Instant pop-up within your storefront and automatic redirect to the generated mock-up keeps shoppers engaged without page reloads. Easy Credential Management** API keys, FTP credentials, and webhook IDs are all stored securely in n8n’s credential manager. How It Works Form Submission: A user submits a form with their name, an image of themselves ("Me"), and a hidden product image URL ("Product"). The form is triggered via the On form submission node, which collects the input data. Image Upload: The uploaded image ("Me") is sent to an FTP server for temporary storage using the FTP node. The filename includes a timestamp to ensure uniqueness. Virtual Try-on Request: The Create Image node sends a POST request to the Fal.run API, providing: The uploaded human image URL (from FTP). The product image URL (from the hidden form field). This generates a virtual try-on result. Result Processing: The workflow checks the status of the image generation (Get status node) in a loop (with a 10-second wait between checks) until it is marked as "COMPLETED." Once ready, the final image URL is fetched (Get Url image node) and displayed to the user via a redirect (Form node). User Experience: The user is redirected to the generated try-on image, completing the process. Set Up Steps API Key Setup: Create an account and obtain an API key. Configure the Create Image node with HTTP Header Authentication: Name: Authorization Value: Key YOURAPIKEY FTP/S3 Configuration: Set up an FTP server or S3 bucket to temporarily store uploaded user images. Configure the FTP node with your FTP credentials and storage path. Ecommerce Integration: On your WooCommerce site, add a "Try On" button that opens the form in a pop-up. Dynamically pass the product image URL as a query parameter: Example: https://URL_N8N/form/ca1c314d-46c6-4eeb-b6a5-359XXXXXX?Product=IMAGE_URL Testing: Verify the workflow by submitting a test form and ensuring the virtual try-on image is generated and displayed correctly. Need help customizing? Contact me for consulting and support or add me on Linkedin.
by Guido X Jansen
Introduction **Manual LinkedIn data collection is time-consuming, error-prone, and results in inconsistent data quality across CRM/database records.** This workflow is great for organizations that struggle with: Incomplete contact records with only LinkedIn URLs but missing profile details Hours spent manually copying LinkedIn information into databases Inconsistent data formats due to copy-paste from LinkedIn (emojis, styled text, special characters) Outdated profile information that doesn't reflect current roles/companies No systematic way to enrich contacts at scale Primary Users Sales & Marketing Teams Event Organizers & Conference Managers for event materials Recruitment & HR Professionals CRM Administrators Specific Problems Addressed Data Completeness: Automatically fills missing profile fields (headline, bio, skills, experience) Data Quality: Sanitizes problematic characters that break databases/exports Time Efficiency: Reduces hours of manual data entry to automated monthly updates Error Handling: Gracefully manages invalid/deleted LinkedIn profiles Scalability: Processes multiple profiles in batch without manual intervention Standardization: Ensures consistent data format across all records Cost Each URL scraped by Apify costs $0.01 to get all the data above. Apify charges per scrape, regardless of how much dta or fields you extract/use. Setup Instructions Prerequisites n8n Instance: Access to a running n8n instance (self-hosted or cloud) NocoDB Account: Database with a table containing LinkedIn URLs Apify Account: Free or paid account for LinkedIn scraping Required fields in NocoDB table Input: single LinkedIn URL NocoDB Field name LinkedIn Output: first/last/full name e-mail bio headline profile pic URL current role country skills current employer employer URL experiences (all previous jobs) personal website publications (articles) NocoDB Field names linkedin_full_name linkedin_first_name: linkedin_headline: linkedin_email: linkedin_bio: linkedin_profile_pic linkedin_current_role linkedin_current_company linkedin_country linkedin_skills linkedin_company_website linkedin_experiences linkedin_personal_website linkedin_publications linkedin_scrape_error_reason linkedin_scrape_last_attempt linkedin_scrape_status linkedin_last_modified Technically you also need an Id field, but that is always there so no need to add it :) n8n Setup 1. Import the Workflow Copy the workflow JSON from the template In n8n, click "Add workflow" → "Import from JSON" Paste the workflow and click "Import" 2. Configure NocoDB Connection Click on any NocoDB node in the workflow Add new credentials → "NocoDB Token account" Enter your NocoDB API token (found in NocoDB → User Settings → API Tokens) Update the projectId and table parameters in all NocoDB nodes 3. Set Up Apify Integration Create an Apify account at apify.com Generate an API token (Settings → Integrations → API) In the workflow, update the Apify token in the "Get Scraper Results" node Configure HTTP Query Auth credentials with your token 4. Map Your Database Fields Review the "Transform & Sanitize Data" node Update field mappings to match your NocoDB table structure Ensure these fields exist in your table: LinkedIn (URL field) linkedin_headline, linkedin_full_name, linkedin_bio, etc. linkedin_scrape_status, linkedin_last_modified 5. Configure the Filter In "Get Guests with LinkedIn" node Adjust the filter to match your requirements Default: (LinkedIn,isnot,null)~and(linkedin_headline,is,null) 6. Test the Workflow Click "Execute Workflow" with Manual Trigger Monitor execution for any errors Verify data is properly updated in NocoDB 7. Activate Automated Schedule Configure the Schedule Trigger node (default: monthly) Toggle the workflow to "Active" Monitor executions in n8n dashboard Customization Options 1. Data Source Modifications Different Database: Replace NocoDB nodes with Airtable, Google Sheets, or PostgreSQL Multiple Tables: Add parallel branches to process different contact tables Custom Filters: Modify the WHERE clause to target specific record subsets 2. Enrichment Fields Add Fields: Include additional LinkedIn data like education, certifications, or recommendations Remove Fields: Simplify by removing unnecessary fields (publications, skills) Custom Transformations: Add business logic for field calculations or formatting 3. Scheduling Options Frequency: Change from monthly to daily, weekly, or hourly Time-based: Set specific times for different timezones Event-triggered: Replace with webhook trigger for on-demand processing 4. Error Handling Enhancement Notifications: Add email/Slack nodes to alert on failures Retry Logic: Implement wait and retry for temporary failures Logging: Add database logging for audit trails 5. Data Quality Rules Validation: Add IF nodes to validate data before updates Duplicate Detection: Check for existing records before creating new ones Data Standardization: Add custom sanitization rules for industry-specific needs 6. Integration Extensions CRM Sync: Add nodes to push data to Salesforce, HubSpot, or Pipedrive AI Enhancement: Use OpenAI to summarize bios or extract key skills Image Processing: Download and store profile pictures locally 7. Performance Optimization Batch Size: Adjust the number of profiles processed per run Rate Limiting: Add delays between API calls to avoid limits Parallel Processing: Split large datasets across multiple workflow executions 8. Compliance Additions GDPR Compliance: Add consent checking before processing Data Retention: Implement automatic cleanup of old records Audit Logging: Track who accessed what data and when These customizations allow the workflow to adapt from simple contact enrichment to complex data pipeline scenarios across various industries and use cases.
by David Ashby
Complete MCP server exposing all Cloudflare Tool operations to AI agents. Zero configuration needed - all 4 operations pre-built. ⚡ Quick Setup Need help? Want access to more workflows and even live Q&A sessions with a top verified n8n creator.. All 100% free? Join the community Import this workflow into your n8n instance Activate the workflow to start your MCP server Copy the webhook URL from the MCP trigger node Connect AI agents using the MCP URL 🔧 How it Works • MCP Trigger: Serves as your server endpoint for AI agent requests • Tool Nodes: Pre-configured for every Cloudflare Tool operation • AI Expressions: Automatically populate parameters via $fromAI() placeholders • Native Integration: Uses official n8n Cloudflare Tool tool with full error handling 📋 Available Operations (4 total) Every possible Cloudflare Tool operation is included: 🔧 Zonecertificate (4 operations) • Delete a certificate • Get a certificate • Get many certificates • Upload a certificate 🤖 AI Integration Parameter Handling: AI agents automatically provide values for: • Resource IDs and identifiers • Search queries and filters • Content and data payloads • Configuration options Response Format: Native Cloudflare Tool API responses with full data structure Error Handling: Built-in n8n error management and retry logic 💡 Usage Examples Connect this MCP server to any AI agent or workflow: • Claude Desktop: Add MCP server URL to configuration • Custom AI Apps: Use MCP URL as tool endpoint • Other n8n Workflows: Call MCP tools from any workflow • API Integration: Direct HTTP calls to MCP endpoints ✨ Benefits • Complete Coverage: Every Cloudflare Tool operation available • Zero Setup: No parameter mapping or configuration needed • AI-Ready: Built-in $fromAI() expressions for all parameters • Production Ready: Native n8n error handling and logging • Extensible: Easily modify or add custom logic > 🆓 Free for community use! Ready to deploy in under 2 minutes.
by Jaruphat J.
⚠️ Important Disclaimer: This template is only compatible with a self-hosted n8n instance using a community node. Who is this for? This workflow is ideal for digital content creators, marketers, social media managers, and automation enthusiasts who want to produce fully automated vertical video content featuring inspirational or motivational quotes. Specifically tailored for Thai language, it effectively demonstrates integration of AI-generated imagery, video, ambient sound, and visually appealing quote overlays. What problem is this workflow solving? Manually creating high-quality, vertically formatted quote videos is often repetitive, time-consuming, and involves multiple tedious steps like selecting suitable visuals, editing audio tracks, and correctly overlaying text. Additionally, manual uploading to platforms like YouTube and maintaining accurate content records are prone to errors and inefficiencies. What this workflow does: Fetches a quote, author, and scenic background description from a Google Sheet. Automatically generates a vertical background image using the Flux AI (txt2img) API. Transforms the AI-generated image into a subtly animated cinematic vertical video using the Kling video-generation API. Generates an immersive, ambient background sound using ElevenLabs’ sound generation API. Dynamically overlays the selected Thai-language quote and author text onto the generated video using FFmpeg, ensuring visually appealing typography (e.g., Kanit font). Automatically uploads the final video to YouTube. Updates the resulting YouTube video URL back to the Google Sheet, keeping your content records current and well-organized. Setup Requirements: This workflow requires a self-hosted n8n instance, as the execution of FFmpeg commands is not supported on n8n Cloud. Ensure FFmpeg is installed on your self-hosted environment. API keys and accounts setup for Flux, Kling, ElevenLabs, Google Sheets, Google Drive, and YouTube. Google Sheets Setup: Your Google Sheet must include these columns: Index** Unique identifier for each quote Quote (Thai)** Quote text in Thai language (or your chosen language) Pen Name (Thai)** Author or pen name of the quote's creator Background (EN)** Short English description of the scene (e.g., "sunrise over mountains") Prompt (EN)** Detailed English prompt describing the image/video scene (e.g., "peaceful sunrise with misty mountains") Background Image** URL of AI-generated image (updated automatically) Background Video** URL of generated video (updated automatically) Music Background** URL of generated ambient audio (updated automatically) Video Status** YouTube URL (updated automatically after upload) A ready-to-use Google Sheets template is provided [here (provide your actual link)]. To help you get started quickly, you can use this template spreadsheet. Next steps: Authenticate Google Sheets, Google Drive, YouTube API, Flux AI, Kling API, and ElevenLabs API within n8n. Ensure FFmpeg supports fonts compatible with your chosen language (for Thai, "Kanit" font is recommended). Prepare your Google Sheets with desired quotes, authors, and image/video prompts. How to customize this workflow to your needs: Fonts:** Adjust font type, size, color, and positioning within the provided FFmpeg commands in the workflow’s code nodes. Verify that selected fonts properly support your target language. Media Customization:** Customize the scene descriptions in your Google Sheet to change image/video backgrounds automatically generated by AI. Quote Management:** Easily manage, add, or update quotes and associated details directly via Google Sheets without workflow modifications. Audio Ambiance:** Customize or adjust the ambient sound prompt for ElevenLabs within the workflow’s HTTP Request node to match your video's desired mood. Benefits of using AI-generated content and localized fonts: Leveraging AI-generated visual and audio elements along with localized fonts greatly enhances audience engagement by creating visually appealing, professional-quality content tailored specifically for your target audience. This automated workflow drastically reduces production time and manual effort, enabling rapid, consistent content creation optimized for platforms such as YouTube Shorts, Instagram Reels, and TikTok.
by RealSimple Solutions
Who Is This For? This workflow is designed for AI engineers, automation specialists, and content creators who need a scalable system to dynamically manage prompts stored in GitHub. It eliminates manual updates, enforces required variable checks, and ensures that AI interactions always receive fully processed prompts. 🚀 What Problem Does This Solve? Manually managing AI prompts can be inefficient and error-prone. This workflow: ✅ Fetches dynamic prompts from GitHub ✅ Auto-populates placeholders with values from the setVars node ✅ Ensures all required variables are present before execution ✅ Processes the formatted prompt through an AI agent 🛠 How This Workflow Works This workflow consists of three key branches, ensuring smooth prompt retrieval, variable validation, and AI processing. 1️⃣ Retrieve the Prompt from GitHub (HTTP Request → Extract from File → SetPrompt) The workflow starts manually or via an external trigger. It fetches a text-based prompt stored in a GitHub repository. The Extract from File Node retrieves the content from the GitHub file. The SetPrompt Node stores the prompt, making it accessible for processing. 📌 Note: The prompt must contain n8n expression format variables (e.g., {{ $json.company }}) so they can be dynamically replaced. 2️⃣ Extract & Auto-Populate Variables (Check All Prompt Vars → Replace Variables) A Code Node scans the prompt for placeholders in the n8n expression format ({{ $json.variableName }}). The workflow compares required variables against the setVars node: ✅ If all variables are present, it proceeds to variable replacement. ❌ If any variables are missing, the workflow stops and returns an error listing them. The Replace Variables Node replaces all placeholders with values from setVars. 📌 Example of a properly formatted GitHub prompt: Hello {{ $json.company }}, your product {{ $json.features }} launches on {{ $json.launch_date }}. This ensures seamless replacement when processed in n8n. 3️⃣ AI Processing & Output (AI Agent → Prompt Output) The Set Completed Prompt Node stores the final, processed prompt. The AI Agent Node (Ollama Chat Model) processes the prompt. The Prompt Output Node returns the fully formatted response. 📌 Optional: Modify this to use OpenAI, Claude, or other AI models. ⚠️ Error Handling: Missing Variables If a required variable is missing, the workflow stops execution and provides an error message: ⚠️ Missing Required Variables: ["launch_date"] This ensures no incomplete prompts are sent to AI agents. ✅ Example Use Case 📜 GitHub Prompt File (Using n8n Expressions) Hello {{ $json.company }}, your product {{ $json.features }} launches on {{ $json.launch_date }}. 🔹 Variables in setVars Node { "company": "PropTechPro", "features": "AI-powered Property Management", "launch_date": "March 15, 2025" } ✅ Successful Output Hello PropTechPro, your product AI-powered Property Management launches on March 15, 2025. 🚨 Error Output (If Missing launch_date) ⚠️ Missing Required Variables: ["launch_date"] 🔧 Setup Instructions 1️⃣ Connect Your GitHub Repository Store your prompt in a public or private GitHub repo. The workflow will fetch the raw file using the GitHub API. 2️⃣ Configure the SetVars Node Define the required variables in the SetVars Node. Make sure the variable names match those used in the prompt. 3️⃣ Test & Run Click Test Workflow to execute. If variables are missing, it will show an error. If everything is correct, it will output the fully formatted prompt. ⚡ How to Customize This Workflow 💡 Need CRM or Database Integration? Connect the setVars node to an Airtable, Google Sheets, or HubSpot API to pull variables dynamically. 💡 Want to Modify the AI Model? Replace the Ollama Chat Model with OpenAI, Claude, or a custom LLM endpoint. 📌 Why Use This Workflow? ✅ No Manual Updates Required – Fetches prompts dynamically from GitHub. ✅ Prevents Broken Prompts – Ensures required variables exist before execution. ✅ Works for Any Use Case – Handles AI chat prompts, marketing messages, and chatbot scripts. ✅ Compatible with All n8n Deployments – Works on Cloud, Self-Hosted, and Desktop versions.