by Evoort Solutions
AI-Powered Image Background Removal Workflow with Google Sheets Integration Flow Description: This workflow utilizes AI-powered image background removal integrated with Google Sheets to create a fully automated and streamlined process for handling and managing image files. The flow is triggered when a user uploads an image through a form. The image is sent to the API Background Remover AI, where it undergoes automatic background removal. Upon successful processing, the new image is uploaded to a temporary file storage service using the Temp File Upload. Afterward, the relevant data, including the image link and status, is logged in a Google Sheets document for easy access and tracking. In case the process fails, the system automatically logs a failure status in the same Google Sheet, along with the reason (if applicable). This allows users to have a transparent, organized, and real-time view of both successful and failed background removal attempts. Used APIs: Background Remover AI: An AI-powered service that removes backgrounds from images. This service offers a fast, accurate, and scalable solution for background removal in images. Temp File Upload: This API facilitates the upload of processed images to a temporary file storage service, making it easy to access and manage files before permanent storage. Use Case: This workflow is highly beneficial for businesses and developers who need to process multiple images automatically. It helps automate tedious tasks such as background removal, making it an efficient tool for industries like: E-commerce**: Automatically removing backgrounds from product images for clean, professional-looking listings across online platforms such as Amazon, eBay, or Shopify. Content Creation**: Content creators can quickly remove backgrounds from images for blogs, social media posts, and marketing campaigns, saving significant time in photo editing. Real Estate**: Real estate businesses can use this workflow to enhance property images by removing unwanted backgrounds, making them look more polished and appealing for listings. Advertising & Marketing**: This workflow simplifies image preparation for digital ads, banners, and promotional content by automatically cleaning up images for a more professional look. Benefits: Time-Saving: By automating the background removal process via the **Background Remover AI API, you eliminate the need for manual image editing, saving time and resources. AI-Powered Accuracy**: The AI-powered background removal service ensures precise and high-quality results consistently. Seamless Integration with Google Sheets: All successful and failed image processing attempts are automatically logged into a **Google Sheets document, ensuring you have a transparent, real-time record of each operation. Error Tracking**: In case of failure, detailed error logs are created in Google Sheets, allowing easy tracking and troubleshooting. Efficient Cloud Storage: The **Temp File Upload API stores processed images securely in the cloud, offering a temporary solution before permanent storage. Google Sheets Table Example: The data from the workflow will be automatically added to a Google Sheets document, creating an organized table with information about the processed images. The table will have the following columns: | Image Name | Link | Status | Expire At | |-----------------|----------|------------|---------------------| | image1.jpg | Link | Success | 2025-07-25T12:00:00Z | | image2.jpg | Link | Success | 2025-07-25T12:00:00Z | | image3.jpg | Not found | Failed | 2025-07-24T12:00:00Z | | image4.jpg | Link | Success | 2025-07-25T12:00:00Z | Columns Explained: Image Name**: The name of the image file uploaded by the user. Link**: A direct link to the processed image stored in temporary file storage. Status: Indicates whether the background removal was **Successful or Failed. Expire At**: The expiration date and time when the temporary file link will no longer be accessible. This table provides real-time tracking of each image processing event, offering full visibility of the workflow results. It is ideal for businesses or developers who need to keep a record of their image-processing operations. Additional Features: Automatic Error Logging**: If the background removal fails for any reason, a failure entry is recorded in Google Sheets with a timestamp and an error message. Custom Expiry Time**: The system automatically sets an expiry time for the processed image, allowing temporary access before it expires and is removed from storage. Scalable Process**: The workflow can easily handle multiple form submissions and process images in bulk, making it scalable for various use cases. Create your free n8n account and set up the workflow in just a few minutes using the link below: 👉 Start Automating with n8n Save time, stay consistent, and grow your LinkedIn presence effortlessly!
by galelem
This n8n workflow automates the entire pipeline of generating, formatting, and publishing SEO-rich blog posts to a Blogger site—ideal for auto service businesses. What it does: ⏱ Runs on a schedule via the Schedule Trigger 📰 Fetches trending news from Mediastack (technology category) 🖼 Generates relevant images using the Pexels API 🧠 Creates SEO-optimized content using AI agents (LangChain & OpenRouter) 📝 Formats content into Blogger-compatible HTML, including title, metadata, images, FAQs, and internal linking 🔄 Posts directly to Blogger via authenticated Google Blogger API 📢 Sends Telegram notifications with previews and publishing confirmations 🔐 Uses secure credentials (no hardcoded API keys) Ideal For: Bloggers and marketers looking to automate content creation Auto repair, dealership, or detailing businesses maintaining a content strategy Agencies managing multiple Blogger-based SEO campaigns
by Yaron Been
This workflow automatically tracks inventory stock levels across multiple products and suppliers to prevent stockouts and optimize inventory management. It saves you time by eliminating the need to manually check stock levels and provides automated alerts when inventory reaches critical thresholds. Overview This workflow automatically scrapes supplier websites, e-commerce platforms, and inventory systems to monitor real-time stock levels and availability. It uses Bright Data to access inventory data and AI to intelligently parse stock information, detect low inventory alerts, and track supply chain trends. Tools Used n8n**: The automation platform that orchestrates the workflow Bright Data**: For scraping inventory and supplier websites without being blocked OpenAI**: AI agent for intelligent stock level analysis and trend detection Google Sheets**: For storing inventory data and tracking stock movements How to Install Import the Workflow: Download the .json file and import it into your n8n instance Configure Bright Data: Add your Bright Data credentials to the MCP Client node Set Up OpenAI: Configure your OpenAI API credentials Configure Google Sheets: Connect your Google Sheets account and set up your inventory tracking spreadsheet Customize: Define product URLs and inventory monitoring parameters Use Cases E-commerce**: Monitor product availability across multiple suppliers Retail Management**: Track inventory levels to prevent stockouts Supply Chain**: Monitor supplier stock levels and lead times Procurement**: Identify restocking needs and optimize purchasing decisions Connect with Me Website**: https://www.nofluff.online YouTube**: https://www.youtube.com/@YaronBeen/videos LinkedIn**: https://www.linkedin.com/in/yaronbeen/ Get Bright Data**: https://get.brightdata.com/1tndi4600b25 (Using this link supports my free workflows with a small commission) #n8n #automation #inventorytracking #stockmonitoring #brightdata #webscraping #inventorymanagement #n8nworkflow #workflow #nocode #stocklevels #supplychain #inventoryautomation #stockalerts #ecommerce #procurement #inventorycontrol #stockanalysis #suppliermonitoring #inventoryoptimization #stocktracking #warehousemanagement #retailautomation #inventorydata #stockmanagement #supplymanagement #inventorymonitoring #productavailability #stockforecasting #inventoryinsights
by Łukasz
Who is it for? This is automation for support project manager, which helps not only to keep developres informed but also automatically keep clients in the loop - especially useful if you are managing SLA-like agreement. It is actually simple incident management board using free Kanban board, that is extended in functionality via N8N. How It Works? Script has two entry points. The first one is incident form. When incident details are provided, automation gets incident definitions from database and pushes both information to AI. AI comparse definitions with client request, refines incident priority and pushed it in NocoDB database. Second is schedule trigger, which is responsible for regular notificaitons on task status. If task is not picked up or delivered in proper time, then emails or slack messages are being sent both to client and responsible developer. How to set up? Clone automation Create (samples below) two NocoDB tables: one with definitions and second that servers as Kanban board (mind column naming!) Set up email and slack connection You should be ready to go Different incident naming If your incident level naming is different, you need to update few nodes and few columns in NocoDB. This is because incident naming must be unified through: automation flow, incident definitions and column NocoDB select fields. So be sure that following is the same: NocoDB: Incident definitions, column "Title" NocoDB: Tasks table, single select fields: "expected category" "assigned category" N8N: Incident Form "Incident Desired Category" NocoDB Tables Incident definitions table |Title |Definition |Response time|Resolution time|Default assignee| |single line text|text|number|number|email| Tasks table |email|message|expected category|internal notes|assigned category|status|expected response|expected resolution|assignee|assignee slack| |email|text|single select|text|single select|single select|date and time|date and time|email|slack username| Use kanban board Simply set up Kanban view and stack by "status" field. What's More? That's actually it. I hope that this automation will help your support line be much more streamlined! There is actually more that you could do with this automation, but it really depends on your needs. For example, you could add Email trigger to handle incoming support requests (but remember to adjust nodes accordingly). Another thing is that you could make different notification schema, depending on your needs (for example I do imagine that you may want a day or two delay before you notify client that task is after due). Thank you, perfect! Glad I could help. Visit my profile for other automations for businesses. And if you are looking for dedicated software development, do not hesitate to reach out!
by Rosh Ragel
Automatically Send Weekly Sales Reports from Square via Outlook What It Does This workflow automatically connects to the Square API and generates a weekly sales summary report for all your Square locations. The report matches the figures displayed in Square Dashboard > Reports > Sales Summary. It's designed to run weekly and pull the previous week’s sales into a CSV file, which is then sent to a manager/finance team for analysis. This workflow builds on my previous template, which allows users to automatically pull data from the Square API into n8n for processing. (See here: https://n8n.io/workflows/6358) Prerequisites To use this workflow, you'll need: A Square API credential (configured as a Header Auth credential) A Microsoft Outlook credential How to Set Up Square Credentials: Go to Credentials > Create New Choose Header Auth Set the Name to Authorization Set the Value to your Square Access Token (e.g., Bearer <your-api-key>) How It Works Trigger: The workflow runs every Monday at 4:00 AM Fetch Locations: An HTTP request retrieves all Square locations linked to your account Fetch Orders: For each location, an HTTP request pulls completed orders for the previous week (e.g., Monday to Sunday) Filter Empty Locations: Locations with no sales are ignored Aggregate Sales Data: A Code node processes the order data and produces a summary identical to Square’s built-in Sales Summary report Create CSV File: A CSV file is created containing the relevant data Send Email: An email is sent via Microsoft Outlook to the chosen third party Example Use Cases Automatically send weekly Square sales data to management to improve the quality of planning and scheduling decisions Automatically send data to an external third party, such as a landlord or agent, who is paid via commission Automatically send data to a bookkeeper for entry into QuickBooks How to Use Configure both HTTP Request nodes to use your Square API credential Set the workflow to Active so it runs automatically Enter the email address of the person you want to send the report to and update the message body If you want to remove the n8n attribution, you can do so in the last node Customization Options Add pagination to handle locations with more than 1,000 orders per week Why It's Useful This workflow saves time, reduces manual report pulling from Square, and enables smarter automation around sales data — whether for operations, finance, or performance monitoring.
by Patrick Campbell
Who's this for Small business owners, finance teams, accountants, and bookkeepers who use Xero for invoicing and want to improve cash flow by automating payment reminders. If you're spending time manually following up on unpaid invoices or struggling with late payments, this workflow eliminates the manual effort and ensures consistent, timely communication with customers while maintaining a complete audit trail. What it does This workflow automatically monitors all invoices in your Xero account and sends friendly payment reminders to customers when invoices are approaching their due date. It runs daily at noon, checks every invoice, calculates how many days until payment is due, sends personalized email reminders for invoices due within 7 days, and logs each reminder activity back into Xero's invoice history. The automation ensures no invoice slips through the cracks, reduces the administrative burden of accounts receivable management, and maintains professional customer relationships through polite, timely reminders—all while keeping your Xero records up to date with reminder tracking. How it works The workflow executes automatically every day at 12 PM and follows this process: Triggers the daily check using the Schedule Trigger node Fetches all invoices from your Xero account using the Xero API integration Filters out invoices that are already marked as "PAID" to avoid sending unnecessary reminders Calculates the number of days remaining until each unpaid invoice is due using a JavaScript code node Identifies invoices that are due within the next 7 days (customizable threshold) Sends personalized email reminders to customers via Microsoft Outlook, including invoice number, due date, and amount Logs the reminder activity back into Xero's invoice history with the date sent and days until due Creates a complete audit trail in Xero showing when reminders were sent for each invoice The workflow only sends reminders for invoices meeting the criteria, so customers aren't bombarded with unnecessary emails. The Xero history logging ensures your team can see at a glance which customers have been reminded and when, preventing duplicate reminders and providing accountability. Requirements Xero account with API access enabled (available to all Xero users at no additional cost) Microsoft Outlook or Office 365 account for sending email reminders Valid email addresses configured for all customers in your Xero contact records n8n instance (self-hosted or cloud) with credentials configured for: Xero OAuth2 connection (used twice: once for fetching invoices, once for logging history) Microsoft Outlook OAuth2 connection Setup instructions 1. Enable Xero API access Ensure your Xero account has API access enabled. This is available by default for all Xero accounts. You'll need administrator access to create the API connection. 2. Configure n8n credentials In your n8n instance, set up OAuth2 credentials for: Xero:** Follow n8n's Xero credential documentation to authorize access to your Xero organization. Make sure the credentials have permission to both read invoices and write to invoice history. Microsoft Outlook:** Set up OAuth2 connection to allow n8n to send emails on your behalf 3. Assign credentials to nodes Open the workflow and assign your configured credentials to these nodes: "Fetch All Xero Invoices" → Select your Xero credential "Send Email Reminder to Customer" → Select your Microsoft Outlook credential "Log Reminder in Xero History" → Select your Xero credential (same as above) 4. Customize the email template Edit the "Send Email Reminder to Customer" node to personalize the message: Update the sender name and signature Add your company branding or logo Include payment instructions or online payment links Adjust the tone to match your customer communication style Add any legal disclaimers or terms if required Customize the subject line if needed 5. Adjust the reminder threshold (optional) By default, reminders are sent for invoices due within 7 days. To change this: Open the "Calculate Days Until Due" code node Find the line: isDueSoon: diffDays <= 7 && diffDays >= 0 Change 7 to your preferred number of days (e.g., 14 for two weeks notice) 6. Test the workflow Before enabling the daily schedule: Use the manual trigger to test with your actual Xero data Verify that invoices are fetched correctly Check that the date calculations are accurate Send a test email to yourself to review the message format Confirm the reminder is logged in Xero's invoice history Verify only qualifying invoices trigger reminders 7. Activate the workflow Once testing is complete, activate the workflow. It will run automatically every day at noon (or your customized schedule time).
by Rahi
Workflow 1: Domain and Email Health 🩺 This part of the workflow is triggered every 5 hours by the Schedule Trigger1 node. Its purpose is to pull health metrics for both email domains and individual email addresses. How it Works: ++Schedule Trigger:++ The Schedule Trigger1 node initiates the workflow every 5 hours. ++API Requests:++ Two separate HTTP Request nodes, HTTP Request5 and HTTP Request6, make API calls to Smartlead. ++HTTP Request5 calls++ the endpoint for domain-wise health metrics. ++HTTP Request6 calls++ the endpoint for email-wise health metrics. Both requests use the same api_key and a date range from 2025-07-04 to the current day. ++Data Splitting:++ The Split Out5 and Split Out6 nodes take the JSON response from the API calls and split the data into individual items. This is necessary so each row of data can be processed and added to Google Sheets separately. ++Google Sheets Integration:++ Finally, the Append or update row in sheet5 and Append or update row in sheet6 nodes update two different Google Sheets: ++Append or update row in sheet5 adds++ or updates rows in the DomainHealth sheet, matching on the domain column. ++Append or update row in sheet6 adds++ or updates rows in the EmailHealth sheet, matching on the from_email column. Workflow 2: Global and Campaign-Specific Analytics 📊 This second part of the workflow is triggered every 2 hours by the Schedule Trigger node. Its goal is to get a day-by-day overview of email engagement and campaign-specific performance. How it Works: Schedule Trigger: The Schedule Trigger node starts this workflow every 2 hours. ++API Requests:++ Two HTTP Request nodes, HTTP Request and HTTP Request1, call different Smartlead API endpoints. ++HTTP Request++ retrieves day-wise overall stats for email engagement. ++HTTP Request1 ++retrieves overall stats for each campaign. ++Data Splitting:++ The Split Out and Split Out1 nodes separate the JSON responses into individual data items for processing. ++Google Sheets Integration:++ The Append or update row in sheet and Append or update row in sheet1 nodes then write the data to Google Sheets. ++Append or update row in sheet++ updates the Sheet1 sheet with day-wise metrics, using the date as a matching column. ++Append or update row in sheet1++ updates the CampaignWise sheet with campaign performance metrics, using the campaign id to match rows.
by Yaron Been
This workflow contains community nodes that are only compatible with the self-hosted version of n8n. This workflow automatically monitors keyword rankings across search engines to track SEO performance and identify optimization opportunities. It saves you time by eliminating the need to manually check keyword positions and provides comprehensive ranking data for strategic SEO decision making. Overview This workflow automatically scrapes search engine results pages (SERPs) to track keyword rankings, competitor positions, and search features. It uses Bright Data to access search results without restrictions and AI to intelligently parse ranking data, track changes, and identify SEO opportunities. Tools Used n8n**: The automation platform that orchestrates the workflow Bright Data**: For scraping search engine results without being blocked OpenAI**: AI agent for intelligent ranking analysis and SEO insights Google Sheets**: For storing keyword ranking data and tracking changes How to Install Import the Workflow: Download the .json file and import it into your n8n instance Configure Bright Data: Add your Bright Data credentials to the MCP Client node Set Up OpenAI: Configure your OpenAI API credentials Configure Google Sheets: Connect your Google Sheets account and set up your ranking tracking spreadsheet Customize: Define target keywords and ranking monitoring parameters Use Cases SEO Teams**: Track keyword performance and identify ranking improvements Content Marketing**: Monitor content ranking success and optimization needs Competitive Analysis**: Track competitor keyword rankings and strategies Digital Marketing**: Measure organic search performance and ROI Connect with Me Website**: https://www.nofluff.online YouTube**: https://www.youtube.com/@YaronBeen/videos LinkedIn**: https://www.linkedin.com/in/yaronbeen/ Get Bright Data**: https://get.brightdata.com/1tndi4600b25 (Using this link supports my free workflows with a small commission) #n8n #automation #keywordrankings #seo #searchrankings #brightdata #webscraping #seotools #n8nworkflow #workflow #nocode #ranktracking #keywordmonitoring #seoautomation #searchmarketing #organicseo #seoresearch #rankinganalysis #keywordanalysis #searchengines #seomonitoring #digitalmarketing #serp #keywordtracking #seoanalytics #searchoptimization #rankingreports #keywordresearch #seoinsights #searchperformance
by DIGITAL BIZ TECH
Knowledge RAG & AI Chat Agent: Google Drive to Qdrant Description This workflow transforms a Google Drive folder into an intelligent, searchable knowledge base and provides a chat agent to query it. It’s composed of two distinct flows: An ingestion pipeline to process documents. A live chat agent that uses RAG (Retrieval-Augmented Generation) and optional web search to answer user questions. This system fully automates the creation of a “Chat with your docs” solution and enhances it with external web-searching capabilities. Quick Implementation Steps Import the workflow JSON into your n8n instance. Set up credentials for Google Drive, Mistral AI, OpenAI, and Qdrant. Open the Web Search node and add your Tavily AI API key to the Authorization header. In the Google Drive (List Files) node, set the Folder ID you want to ingest. Run the workflow manually once to populate your Qdrant database (Flow 1). Activate the workflow to enable the chat trigger (Flow 2). Copy the public webhook URL from the When chat message received node and open it in a new tab to start chatting. What It Does The workflow is divided into two primary functions: 1. Knowledge Base Ingestion (Manual Trigger) This flow populates your vector database. Scans Google Drive:** Lists all files from a specified folder. Processes Files Individually:** Downloads each file. Extracts Text via OCR:* Uses *Mistral AI OCR API** for text extraction from PDFs, images, etc. Generates Smart Metadata:** A Mistral LLM assigns metadata like document_type, project, and assigned_to. Chunks & Embeds:* Text is cleaned, chunked, and embedded via *OpenAI’s text-embedding-3-small** model. Stores in Qdrant:** Text chunks, embeddings, and metadata are stored in a Qdrant collection (docaiauto). 2. AI Chat Agent (Chat Trigger) This flow powers the conversational interface. Handles User Queries:** Triggered when a user sends a chat message. Internal RAG Retrieval:* Searches *Qdrant Vector Store** first for answers. Web Search Fallback:* If unavailable internally, the agent offers to perform a *Tavily AI web search**. Contextual Responses:** Combines internal and external info for comprehensive answers. Who's It For Ideal for: Teams building internal AI knowledge bases from Google Drive. Developers creating AI-powered support, research, or onboarding bots. Organizations implementing RAG pipelines. Anyone making unstructured Google Drive documents searchable via chat. Requirements n8n instance** (self-hosted or cloud). Google Drive Credentials** (to list and download files). Mistral AI API Key** (for OCR & metadata extraction). OpenAI API Key** (for embeddings and chat LLM). Qdrant instance** (cloud or self-hosted). Tavily AI API Key** (for web search). How It Works The workflow runs two independent flows in parallel: Flow 1: Ingestion Pipeline (Manual Trigger) List Files: Fetch files from Google Drive using the Folder ID. Loop & Download: Each file is processed one by one. OCR Processing: Upload file to Mistral Retrieve signed URL Extract text using Mistral DOC OCR Metadata Extraction: Analyze text using a Mistral LLM. Text Cleaning & Chunking: Split into 1000-character chunks. Embeddings Creation: Use OpenAI embeddings. Vector Insertion: Push chunks + metadata into Qdrant. Flow 2: AI Chat Agent (Chat Trigger) Chat Trigger: Starts when a chat message is received. AI Agent: Uses OpenAI + Simple Memory to process context. RAG Retrieval: Queries Qdrant for related data. Decision Logic: Found → Form answer. Not found → Ask if user wants web search. Web Search: Performs Tavily web lookup. Final Response: Synthesizes internal + external info. How To Set Up 1. Import the Workflow Upload the provided JSON into your n8n instance. 2. Configure Credentials Create and assign: Google Drive** → Google Drive nodes Mistral AI** → Upload, Signed URL, DOC OCR, Cloud Chat Model OpenAI** → Embeddings + Chat Model nodes Qdrant** → Vector Store nodes 3. Add Tavily API Key Open Web Search node → Parameters → Headers Add your key under Authorization (e.g., tvly-xxxx). 4. Node Configuration Google Drive (List Files):** Set Folder ID. Qdrant Nodes:** Ensure same collection name (docaiauto). 5. Run Ingestion (Flow 1) Click Test workflow to populate Qdrant with your Drive documents. 6. Activate Chat (Flow 2) Toggle the workflow ON to enable real-time chat. 7. Test Open the webhook URL and start chatting! How To Customize Change LLMs:** Swap models in OpenAI or Mistral nodes (e.g., GPT-4o, Claude 3). Modify Prompts:** Edit the system message in ai chat agent to alter tone or logic. Chunking Strategy:** Adjust chunkSize and chunkOverlap in the Code node. Different Sources:** Replace Google Drive with AWS S3, Local Folder, etc. Automate Updates:* Add a *Cron** node for scheduled ingestion. Validation:** Add post-processing steps after metadata extraction. Expand Tools:** Add more functional nodes like Google Calendar or Calculator. Use Case Examples Internal HR Bot:** Answer HR-related queries from stored policy docs. Tech Support Assistant:** Retrieve troubleshooting steps for products. Research Assistant:** Summarize and compare market reports. Project Management Bot:** Query document ownership or project status. Troubleshooting Guide | Issue | Possible Solution | |------------|------------------------| | Chat agent doesn’t respond | Check OpenAI API key and model availability (e.g., gpt-4.1-mini). | | Known documents not found | Ensure ingestion flow ran and both Qdrant nodes use same collection name. | | OCR node fails | Verify Mistral API key and input file integrity. | | Web search not triggered | Re-check Tavily API key in Web Search node headers. | | Incorrect metadata | Tune Information Extractor prompt or use a stronger Mistral model. | Need Help or More Workflows? Want to customize this workflow for your business or integrate it with your existing tools? Our team at Digital Biz Tech can tailor it precisely to your use case from automation logic to AI-powered enhancements. 💡 We can help you set it up for free — from connecting credentials to deploying it live. Contact: shilpa.raju@digitalbiz.tech Website: https://www.digitalbiz.tech LinkedIn: https://www.linkedin.com/company/digital-biz-tech/ You can also DM us on LinkedIn for any help.
by NanaB
This n8n workflow provides a comprehensive solution for user authentication and management, leveraging Airtable as the backend database. It includes flows for user sign-up and login, aswell as the sample crud operations retrieving user details, and updating user information. Youtube Video of me explaining the flow: https://www.youtube.com/watch?v=gKcGfyq3dPM How it Works User Sign-Up Flow Receives POST request: A webhook listens for POST requests containing new user details (email, first name, last name, password). Checks for existing email: The workflow queries Airtable to see if the submitted email already exists. Handles email in use: If the email is found, it responds with {"response": "email in use"}. Creates new user: If the email is unique, the password is SHA256 hashed (Base64 encoded), and the user's information (including the hashed password) is stored in Airtable. A successful response of {"response": "success"} is then sent. User Login Flow Receives POST request: A webhook listens for POST requests with user email and password for login. Verifies user existence: It checks Airtable for a user with the provided email. If no user is found, it responds with a failure message ("wrong email"). Compares passwords: If a user is found, the submitted password is hashed (SHA256, Base64 encoded) and compared with the stored hashed password in Airtable. Responds with JWT or error: If passwords match, a JWT token containing the user's ID and email is issued. If they don't match, a "wrong password" response is sent. Flows for a Logged-In User These flows require a JWT-authenticated request. Get User Details:** Webhook (GET): Receives a JWT-authenticated request. Airtable (Read): Fetches the current user’s record using the jwtPayload.id. Set Node ("Specify Current Details"): Maps fields like "First Name," "Last Name," "Email," and "Date" from Airtable to a standard output format. Update User Details:** Webhook (POST): Receives updated user data (email, name, password). Airtable (Upsert): Updates the record matching jwtPayload.id using the submitted fields. Set Node ("Specify New Details"): Outputs the updated data in a standard format. Set Up Steps (Approx. 5 Minutes) Step 1: Set up your Airtable Base and Table You'll need an Airtable Base and a table to store your user data. Ensure your table has at least the following columns: Email** (Single Line Text) First Name** (Single Line Text) Last Name** (Single Line Text) Password** (Single Line Text - this will store the hashed password) Date** (Date - optional, for user sign-up date) Step 2: Obtain an Airtable Personal Access Token Go to the Airtable website and log in to your account. Navigate to your personal access token page (usually found under your developer settings or by searching for "personal access tokens"). Click "Create new token." Give your token a name (e.g., "n8n User Management"). Grant necessary permissions: Scope: data.records:read, data.records:write for the specific base you will be using. Base: Select the Airtable base where your user management table resides. Generate the token and copy it immediately. You won't be able to see it again. Store it securely. Step 3: Create a JWT Auth Credential in n8n In your n8n instance, go to "Credentials" (usually found in the left-hand sidebar). Click "New Credential" and search for "JWT Auth". Give the credential a name (e.g., "UserAuthJWT"). For the "Signing Secret," enter a strong, random string of characters. This secret will be used to sign and verify your JWT tokens. Keep this secret highly confidential. Save the credential. Customization Options This workflow is designed to be highly adaptable: Database Integration**: Easily switch from Airtable to other databases like PostgreSQL, MySQL, MongoDB, or even Google Sheets by replacing the Airtable nodes with the appropriate database nodes in n8n. Authentication Methods**: Extend the authentication to include multi-factor authentication (MFA), social logins (Google, Facebook), or integrate with existing identity providers (IdP) by adding additional nodes. User Profile Fields**: Add or remove user profile fields (e.g., phone number, address, user roles) by adjusting the Airtable table columns and the Set nodes in the workflow. Notification System**: Integrate notification systems (e.g., email, SMS) for events like new user sign-ups, password resets, or account changes. Admin Panel**: Build an admin panel using n8n to manage users directly, including functionalities for adding, deleting, or updating user records, and resetting passwords. This workflow provides a solid foundation for building robust user management systems, adaptable to a wide range of applications and security requirements. Need Assistance or Customization? Do you have specific integrations in mind, or are you looking to add more user management features to this workflow? If you need help setting this up, or want to adapt it for a unique use case, don't hesitate to reach out! You can contact me directly at nanabrownsnr@gmail.com. I'd be glad to assist you.
by Hugues Stock
What does this template do? This workflow sets a small "lock" value in Redis so that only one copy of a long job can run at the same time. If another trigger fires while the job is still busy, the workflow sees the lock, stops early, and throws a clear error. This protects your data and keeps you from hitting rate limits. Because the workflow also stores simple progress flags ("working", "loading", "finishing"), you can poll the current status and show live progress for very long jobs. Use Case Great when the same workflow can be called many times in parallel (for example by webhooks, cron jobs, or nested Execute Workflow calls) and you need an "only run once at a time" guarantee without building a full queue system. What the Workflow Does ⚡ Starts through Execute Workflow Trigger called by another workflow 🔄 A Switch sends the run to Get, Set, or Unset actions 💾 Redis reads or writes a key named process_status_<key> with a time‑to‑live (default 600 s) 🚦 If nodes check the key and decide to continue or stop ⏱️ Wait nodes stand in for the slow part of your job (replace these with your real work) 📈 Updates the key with human‑readable progress values that another workflow can fetch with action = get 🏁 When done, the lock is removed so the next run can start Apps & Services Used Redis Core n8n nodes (Switch, If, Set, Wait, Stop and Error) Pre‑requisites A Redis server that n8n can reach Redis credentials stored in n8n A second workflow that calls this one and sends: action set to get, set, or unset key set to a unique name for the job Optional timeout in seconds Customization Tips Increase or decrease the TTL in the Set Timeout node to match how long your job usually runs Add or rename status values ("working", "loading", "finishing", and so on) to show finer progress Replace Stop and Error with a Slack or email alert, or even push the extra trigger into a queue if you prefer waiting instead of failing Use different Redis keys if you need separate locks for different tasks Build a small "status endpoint" workflow that calls this one with action = get to display real‑time progress to users Additional Use Cases 🛑 Telegram callback spam filter If a Telegram bot sends many identical callbacks in a burst, call this workflow first to place a lock. Only the first callback will proceed; the rest will exit cleanly until the lock clears. This keeps your bot from flooding downstream APIs. 🧩 External API rate‑limit protection Run heavy API syncs one after the other so parallel calls do not break vendor rate limits. 🔔 Maintenance window lock Block scheduled maintenance tasks from overlapping, making sure each window finishes before the next starts.
by Evoort Solutions
🖼️ Image-to-Image AI Generator from Google Sheets with Google Drive Upload ✅ Use Case Automatically generate AI images from prompts listed in a Google Sheet, upload the images to Google Drive, and log the result back into the sheet. Uses the image-to-image-gpt API for fast, customizable generation. 💡 Problem It Solves Manual image generation workflows are inefficient and error-prone. Creative and content teams often have to: Manually paste prompts into image generation tools Save images locally Upload to Google Drive Paste the link back into tracking spreadsheets This automation removes all that friction—turning one spreadsheet into a complete image creation pipeline. 🌟 Benefits 🔁 Fully automated image generation 📤 Direct uploads to Google Drive 🧾 Image links and timestamps logged in Google Sheets ⚠️ Built-in error logging for API failures 🧩 Modular and easily extensible 📊 Keeps a historical log of successes and errors 🧩 Workflow Overview | Node | Description | |------|-------------| | 1. Manual Trigger | Starts the workflow when executed manually | | 2. Google Sheets2 | Reads all rows from the input Google Sheet | | 3. Loop Over Items | Processes one row (prompt) at a time | | 4. If2 | Filters only rows where Prompt is not empty and drive path is empty | | 5. HTTP Request1 | Calls the image-to-image-gpt API with the prompt | | 6. If1 (Error Handling) | If an error exists in the API response, route to logging | | 7. Google Sheets4 (Error Log) | Appends error details to a log sheet for review | | 8. Code1 | Decodes the base64 image returned by the API | | 9. Google Drive1 | Uploads the image to a selected Google Drive folder | | 10. Google Sheets1 (Write Back) | Updates the original row with the image drive path and timestamp | | 11. Wait | Delays the next prompt to prevent hitting API rate limits | 🛠 Tech Stack n8n** (no-code automation) Google Sheets** (data input/output) Google Drive** (image storage) image-to-image-gpt API via RapidAPI JavaScript (in Code node)** for base64 processing 📝 Sheet Format Your Google Sheet should include the following columns: | Column | Purpose | |----------------|----------------------------------| | Prompt | The AI prompt to send to the API | | Image url | (Optional) Initial image URL | | drive path | Updated with Drive link by flow | | Generated Date | Auto-filled by the workflow | | Base64 | Stores raw or error data | 🚀 How to Use Import this workflow into your n8n instance Set up Google Sheets and Google Drive service credentials Add your RapidAPI key in the HTTP Request node headers Use the image-to-image-gpt endpoint in the HTTP request Configure the Google Sheet and Drive folder in the respective nodes Execute manually or add a Cron node for scheduling 📌 Example Applications 🛍 eCommerce: Auto-generate product mockups 🧵 Fashion/Design: Visualize styles or fabrics from prompts ✍️ Blogging/Content: Auto-generate header images from titles 📣 Marketing: Generate ad banners from text 🧪 Tips You can add a Cron node if you want this to run on a schedule Use a separate tab/sheet for logging failed prompts Extend the flow by adding: Email notifications Slack alerts File name templating Create your free n8n account and set up the workflow in just a few minutes using the link below: 👉 Start Automating with n8n Save time, stay consistent, and grow your LinkedIn presence effortlessly!