by Automate With Marc
🔧 How It Works Telegram Trigger – Listens for incoming messages from users via your Telegram bot. Watch Full Step-by-step Guide Video here: https://www.youtube.com/watch?v=GzWO7_1lyI8 AI Agent – Processes the message to determine the user's intent (booking or canceling) and extracts necessary details like date, time, and participant names. Google Calendar Node – Depending on the intent: Booking: Creates a new event in Google Calendar with the extracted details. Canceling: Searches for the specified event and deletes it from the calendar. Telegram Node – Sends a confirmation message back to the user, informing them of the successful booking or cancellation. 🧠 Why This is Useful Managing appointments can be time-consuming. This workflow automates the process, allowing users to schedule or cancel meetings effortlessly through a simple chat interface. It's ideal for: Solopreneurs managing their own schedules. Small businesses coordinating meetings with clients. Anyone looking to streamline their appointment management process. 🪜 Setup Instructions Set Up Telegram Bot: Create a new bot using BotFather on Telegram. Obtain the API token and set up the Telegram Trigger node in n8n with this token. OpenAI Platform API required for OpenAI Chat Model Connect to Google Calendar For the full video tutorial, watch here: https://youtu.be/GzWO7_1lyI8
by ankitkansaldev
🎬 TikTok Influencer Scraper (URL Input) via Bright Data + n8n & Sheets A comprehensive n8n automation that scrapes TikTok influencer profiles using Bright Data's TikTok dataset and automatically saves detailed profile information to Google Sheets. 📋 Overview This workflow provides an automated TikTok influencer data collection solution that scrapes comprehensive profile information and saves it to Google Sheets. Perfect for influencer marketing research, competitor analysis, social media monitoring, and marketing campaign planning. ✨ Key Features 📝 Form-Based Input: Simple web form to submit TikTok profile URLs 🤖 Bright Data Integration: Uses Bright Data's TikTok dataset for reliable scraping ⏳ Status Monitoring: Intelligent polling system to check scraping progress 🔄 Retry Logic: Automatic retry mechanism with 30-second intervals 📊 Data Extraction: Comprehensive profile data including engagement metrics 📈 Google Sheets Storage: Automatic data storage and organization ⚡ Error Handling: Built-in error handling and status reporting 🎯 Custom Fields: Configurable output fields for specific data needs 🎯 What This Workflow Does Input Profile URLs**: TikTok profile URLs submitted through web form Custom Fields**: Configurable data fields for extraction Country Settings**: Geo-targeting for accurate data collection Processing Form Submission: User submits TikTok profile URL through web form API Trigger: Sends profile data to Bright Data for scraping Status Polling: Continuously checks scraping progress Wait & Retry: Implements 30-second delays between status checks Data Retrieval: Fetches complete profile data when ready Sheet Update: Saves extracted data to Google Sheets Status Reporting: Provides completion status and messages Output Data Points | Field | Description | Example | |-------|-------------|---------| | Account ID | Unique TikTok account identifier | @username123 | | Nickname | Display name on profile | "John Doe" | | Biography | Profile bio/description | "Content creator & influencer" | | Followers | Number of followers | 1,250,000 | | Following | Number of accounts following | 500 | | Likes | Total likes across all videos | 50,000,000 | | Videos Count | Total number of videos posted | 1,200 | | Profile URL | Direct link to TikTok profile | https://www.tiktok.com/@username | | Profile Picture | Profile image URL | https://p16-sign-sg.tiktokcdn.com/... | | Profile Picture HD | High-definition profile image | https://p16-sign-sg.tiktokcdn.com/... | | Is Verified | Verification status | true/false | | Bio Link | External link in bio | https://linktr.ee/username | | Like Engagement Rate | Engagement rate based on likes | 5.2% | | Comment Engagement Rate | Engagement rate based on comments | 2.1% | | Top Videos | List of top performing videos | [video_objects] | | Region | Geographic region | "US" | | Is Under Age 18 | Age status indicator | true/false | 🚀 Setup Instructions Prerequisites n8n instance (self-hosted or cloud) Google account with Sheets access Bright Data account with TikTok dataset access Valid TikTok profile URLs for testing 10-15 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 Generic Credential Name: "Bright Data API" Authentication: Bearer Token Token: Your Bright Data API key Test the connection Configure dataset: Ensure you have access to TikTok dataset (gd_l1villgoiiidt09ci) Verify dataset permissions in Bright Data dashboard Check dataset limits and pricing Step 3: Configure Google Sheets Integration Create a Google Sheet: Go to Google Sheets Create a new spreadsheet named "TikTok Influencer Data" Create a sheet tab named "TikTok profile by url" 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: Account ID Column B: Nickname Column C: Biography Column D: Followers Column E: Following Column F: Likes Column G: Videos Count Column H: Profile URL Column I: Is Verified Column J: Bio Link Column K: Like Engagement Rate Column L: Comment Engagement Rate Column M: Region Column N: Status Column O: Message Step 4: Update Workflow Settings Update API credentials: Open "Sends profile URLs to Bright Data to trigger scraping" node Replace BRIGHT_DATA_API_KEY with your actual API key Update dataset ID if different Update Google Sheets nodes: Open "Google Sheets" node Replace document ID: 1OeqtCFm4Wek9DI5YFOWQXTpQJS-SJxC10iAPKEKkmiY Select your Google Sheets credential Choose the correct sheet/tab name Configure form settings: Open "Search by Profile URL" node Customize form title and field labels as needed Note the webhook URL for form access Step 5: Test & Activate Add test profiles: Access the form using the webhook URL Submit 1-2 TikTok profile URLs for testing Use full URLs (e.g., https://www.tiktok.com/@username) Test the workflow: Submit a test profile through the form Monitor execution in n8n Verify data appears in Google Sheet Check for any error messages 📖 Usage Guide Submitting TikTok Profiles Navigate to your form URL (found in Form Trigger node) Enter TikTok profile URL in the format: https://www.tiktok.com/@username Click Submit to start the scraping process Wait for processing (typically 1-3 minutes) Understanding the Process The workflow follows this sequence: Form Submission → Profile URL captured API Trigger → Scraping job submitted to Bright Data Status Polling → Checks every 30 seconds if data is ready Data Retrieval → Fetches complete profile information Sheet Update → Saves data to Google Sheets Monitoring Progress Check n8n execution logs for real-time status Bright Data dashboard shows scraping progress Google Sheets will populate when data is ready Status column shows "ready" when complete Reading the Results Your Google Sheet will show: Complete TikTok profile information Engagement metrics and statistics Profile verification status Bio links and external connections Timestamp of data collection 🔧 Customization Options Adding More Data Points Edit the JSON body in "Sends profile URLs to Bright Data" node to include additional fields: "custom_output_fields": [ "account_id", "nickname", "biography", "followers", "following", "likes", "videos_count", "language", "creation_time", "last_post_time", "avg_video_duration", "hashtags_used", "music_used" ] Modifying Input Parameters Customize the scraping parameters: Country targeting**: Change "country" field in input Search limits**: Adjust "limit_per_input" value Discovery method**: Modify "discover_by" parameter Error handling**: Toggle "include_errors" setting Batch Processing Multiple Profiles To process multiple profiles simultaneously: Modify the input array in the API call Add multiple profile URLs in single request Implement loop logic for processing results Add rate limiting between requests Custom Form Fields Enhance the form with additional inputs: Open "Search by Profile URL" node Add form fields for: Country selection Number of videos to analyze Specific date ranges Custom tags or categories 🚨 Troubleshooting Common Issues & Solutions "Bright Data connection failed" Cause: Invalid API credentials or dataset access Solution: Verify API key in Bright Data dashboard, check dataset permissions "Profile not found or private" Cause: Invalid TikTok URL or private profile Solution: Verify profile URL format, ensure profile is public "Google Sheets permission denied" Cause: Incorrect credentials or sheet permissions Solution: Re-authenticate Google Sheets, check sheet sharing settings "Scraping timeout" Cause: Profile data taking too long to process Solution: Increase wait time or implement longer polling intervals "Invalid dataset ID" Cause: Incorrect or expired dataset configuration Solution: Check Bright Data dashboard for correct dataset ID "Form submission failed" Cause: Webhook configuration issues Solution: Verify webhook URL and form trigger settings Advanced Troubleshooting Check execution logs** in n8n for detailed error messages Test individual nodes** by running them separately Verify data formats** ensure URLs are properly formatted Monitor API limits** check Bright Data usage quotas Add error handling** implement try-catch logic for robust operation 📊 Use Cases & Examples 1. Influencer Marketing Research Goal: Identify and analyze potential influencers for campaigns Research influencers in specific niches Analyze engagement rates and audience size Compare multiple influencers for campaign selection Track influencer growth over time 2. Competitive Analysis Goal: Monitor competitors' TikTok presence and performance Track competitor follower growth Analyze content strategies and engagement Monitor posting frequency and timing Identify trending content themes 3. Social Media Monitoring Goal: Track brand mentions and user-generated content Monitor branded hashtag usage Track brand advocates and micro-influencers Analyze sentiment and engagement patterns Identify trending topics in your industry 4. Market Research Pipeline Goal: Gather social media intelligence for business decisions Analyze target audience behavior Study content preferences and trends Generate reports for stakeholders Support marketing strategy development ⚙ Advanced Configuration Rate Limiting and Performance To optimize for large-scale scraping: Adjust wait times between status checks Implement exponential backoff for retries Add batch processing for multiple profiles Monitor API usage to avoid limits Data Validation and Cleaning Enhance data quality with validation: Add data type validation for numeric fields Implement URL format checking Clean and standardize text fields Add data completeness checks Integration with Business Tools Connect the workflow to your existing systems: CRM Integration**: Update customer records with influencer data Slack Notifications**: Send alerts when new data is available Database Storage**: Store data in PostgreSQL/MySQL for analysis BI Tools**: Connect to Tableau/Power BI for visualization Webhook Integration For real-time updates: Add webhook triggers for immediate profile checks Integrate with external systems via webhooks Create API endpoints for programmatic access Implement authentication for secure access 📈 Performance & Limits Expected Performance Single Profile**: 30-60 seconds average processing time Concurrent Requests**: 5-10 simultaneous (depends on Bright Data plan) Data Accuracy**: 95%+ for public TikTok profiles Success Rate**: 90%+ for accessible profiles Daily Capacity**: 100-1000 profiles (depends on rate limits) Resource Usage Memory**: ~50MB per execution Storage**: Minimal (data stored in Google Sheets) API Calls**: 3-5 Bright Data calls per profile (including status checks) Bandwidth**: ~1-2MB per profile scraped Execution Time**: 1-2 minutes per profile Scaling Considerations Rate Limiting**: Add delays for high-volume scraping Error Handling**: Implement retry logic for failed requests Data Validation**: Add checks for malformed profile data Monitoring**: Track success/failure rates over time Cost Optimization**: Monitor API usage to control costs 🤝 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 📋 Quick Setup Checklist Before You Start ☐ n8n instance running (self-hosted or cloud) ☐ Google account with Sheets access ☐ Bright Data account with TikTok dataset access ☐ Valid TikTok profile URLs for testing ☐ 15 minutes for setup Setup Steps ☐ Import Workflow - Copy JSON and import to n8n ☐ Configure Bright Data - Set up API credentials and test ☐ Create Google Sheet - New sheet with proper column structure ☐ Set up Google Sheets credentials - OAuth setup and test ☐ Update workflow settings - Replace sheet ID and API keys ☐ Test with sample profiles - Submit 1-2 URLs and verify results ☐ Activate workflow - Enable form trigger for production use Ready to Use! 🎉 Your form URL: https://your-n8n-instance.com/form/[webhook-id] 🎯 Happy TikTok Scraping! This workflow provides a solid foundation for automated TikTok influencer data collection. Customize it to fit your specific needs and use cases for influencer marketing, competitive analysis, and social media research.
by Agent Studio
Overview This n8n workflow retrieves AI agent chat memory logs stored in Postgres and pushes them to Google Sheets, creating one sheet per session. It’s useful for teams building chat-based products or agents and needing to review or analyze session logs in a collaborative format. Who is it for Anyone with an AI Agent in Production storing the conversation logs in Postgres (or Supabase) who wants to see transcript and have control Product teams building AI agents or assistants. Teams that want to centralize conversation history for analysis or support. Anyone managing AI chat memory and needing to explore it in a spreadsheet. Prerequisites A Postgres database with a n8n_chat_histories table with an AI Agent connected to it. If you need an example, you can follow this tutorial Once done, you need to run the Postgresql query to add the created_at column (see Setup > Add a datetime column) Google Sheets access and OAuth credentials connected to n8n. A Google Sheets document set up as a template (see below). Google Sheets Template This workflow expects a Google Sheets file where each session will be stored in its own tab. A basic tab layout is duplicated and renamed with the session ID. 👉 Use this template as a starting point Note: You can hide the template after the first tabs have been created How it works Trigger The workflow can be launched manually or on a schedule (e.g. daily at noon). Retrieve sessions Runs a SQL query to get distinct session_id values from the n8n_chat_histories table. Loop over sessions For each session: Clears the corresponding sheet (if it exists). Duplicates the template tab. Renames it with the current session_id. Fetch messages Selects all messages linked to the session from Postgres. Append to sheet Adds each message to the Google Sheet with columns: Who: speaker role (user, assistant, etc.) Message: text content Date: timestamp from created_at, formatted yyyy-MM-dd hh:mm:ss Notes The sheet is cleared and rebuilt each run to ensure logs are up-to-date. If a sheet for a session doesn’t exist, it will be created by duplicating the first tab (template) You can group sessions under a persistent ID (like user_id) by overriding session_id in your memory config. Works perfectly with Supabase by using PG credentials from the connection pooler. 👉 If you're looking for a solution to better visualize and analyse conversations, reach out to us!
by Jan Willem Altink
Supabase Storage File Upload Workflow works with selfhosted Supabase ℹ️ How it works • Accepts file data (MIME type, filename, base64 content) from other workflows • Automatically routes files to appropriate storage buckets based on file type (images, audio, video, documents) • Uploads files to Supabase Storage using the REST API • Generates secure signed URLs for file access with 30-day expiration • Returns structured success/error responses for downstream processing 🏗️ Set up steps • Configure Supabase API credentials in n8n • Create storage buckets in your Supabase project (image-files, audio-files, video-files, document-files) (or choose your own structuring system) • Replace url paths with your own • Test the workflow using the included form trigger • Remove test form and integrate with your main workflows 📚 Reference: Supabase Storage Documentation
by William Lettieri
Overview Transform your LLM into a powerful GitHub automation specialist with this n8n workflow template. In a world where multiple MCP servers can overwhelm LLMs with context, this streamlined solution provides a dedicated GitHub Agent that handles all GitHub API operations through a single, specialized tool. When you need GitHub operations like creating repositories, managing issues, or handling pull requests, your LLM can make one simple call to the GitHub Agent. This agent specializes exclusively in GitHub MCP server operations, offloading all contextual complexity and providing clean, efficient GitHub automation. ✨ Features Single MCP Server Trigger** - One tool and one parameter to handle all GitHub API interactions Specialized GitHub Agent** - Dedicated AI agent with direct GitHub MCP Server connection Self-Executing Workflow** - "When Executed by Another Workflow" trigger enables seamless workflow chaining Scalable Architecture** - Ready to integrate with unlimited GitHub tools and operations Context Optimization** - Reduces LLM token usage by delegating GitHub complexity to a specialized agent Flexible Request Processing** - Handles any GitHub operation through natural language requests 🎯 Use Cases Repository Management** - Create, clone, and manage repositories programmatically Issue Tracking** - Automate issue creation, updates, and management workflows Pull Request Automation - Streamline code review and merge processes GitHub Actions Integration** - Trigger and monitor CI/CD workflows Team Collaboration** - Automate notifications and team management tasks Documentation Updates** - Automatically update README files and documentation 🏗️ Workflow Architecture Node Breakdown: MCP Server Trigger - Receives requests with GitHub operation parameters Set GitHub Username - Configures GitHub user context for API calls OpenAI Chat Model - Powers the intelligent GitHub agent with contextual understanding Simple Memory - Maintains conversation context and operation history GitHub AI Agent - Specialized Tools Agent with direct GitHub MCP Server access [MCP Server Trigger] → [Set GitHub Username] → [GitHub AI Agent] ↓ [OpenAI Chat Model] ← [Simple Memory] ← [GitHub API Operations] 📋 Requirements Essential Prerequisites: ✅ OpenAI API Key - For AI Agent and Chat Model functionality ✅ GitHub Username Configuration - Edit the "Set GitHub Username" node with your GitHub username for API calls ✅ n8n Version - Compatible with n8n 2024+ releases ✅ MCP Server Setup - Existing GitHub MCP server configuration Recommended Setup: GitHub Personal Access Token with appropriate permissions Basic understanding of n8n workflow configuration Familiarity with GitHub API operations 🚀 Setup Instructions Step 1: Import and Configure Import the workflow template into your n8n instance Navigate to the Set GitHub Username node Replace the placeholder with your actual GitHub username Step 2: API Keys Setup Configure your OpenAI API key in the Chat Model node Ensure your GitHub credentials are properly configured in n8n Test the connection to verify API access Step 3: MCP Server Integration Connect your existing GitHub MCP server to the workflow Verify the MCP Server Trigger is properly configured Test with a simple GitHub operation (e.g., "List my repositories") Step 4: Deploy and Test Activate the workflow in your n8n instance Test with various GitHub operations to ensure functionality Monitor execution logs for any configuration issues 🔧 Customization Options Agent Behavior Modify the Chat Model prompt** to adjust agent personality and response style Configure memory settings** to control conversation context retention Adjust timeout settings** for long-running GitHub operations GitHub Operations Extend supported operations** by adding new GitHub API endpoints Configure repository filters** to limit scope of operations Set up notification preferences** for important GitHub events Integration Points Webhook triggers** for real-time GitHub event processing Scheduled operations** for regular repository maintenance Cross-workflow triggers** for complex automation chains 💡 Pro Tips Start Simple**: Begin with basic operations like repository listing before attempting complex workflows Monitor Token Usage**: The specialized agent approach significantly reduces OpenAI API costs Batch Operations**: Group related GitHub operations in single requests for efficiency Error Handling**: The agent provides detailed error messages for troubleshooting 🤝 Support and Community Documentation**: Official n8n Documentation Community Forum**: n8n Community Issues & Contributions**: Feel free to suggest improvements or report issues 📄 License This workflow template is provided under the MIT License. You're free to use, modify, and redistribute with attribution. Created by: William Lettieri Version: 1.0 Last Updated: May 28, 2025 Compatibility: n8n 2024+
by RedOne
Smart Customer Support AI Agent with Gmail and Telegram Who is this for? This workflow is perfect for: Small to medium businesses** looking to automate customer support E-commerce stores** handling order inquiries and customer questions SaaS companies** providing technical support to users Service providers** managing appointment bookings and general inquiries Startups** wanting to provide 24/7 customer service without hiring full-time staff Agencies** managing client communications across multiple channels What problem is this workflow solving? Customer support is essential but resource-intensive. Common challenges include: Slow response times** leading to frustrated customers Repetitive questions** consuming valuable staff time Inconsistent responses** across different support agents Limited availability** outside business hours Scaling support costs** as business grows Context loss** when customers switch between channels This workflow eliminates these pain points by providing instant, consistent, and intelligent responses 24/7. What this workflow does Core Functionality Multi-Channel Monitoring: Simultaneously watches Gmail and Telegram for customer inquiries Intelligent Processing: Uses AI to understand customer intent and context Knowledge Base Integration: Accesses your company's FAQ and support information Contextual Responses: Provides personalized, helpful replies maintaining conversation history Smart Escalation: Automatically escalates complex issues to human agents Comprehensive Logging: Tracks all interactions for analytics and improvement AI Agent Capabilities Natural Language Understanding**: Comprehends customer questions in plain English Context Awareness**: Remembers previous conversations with each customer Knowledge Retrieval**: Searches your knowledge base for accurate information Response Generation**: Creates professional, brand-appropriate responses Escalation Decision**: Identifies when human intervention is needed Multi-Channel Support**: Handles Gmail and Telegram with channel-specific formatting Automation Features Auto-Response**: Replies to customers within seconds Email Management**: Marks processed emails as read Conversation Threading**: Maintains context in email threads and Telegram chats Error Handling**: Gracefully handles failures with admin notifications Analytics Tracking**: Logs interactions for performance monitoring Setup Prerequisites Active Google Workspace or Gmail account Telegram account for bot creation OpenAI API access Google Sheets access n8n instance (cloud or self-hosted) Step 1: Credential Setup Gmail OAuth2 Configuration Go to Google Cloud Console Create new project or select existing one Enable Gmail API Create OAuth 2.0 credentials Add authorized redirect URIs for n8n In n8n: Settings → Credentials → Add Gmail OAuth2 Enter Client ID and Client Secret Complete OAuth flow Telegram Bot Setup Message @BotFather on Telegram Create new bot with /newbot command Choose bot name and username Copy the bot token In n8n: Settings → Credentials → Add Telegram Enter bot token Set webhook URL in bot settings OpenAI API Configuration Sign up at OpenAI Platform Generate API key in API Keys section In n8n: Settings → Credentials → Add OpenAI Enter API key Choose appropriate model (gpt-4o-mini recommended) Google Sheets Setup Use existing Google account from Gmail setup In n8n: Settings → Credentials → Add Google Sheets OAuth2 Complete authorization flow Step 2: Google Sheets Preparation Create three Google Sheets in your Google Drive: Knowledge Base Sheet Sheet Name**: "Knowledge Base" Columns**: ID, Category, Question/Topic, Answer/Response, Keywords, Last_Updated Import sample data from the Knowledge Base example Customize with your company's FAQs and policies Escalation Tracker Sheet Sheet Name**: "Escalations" Columns**: Timestamp, Customer_Name, Customer_Contact, Inquiry_Summary, Escalation_Reason, Priority, Status, Assigned_To This will be auto-populated by the AI agent Interaction Log Sheet Sheet Name**: "Interaction Log" Columns**: Timestamp, Channel, Customer_Name, Customer_Contact, Inquiry_Subject, Customer_Message, AI_Response, Response_Time, Status This tracks all customer interactions for analytics Step 3: Workflow Configuration Import Template Copy the workflow JSON from the template In n8n: Import workflow from JSON Replace placeholder Sheet IDs with your actual Google Sheet IDs Update Sheet References Open each Google Sheets node Select your created sheets from the dropdown Verify column mappings match your sheet structure Customize AI Prompts Edit the "Customer Support AI Agent" node Update system message with: Your company name and description Brand voice and tone guidelines Specific policies and procedures Escalation criteria Configure Error Notifications (Optional) Set up Slack webhook or email notifications Update error notification node with your webhook URL Customize error message format Step 4: Testing Test Gmail Integration Send test email to your support Gmail account Check workflow execution in n8n Verify response is sent and email marked as read Check interaction logging in Google Sheets Test Telegram Integration Send message to your Telegram bot Verify bot responds appropriately Test conversation memory with follow-up messages Check escalation functionality with complex request Test Knowledge Base Ask questions covered in your knowledge base Verify AI retrieves and uses correct information Test with variations of the same question Ensure responses are consistent and helpful How to customize this workflow to your needs Brand Voice Customization Update the AI system prompt to include: Your company's tone (formal, casual, friendly) Key phrases and terminology you use Brand personality traits Communication style preferences Knowledge Base Expansion Add industry-specific FAQs Include product documentation Add troubleshooting guides Create category-specific responses Escalation Rules Customize when to escalate by modifying the AI agent instructions: Billing disputes over $X amount Technical issues requiring developer help Angry or dissatisfied customers Requests outside standard services Legal or compliance questions Additional Channels Extend the workflow to support: Slack**: Add Slack triggers and response nodes WhatsApp**: Integrate WhatsApp Business API Web Chat**: Add webhook triggers for website chat Discord**: Connect Discord bot integration Analytics Enhancement Add sentiment analysis to customer messages Implement customer satisfaction scoring Create automated reporting dashboards Set up alert thresholds for escalation rates Integration Opportunities CRM Integration**: Connect to HubSpot, Salesforce, or Pipedrive Ticketing System**: Link to Zendesk, Freshdesk, or Jira Service Desk E-commerce Platform**: Integrate with Shopify, WooCommerce, or Magento Calendar Booking**: Connect to Calendly or Acuity for appointment scheduling Advanced Features Multi-language Support**: Add translation capabilities Voice Messages**: Integrate speech-to-text for Telegram voice notes Image Recognition**: Process customer screenshots for technical support Proactive Outreach**: Send follow-up messages based on customer behavior Workflow Maintenance Daily Tasks Review escalation queue Monitor error notifications Check response quality in interaction log Weekly Reviews Analyze customer interaction patterns Update knowledge base with new common questions Review escalation reasons and optimize AI prompts Monthly Optimization Export interaction data for detailed analysis Calculate key metrics (response time, resolution rate, escalation rate) Update AI model parameters based on performance Expand knowledge base with seasonal or trending topics Key Metrics to Track Response Time**: Average time from customer message to AI response Resolution Rate**: Percentage of inquiries resolved without escalation Customer Satisfaction**: Based on follow-up surveys or sentiment analysis Escalation Rate**: Percentage of conversations requiring human intervention Channel Performance**: Effectiveness of Gmail vs Telegram vs other channels Knowledge Base Usage**: Which topics are accessed most frequently Peak Hours**: When customers contact support most often Troubleshooting Common Issues Gmail not triggering**: Check OAuth permissions and API quotas Telegram bot not responding**: Verify bot token and webhook configuration AI responses seem off**: Review and update system prompts Escalations not logging**: Check Google Sheets permissions and column mapping High escalation rate**: Expand knowledge base and refine AI instructions Performance Optimization Monitor OpenAI API usage and costs Adjust AI model temperature for response consistency Optimize knowledge base for faster searches Set appropriate conversation memory limits This workflow provides a solid foundation for automated customer support that can be extensively customized to match your specific business needs and grow with your company.
by InfraNodus
Using the knowledge graphs instead of RAG vector stores This workflow creates a Telegram chatbot agent that has access to several knowledge bases at the same time (used as "experts"). These knowledge bases are provided using the InfraNodus GraphRAG using the knowledge graphs and providing high-quality responses without the need to set up complex RAG vector store workflows. The advantages of using GraphRAG instead of the standard vector stores for knowledge are: Easy and quick to set up and update (no complex data import workflows or vector stores needed) A knowledge graph has a holistic view of your knowledge base and knows what it's about Better retrieval of relations between the document chunks = higher quality responses How it works This template uses the n8n AI agent node as an orchestrating agent that decides which tool (knowledge graph) to use based on the user's prompt. Here's a description step by step: The user submits a question using the Telegram bot, which is then received in the n8n workflow via the Telegram trigger node. The AI agent node checks a list of tools it has access to. Each tool has a description of the knowledge it has auto-generated by InfraNodus. The AI agent decides which tool should be used to generate a response. It may reformulate user's query to be more suitable for the expert. The query is then sent to the InfraNodus HTTP node endpoint, which will query the graph that corresponds to that expert. Each InfraNodus GraphRAG expert provides a rich response that takes the whole context into account and provides a response from each expert (graph) along with a list of relevant statements retrieved using a combination or RAG and GraphRAG. The n8n AI Agent node integrates the responses received from the experts to produce the final answer. The final answer is sent back to the Telegram bot who delivers it back to the private chat or a Telegram group. How to use You need an InfraNodus GraphRAG API account and key to use this workflow. Create an InfraNodus account Get the API key at https://infranodus.com/api-access and create a Bearer authorization key for the InfraNodus HTTP nodes. Create a separate knowledge graph for each expert (using PDF / content import options) in InfraNodus For each graph, go to the workflow, paste the name of the graph into the body name field. Keep other settings intact or learn more about them at the InfraNodus access points page. Once you add one or more graphs as experts to your flow, add the LLM key to the OpenAI node Create a Telegram bot (the instructions are in the workflow Post note) — it takes 30 seconds. Get its API key and create the Telegram credentials to use in the Telegram nodes in this workflow. Requirements An InfraNodus account and API key An OpenAI (or any other LLM) API key A Telegram account Customizing this workflow You can use this same workflow with a standard AI chatbot via a URL that can also be embedded to any website. You can also use it with ElevenLabs AI voice agent. There are many more customizations available. Check out the complete guide at https://support.noduslabs.com/hc/en-us/articles/20174217658396-Using-InfraNodus-Knowledge-Graphs-as-Experts-for-AI-Chatbot-Agents-in-n8n Also check out the video tutorial with a demo: Support If you have any questions, contact us via the support portal at https://support.noduslabs.com or via our Discord channel. More n8n workflows are available on our support portal: n8n x InfraNodus AI automation workflows.
by Davide
This workflow automates the process of removing backgrounds from WooCommerce product images using the BackgroundCut API, and then updates the product images in both WooCommerce and a Google Sheet. Once set up, the workflow processes product images in bulk, removing backgrounds and updating WooCommerce seamlessly. This workflow is perfect for online stores that sell: Clothing and fashion items Jewelry and accessories General consumer products Any product that benefits from clean, background-free images for a professional storefront presentation will see improved visual appeal and potentially higher conversions. Benefits ⏱ Time-saving:** Automates what would otherwise be a manual and repetitive task of editing images and updating product listings. 🔄 Fully Integrated:** Connects Google Sheets, BackgroundCut API, FTP server, and WooCommerce in a seamless loop. 📦 Scalable:** Supports batch processing, making it suitable for stores with hundreds of products. 📁 Organized Tracking:** Updates the Google Sheet with the new image and a “DONE” flag for easy monitoring. 🔧 Customizable:** You can change the image processing API, storage server, or eCommerce platform if needed. How It Works Data Retrieval: The workflow starts by fetching product data (ID and IMAGE URL) from a Google Sheets document. Only rows without a "DONE" marker are processed to avoid duplicates. Background Removal: Each product image URL is sent to the BackgroundCut API, which removes the background and returns the edited image. File Handling: The processed image is uploaded to an FTP server with the original filename preserved. A new URL for the edited image is generated and assigned to the product. WooCommerce Update: The product in WooCommerce is updated with the new image URL. Sheet Update: The Google Sheet is marked as "DONE" for the processed row, and the new image URL is recorded. Batch Processing: The workflow loops through all rows in the sheet until all products are processed. Set Up Steps Prepare the Google Sheet: Clone the provided Google Sheet template. Fill in the ID (product ID) and IMAGE (original image URL) columns. API & Credentials Setup: Get an API key from BackgroundCut.co. Configure the HTTP Request node ("Remove from Image URL") with: Header Auth: Authorization = API_KEY. Set up WooCommerce API credentials in the "Update product" node. FTP Configuration: Replace YOUR_FTP_URL in the "New Image Url" node with your FTP/CDN base URL. Ensure FTP credentials are correctly set in the FTP node. Execution: Run the workflow manually via "When clicking ‘Execute workflow’". The process automatically handles background removal, file upload, and WooCommerce updates. Need help customizing? Contact me for consulting and support or add me on Linkedin.
by Daniel Ng
Advanced n8n Error Handling: Automated Email Alerts & Global Error Workflow Configuration In any automated environment, n8n workflows, while powerful, can sometimes encounter unexpected issues or fail during execution. Without a dedicated error handling strategy, these failures might go unnoticed, leading to incomplete processes, data inconsistencies, or critical operational disruptions. Manually monitoring every workflow execution or sifting through logs for error details is inefficient and can significantly delay crucial fixes. This is where a centralized, automated error management system becomes essential to maintain reliability and quickly address any problems. The "Advanced n8n Error Handling: Automated Email Alerts & Global Error Workflow Configuration" template provides a robust solution to proactively manage and respond to errors within your n8n instance. For more powerful n8n templates, visit our website or contact us at AI Automation Pro. We help your business build custom AI workflow automation and apps. Highlight features Automated Email Notifications:** Sends detailed HTML emails via Gmail for both execution and trigger failures, ensuring you're promptly informed. Centralized Error Management:** Acts as a single, dedicated workflow to catch and process errors from multiple other n8n workflows. Proactive Global Error Handler Configuration:** A scheduled task automatically scans and updates other active n8n workflows to use this workflow as their default error handler, ensuring consistent error management. Comprehensive Error Reporting:** Notification emails are rich with information, including error messages, stack traces, the last executed node, direct links to failed executions, and detailed trigger failure context. Dynamic Email Content:** The subject line and body of the notification email are dynamically adjusted based on whether the failure was an execution error or a trigger failure. Highly Customizable:** Offers flexibility to modify email content (HTML), change the notification channel (e.g., Slack, other email providers), and adjust the logic for updating other workflows' error handlers. Scheduled Operation:** The global configuration part runs on a user-definable schedule (e.g., daily, hourly) for proactive and automated error handling setup across your n8n instance. Who is this for? This workflow is designed for n8n users and administrators who want to: Establish a resilient and centralized error handling mechanism across their n8n instance. Receive immediate and detailed email notifications for any workflow failures. Automate the process of assigning a default error handling workflow to all their active n8n workflows. Save time on manually configuring error handlers for each individual workflow and ensure comprehensive error coverage. What problem is this workflow solving? / use case In an n8n environment with multiple workflows, errors can occur without immediate visibility. This can lead to: Unnoticed failures, potentially causing data loss or incomplete automated processes. Time-consuming diagnosis of issues due to a lack of readily available, detailed error information. Inefficiency and oversight from manually setting an error workflow for every new or existing workflow. This template tackles these issues by providing a proactive error management system. It not only alerts you to failures with comprehensive details but also ensures that your other workflows are automatically configured to use this centralized handler. What this workflow does This workflow operates in two distinct yet complementary parts: 1\. Scheduled Global Error Handler Configuration: Trigger:** Initiates based on a configurable schedule (e.g., daily, hourly). Identify Self:** Retrieves its own workflow ID to use as the designated error handler. Scan Workflows:** Fetches a list of all other workflows within your n8n instance. Conditional Update Logic:** For each active workflow found, it checks if: An error workflow (errorWorkflow setting) is not currently set, OR The currently set errorWorkflow is different from this central error handling workflow. The workflow is active. Apply Default Handler:** If the above conditions are met, it automatically updates the target workflow's settings. This sets the current workflow as its default error handler, ensuring that any future errors in those workflows are routed here. The callerPolicy setting is also removed during this update. 2\. Error Notification via Email: Trigger:** Activates whenever an error occurs in any n8n workflow that has this workflow designated as its errorWorkflow. Gather Error Context:** Collects vital information about the failure, such as: The base URL of your n8n instance. Specific details of the workflow that failed (name, ID). The nature of the error: whether it's an "execution error" (occurring mid-workflow) or a "trigger failure" (occurring at the start). Format Detailed Error Message:** Constructs a comprehensive HTML email tailored to the error type: For Execution Errors: The email includes a direct link to the failed execution's page, the timestamp of the error, the name of the last node that successfully executed, the error message, and the full error stack trace. For Trigger Failures: The email includes the timestamp, operational mode, error message, error name and description, relevant context data, details about the cause (message, name, code, status), and the stack trace. Send Email Notification:** Dispatches the formatted HTML email using Gmail to a predefined recipient. The email subject line dynamically indicates the name of the failing workflow and the type of error, providing a quick overview. Setup Import Workflow: Import the JSON file into your n8n instance. Configure Credentials: n8n API Access: Locate the nodes: "N8n Get Error Handler", "N8n Get All Workflows", and "N8n Update Workflow". For each, select or create new n8n API credentials. These credentials must have permissions to read all workflows (workflows.read) and update workflows (workflows.update). Gmail Access: Locate the "Gmail Send Notification" node. Select or create new Gmail OAuth2 credentials to authorize n8n to send emails on your behalf. Set Email Recipient and Sender Details: Navigate to the "Settings" node, which is connected directly after the "Error Trigger" node. Modify the value for the Email Receiver variable to the email address where error notifications should be sent. Optionally, update the Email Sender Name variable. Configure Schedule (Optional): Select the "Schedule Trigger" node. Adjust the "Trigger Interval" (e.g., Every Day, Every Hour) according to how frequently you want the workflow to scan and update the error handler settings for other workflows in your n8n instance. Activate Workflow: Ensure this workflow is toggled to "Active". Once active, its scheduled component will begin operating, and it will be ready to process and notify on errors from other linked workflows. Manual Configuration (Optional): While this workflow automates the assignment, you can also manually set this workflow as the errorWorkflow in the settings of any critical existing workflows for immediate protection. How to customize this workflow to your needs Email Content & Formatting:** Modify the HTML content within the "HTML For Execution Error" and "HTML For Trigger Error" nodes to alter the appearance, structure, or information included in the notification emails. Alternative Notification Channels:** Replace the "Gmail Send Notification" node with a different email service node (e.g., Microsoft Outlook, SendGrid) or integrate other notification platforms like Slack, Microsoft Teams, or Discord. Remember to adjust the input data mappings for the new node. Refine Global Update Logic:** Adjust the conditions within the "If No Default Error Handler Set" node if you need more granular control over which workflows are automatically updated (e.g., filter by workflow tags, names, or explicitly exclude certain workflows). Enrich Error Data:** Insert additional nodes after the "Error Trigger" but before the "Settings" node if you need to fetch more context about the error or the workflow that failed (e.g., look up related information from a database or API). Advanced Notification Routing:** Implement more complex logic prior to sending notifications. For example, you could use a Switch node to route error alerts to different email addresses or channels based on the name of the failing workflow or the severity of the error. Handling of callerPolicy:** The "Set Data" node is configured to remove the callerPolicy setting from workflows it updates. If your workflows rely on this setting, you may need to modify or remove this part of the "Set Data" node's code. Adjust Scheduled Task:** Change the frequency or timing of the "Schedule Trigger" to better suit your operational needs for the global error handler update.
by Gleb D
This n8n workflow automates the discovery, enrichment, and comparative analysis of startups from the Crunchbase dataset via Bright Data, enhanced with AI, and exports structured results to Google Sheets. 🚀 What It Does Receives a keyword from the user that describes the area of interest — such as an industry, sector, technology, or trend (e.g., "AI in healthcare", "carbon capture", "edtech"). This keyword is used to filter relevant startups from the Crunchbase dataset via Bright Data. Fetches data from Bright Data's Crunchbase snapshot API. Extracts and cleans key fields from the JSON response. Sorts startups by most recent founding date. Selects the top 10 most recent companies. Sends these 10 companies to Google Gemini AI for comparative analysis. Embeds the AI-generated summary into the final export. Appends results to a Google Sheet for tracking and reporting. 🛠️ Step-by-Step Setup Get user keyword input from a form. Use 3 Bright Data requests: Start snapshot. Poll snapshot status until ready. Fetch snapshot data in JSON format. Use a Python Code node to: Parse and sort companies by founded_date. Clean and standardize data fields. Pass the top 10 companies into Gemini AI for comparative insight. Merge the AI output back with company data. Send everything to Google Sheets. 🧠 How It Works Snapshot Control: Polls every few seconds until the Bright Data snapshot is complete. Code Cleanup: Ensures consistent structure and formatting across all records. Comparative AI Analysis: Gemini compares all 10 companies at once and returns a unified analysis. Merging Output: AI analysis is merged into the first company’s record (to avoid duplication), while all 10 are exported. 📤 Google Sheet Output Each row includes: name, founded, about, num_employees, type, ipo_status, full_description, social_media_links, address, website, funding_total, num_investors, lead_investors, founders, products_and_services, monthly_visits, crunchbase_link, ai_analysis. AI comparative analysis summary (only once per batch – attached to the first company). All fields from above customizible through the python code (you can add additional ones from Bright Data output). 🔐 Required Credentials Bright Data* – Replace *YOUR_API_KEY** in 3 HTTP Request nodes. Google Gemini API** – For AI analysis. Google Sheets OAuth2** – For spreadsheet export. ⚠️ Notes AI output is shared once per batch of 10 companies, attached to the first company entry. You can configure the limit of batch size in the first "Code" node.
by Alex Hi no code
Automate Instagram DMs with OpenAI GPT and ManyChat How It Works: Once connected, GPT will automatically initiate conversations with messages from new recipients in Intagram. Who Is This For? This workflow is ideal for marketers, business owners content creators who want to automatically respond to Instagram direct messages using OpenAI GPT. By integrating ManyChat, you can manage conversations, nurture leads, and provide instant replies at scale. What This Workflow Does Captures** incoming Instagram DMs through ManyChat’s integration. Processes** messages with GPT to generate a relevant response. Delivers** instant replies back to Instagram users, creating efficient, AI-driven communication. Setup Import the Template: Copy the n8n workflow into your workspace. OpenAI Credentials: Add your OpenAI API key in n8n so GPT can generate responses. ManyChat Account: Create (or log in to) your ManyChat account. Connect Instagram: Link your Instagram profile as a channel in ManyChat. ManyChat Custom Field: Create a custom field for storing user input or conversation context. Configure Default Reply: In ManyChat, set up the default Instagram reply flow to point to your n8n webhook. Add External Request: Create an external request step in ManyChat to send messages to n8n. Test the Flow: Send yourself a DM on Instagram to confirm the workflow triggers and GPT responds correctly. Instructions and links: Notion instruction Register in ManyChat
by Roninimous
This n8n workflow integrates Shopify order management with Telegram, allowing you to query open orders and order details directly through Telegram chat commands. It provides an interactive way to monitor your Shopify store orders using Telegram as an interface. Key Features Telegram Trigger: Listens for messages and callback queries from your Telegram bot. Switch Node: Routes incoming Telegram messages to different flows based on message content: /orders command to fetch all open orders Callback queries starting with /order_ to fetch details of a specific order Shopify Get Orders: Retrieves all open orders from your Shopify store using your Shopify API credentials. Conditional Check (If Node): Determines if there are any open orders; branches accordingly: If orders exist, prepare an interactive Telegram message with a list of orders.1 If no orders exist, send a “No Order” message. Orders Code Node: Formats the list of open orders into a Telegram message with inline buttons. Each button corresponds to an order and sends a callback data containing the order ID. Get Order Details: When a user selects an order button, the workflow extracts the order ID from the callback data, fetches detailed order information from Shopify, and formats the order items into a readable message. Send Messages to Telegram: Sends formatted messages back to Telegram: The list of open orders with clickable buttons. Detailed information about a selected order. “No Order” notification if there are no open orders. How It Works A Telegram user sends /orders to the bot. The workflow fetches open orders from Shopify and sends a message with buttons listing each order. When a user clicks an order button, the workflow fetches and displays detailed information about that specific order in Telegram. If there are no open orders, the bot replies accordingly. Setup Instructions Create a Telegram Bot: Use @BotFather on Telegram to create a bot and get the bot token. Obtain Shopify API Credentials: Create a private app in your Shopify admin dashboard with permission to read orders. Obtain the API key and access token. Configure n8n Credentials: Add your Telegram bot token as Telegram API credentials in n8n. Add your Shopify API credentials in n8n Shopify credentials. Import the Workflow: Import this workflow into your n8n instance. Update the Telegram and Shopify credential nodes to use your credentials. Set Webhook URLs: Ensure your Telegram bot webhook is set correctly to receive messages. n8n webhook URLs should be publicly accessible. Test the Workflow: Send /orders to your Telegram bot to verify it retrieves and lists open orders. Customization Guidance Modify Commands: Update the Switch node to add more Telegram commands or change existing ones. Change Message Formats: Edit the Code nodes to customize how order lists and details appear. Expand Shopify Integration: Add nodes to handle other Shopify operations like updating orders, managing products, etc. Multi-User Support: Adapt the workflow to handle multiple Telegram chat IDs dynamically. Security and Implementation Notes The native Telegram node in n8n has limitations: it does not support sending dynamic inline keyboard arrays in JSON format, which is essential for displaying a variable number of buttons depending on how many orders are retrieved from Shopify. To overcome this, this workflow uses the HTTP Request node to call Telegram’s API directly, allowing full flexibility to send dynamic inline keyboards as JSON objects. (I will make an update once Telegram Node support dynamic inline keyboards). Security Considerations:** Always store your Telegram bot token securely in n8n credentials and never expose it in the HTTP Request node’s URL or body directly. Use environment variables or n8n credentials to inject tokens safely. Be mindful of Telegram API rate limits and add error handling in your workflow. While using HTTP Request nodes increases flexibility, it also requires careful management of request payloads and authentication, as opposed to the built-in Telegram node which abstracts much of this complexity. Benefits Quickly access Shopify order data without leaving Telegram. Interactive inline buttons improve user experience. Automated, real-time integration between Shopify and Telegram.