by Ronnie Craig
AI Personal Assistant Telegram Bot Template Description Transform your Telegram into a powerful AI-powered personal assistant that manages your calendar, sends daily schedules, searches the web, and accesses your contacts - all through simple text messages. What This Template Does This workflow creates an intelligent Telegram bot that serves as your personal assistant, capable of: Daily Schedule Management**: Automatically checks your Google Calendar and emails you a formatted daily schedule summary Intelligent Conversations**: Uses OpenAI GPT-4o-mini with conversation memory for natural interactions Web Research**: Searches Wikipedia and the web using SerpAPI for any questions you have Contact Management**: Accesses your Google Sheets contact database to find email addresses and information Email Automation**: Sends emails on your behalf using Gmail integration Calendar Integration**: Reads and manages your Google Calendar events Target Users Busy Professionals** who need quick access to their schedule and want to automate daily planning Small Business Owners** who want an AI assistant for managing contacts and communications Personal Productivity Enthusiasts** who want to streamline their daily workflow Anyone** who prefers text-based interaction over switching between multiple apps Key Features ✅ Multi-Tool AI Agent: Combines Wikipedia, web search, calendar, email, and contacts in one interface ✅ Conversation Memory: Remembers context across multiple interactions ✅ Automatic Daily Scheduling: Proactive daily schedule emails ✅ Contact Intelligence: Automatically finds contact information before sending emails ✅ Telegram Integration: Works through the familiar Telegram interface Use Cases "What's on my schedule today?" → Receives formatted email with daily agenda "Send an email to John about the meeting" → Finds John's email and sends message "What's the weather in Paris?" → Gets current weather information via web search "Tell me about quantum computing" → Provides Wikipedia information "Schedule a meeting with Sarah tomorrow at 2 PM" → Creates calendar event Prerequisites Before setting up this template, you'll need accounts and API access for: Telegram Bot** (free via @BotFather) OpenAI API** (paid service) Google Calendar API** (free) Gmail API** (free) Google Sheets API** (free) SerpAPI** (freemium web search) Setup Instructions 1. Create Telegram Bot Message @BotFather on Telegram Use /newbot command and follow instructions Save your bot token for later 2. Set Up Google APIs Go to Google Cloud Console Create a new project or select existing Enable Google Calendar, Gmail, and Sheets APIs Create OAuth2 credentials Download credentials JSON file 3. Get API Keys OpenAI: Visit platform.openai.com, create API key SerpAPI: Sign up at serpapi.com, get API key 4. Configure Credentials in n8n Add Telegram Bot credentials using your bot token Set up Google OAuth2 for Calendar, Gmail, and Sheets Add OpenAI API credentials Add SerpAPI credentials 5. Customize the Workflow Update Calendar ID: Replace a________@gmail.com with your calendar Set Google Sheets ID: Replace the sheet ID with your contacts spreadsheet Modify System Message: Update the AI agent's instructions to match your preferences Adjust Memory Settings: Configure conversation memory window as needed 6. Test the Setup Activate the workflow Message your Telegram bot Verify all integrations are working Customization Options Change AI Model**: Switch between OpenAI models (GPT-3.5, GPT-4, etc.) Adjust Memory**: Modify conversation memory window length Add More Tools**: Integrate additional services like Notion, Slack, or weather APIs Modify Schedule**: Change when daily schedule emails are sent Customize Responses**: Update the system message to change assistant personality Important Notes Privacy**: This bot has access to your calendar, contacts, and email - ensure proper security API Costs**: OpenAI and SerpAPI usage will incur costs based on usage Rate Limits**: Be aware of API rate limits for each service Security**: Use environment variables for sensitive credentials Troubleshooting Bot not responding**: Check Telegram credentials and webhook configuration Calendar access issues**: Verify Google Calendar API permissions Email not sending**: Confirm Gmail API scopes include send permissions Memory not working**: Check that session keys are properly configured Support For issues with this template, check: n8n Community Forum Individual API service documentation Google Cloud Console for API errors OpenAI usage dashboard for model issues
by Martijn Kerver
Description Transform training prescriptions into perfectly formatted Intervals.icu workouts using AI. This workflow automatically converts free-text workout descriptions into structured interval training sessions with proper heart rate zones, pace calculations, and exercise formatting. What this workflow does Collects workout details via a web form (date, title, and workout description) Fetches athlete data from Intervals.icu (FTP, max HR, threshold pace, LTHR) Processes with AI using Claude Opus 4.1 to intelligently parse and format the workout Auto-detects workout type (Run, Ride, Strength, HYROX, CrossFit, etc.) Converts training zones - RPE → HR%, pace calculations, power zones Formats workout structure with proper transitions, rest periods, circuit formatting Creates the workout in Intervals.icu via API Use cases Coaches**: Convert training plans from documents/spreadsheets into Intervals.icu format Athletes**: Quickly add structured workouts from coaching apps or training programs Hybrid training**: Handle complex HYROX, CrossFit, or multi-sport sessions with circuit formatting Time savings**: Eliminate manual workout entry and zone calculations Supported workout types Running, cycling, swimming, strength training, HYROX, CrossFit, indoor rowing, virtual training (Zwift), triathlon, and more. Key features ✅ Intelligent workout type detection ✅ Automatic RPE to HR zone conversion using athlete-specific data ✅ Proper formatting for intervals, circuits, supersets, and progressions ✅ Adds transitions between exercises/machines ✅ Calculates exercise durations and pacing ✅ Handles warmup/cooldown sections ✅ Generates unique workout IDs Setup requirements Intervals.icu account** with API access (API key required) Anthropic API key** for Claude AI Athlete must have training zones configured in Intervals.icu (FTP, max HR, LTHR, threshold pace) Setup instructions Getting your Intervals.icu API key Log in to Intervals.icu Go to Settings (gear icon) → Developer Settings Click Generate API Key (or copy your existing key) Save the API key securely Configuring credentials in n8n For Intervals.icu (HTTP Basic Auth): In n8n, open the GetAthleteInfo or CreateWorkoutAPI node Click on Credentials → Create New Credential Select HTTP Basic Auth Enter: Username: API_KEY (literally type "API_KEY") Password: Your actual API key from Intervals.icu Click Save Apply this credential to both HTTP Request nodes For Anthropic: Open the Anthropic Chat Model node Click on Credentials → Create New Credential Enter your Anthropic API key Click Save Important: The Intervals.icu API uses HTTP Basic Authentication where the username is always the literal string "API_KEY" and the password is your actual API key. How it works The workflow uses a sophisticated AI agent with a detailed system prompt that understands training terminology, zones, and Intervals.icu formatting requirements. It applies sport-specific rules to ensure workouts are properly structured for tracking during training sessions.
by Oneclick AI Squad
This automated n8n workflow monitors real-time cryptocurrency prices using CoinGecko API and sends smart alerts when price conditions are met. It supports multi-coin tracking, dynamic conditions, and instant notifications via Email, Telegram, and Discord. Good to Know Reads crypto watchlist data from Google Sheets. Monitors prices at defined intervals (24/7 monitoring). Handles upper and lower price limits with direction-based alerts (above, below, both). Implements cooldown logic to avoid duplicate alerts. Updates last alert price and timestamp in Google Sheets. Supports multiple alert channels: Email, Telegram, Discord. Uses CoinGecko API for price data (Free tier supported). How It Works 24/7 Crypto Trigger – Runs every minute (or custom interval) to check latest prices. Read Crypto Watchlist – Fetches symbols and conditions from Google Sheets. Parse Crypto Data – Converts Google Sheet data into structured JSON. Fetch Live Crypto Price – Uses CoinGecko API to get latest market price for each coin. Smart Crypto Alert Logic – Compares live price with upper/lower limits and evaluates conditions: Above – Trigger alert if price > upper\_limit. Below – Trigger alert if price < lower\_limit. Both – Trigger alert if either condition is met. Implements cooldown\_minutes to prevent repeated alerts. Check Crypto Alert Conditions – Validates alerts before sending notifications. Send Crypto Email Alert – Sends email alert if condition is true. Send Telegram Crypto Alert – Sends Telegram alert. Send Discord Crypto Alert – Sends Discord alert. Update Crypto Alert History – Updates last_alert_price and last_alert_time in Google Sheet. Crypto Alert Status Check – Ensures alert process completed successfully. Success Notification – Sends confirmation message on success. Error Notification – Sends an error alert if something fails. Google Sheet Columns (A-G) | Column | Description | | ------ | ---------------------------------- | | A | symbol (BTC, ETH, SOL, etc.) | | B | upper_limit (e.g., 45000) | | C | lower_limit (e.g., 40000) | | D | direction (both / above / below) | | E | cooldown_minutes (e.g., 10) | | F | last_alert_price (auto-updated) | | G | last_alert_time (auto-updated) | How to Use Import the workflow into n8n. Configure Google Sheets credentials and link your watchlist sheet. Add your CoinGecko API endpoint in the Fetch Price node (Free tier). Set up Email, Telegram, and Discord credentials for notifications. Test with sample data: Example: BTC, upper\_limit=45000, lower\_limit=40000, direction=both. Execute the workflow and monitor alerts. Requirements n8n environment with execution permissions. Google Sheets integration (with API credentials). CoinGecko API (Free tier supported). Notification channels: Email (SMTP settings in n8n). Telegram Bot Token. Discord Webhook URL. Customizing This Workflow Add more coins in Google Sheet. Modify alert conditions (e.g., percentage change, moving averages). Add SMS or WhatsApp notifications. Integrate with Slack or Microsoft Teams. Use AI-based price predictions for smarter alerts.
by Rajeet Nair
📖 Description 🔹 How it works This workflow turns a Google Form submission into a polished, SEO-optimized technical blog with a human approval step before publishing. Google Form Submission (Trigger) The process begins when a Google Form is filled. Responses are stored in Google Sheets, which acts as the trigger for the workflow. AI Blog Draft Generation Takes the form inputs (problem statement, options tried, solution, learnings, references, etc.). AI generates a structured draft JSON blog post containing: Title & metadata Problem explanation Solution breakdown Implementation methods with realistic code snippets Troubleshooting, performance tips, security notes, advanced use cases Clear developer-focused conclusion Template Fitting Reformats the draft into a professional long-form blog structure with consistent headings (H1, H2, H3), code blocks, and clear formatting. Optimization Layer Applies multi-layer optimization to make the blog: SEO-friendly (keywords, meta description, structured headings). GEO-ready (Generative Engine Optimization for visibility in ChatGPT, Claude, Gemini, etc.). Human-like in tone (reads naturally, avoids AI-detector flags). Human-in-the-Loop Review Sends the draft via Gmail (Send + Wait for Response) to an editor or approver. Approver options: ✅ Approve → Blog is stored & marked completed. ❌ Reject → Feedback is sent for revision. 🚫 Cancel → Workflow ends save status in sheets. Publishing / Storage Approved blogs are stored in a separate Google Sheet for publication tracking. Status in the original sheet is updated to Completed. ⚙️ Set up steps Connect Google Sheets & Gmail in n8n. Link your Google Form to the trigger sheet. Add AI provider credentials (Groq, Mistral, or OpenRouter). Customize blog structure (problem, solution, code, references, etc.). Set reviewer email(s) in Gmail node. Test the workflow by submitting a sample Google Form response. google form sample: ⚡ Result: A fully automated pipeline where filling a Google Form kicks off AI-powered blog generation, optimization, and a human-in-the-loop approval process, making technical content creation faster and more reliable.
by Parth Pansuriya
AI Meeting Summary Generator with Google Docs Integration Who’s it for Teams that record meetings and want fast, clear summaries without manual note-taking. Managers who need action items extracted automatically. Anyone using Google Drive + Google Docs as their central workspace. How it works / What it does This workflow automates meeting documentation: Watches a Google Drive folder for new audio/video meeting files. Downloads the file and transcribes speech into text using Gemini AI. Summarizes transcripts into Key Discussions and Action Items. Creates or updates a Google Doc with the formatted summary (title, bullets, checkmarks, styling). Sends final output to Docs with bold headings, bullets, and spacing for readability. How to set up Add your Google Drive Trigger to monitor a folder. Connect Gemini AI to handle transcription + summarization. Configure the Google Docs Tool to create/update your summary documents. (Optional) Use the Code Node + Docs API to apply bullet/checkmark formatting. Requirements Google Drive OAuth2 – for monitoring & downloading files Google Docs OAuth2 – for creating and updating documents Google Gemini API – for transcription + AI-powered summarization How to customize the workflow Change the Google Drive folder to monitor a different workspace. Edit the system prompt in the Summarizer to tweak summary style (e.g., more detail, decisions only, etc.). Modify the Code Node formatting rules (bullets, checkmarks, bold text). Add integrations (e.g., Slack, Email, Notion) to send summaries beyond Google Docs.
by Giovanni Beggiato
How it works: Detects new unread Gmail messages Extracts sender name for personalized replies Classifies the email into one of four categories Applies the correct Gmail label and either sends an auto-reply, creates a draft, or logs the contact in Google Sheets Setup steps: Takes about 5–10 minutes to connect accounts and set labels Connect Gmail, OpenAI, and optional Google Sheets in n8n Add label IDs, Google Sheet ID, sheet name, and phone number in Set – Config Create four Gmail labels for the categories Keep full setup instructions in the sticky notes inside the workflow
by Ahmed Sherif
Personalized Cold Email System with Google Gemini AI and Telegram Approval An AI-powered cold email automation that uses Google Gemini to generate personalized outreach and a Telegram workflow for manual approval, ensuring high-quality, human-in-the-loop campaigns. Features Smart Lead Selection**: Fetches leads with an "Available" status from a designated Google Sheet. AI Email Generation**: Google Gemini creates a personalized subject line and email body based on lead data. Telegram Approval**: Sends each generated email to a Telegram chat for a one-click "Approve" or "Reject" decision. Edit & Regenerate**: Allows users to provide feedback on rejected emails, which the AI uses to regenerate a new version for re-approval. Auto-Send**: Approved emails are automatically dispatched via a configured SMTP server, including a professional signature. Complete Tracking**: Updates three separate Google Sheets (Filtered Leads, Sent Leads, Emails Sent) to maintain a clear audit trail. Rate Limiting**: A one-second delay between email sends helps avoid spam filters and protects sender reputation. Batch Processing**: Handles three leads per execution by default, which is configurable to scale up or down. How It Works A manual trigger initiates the workflow and captures the current date and time for logging. The system fetches a set number of leads (default is three) from the Filtered Leads sheet where the status is "Available". It loops through each lead individually to generate and send a unique email. The AI generates a personalized email (Subject + Body) using the lead's data. A preview of the email is sent to a specified Telegram chat with "Approve" and "Reject" buttons. If approved: The email is sent via SMTP. The lead's status is updated, and logs are written to the Sent Leads and Emails Sent sheets. The system waits one second before processing the next lead. If rejected: The system prompts the user for feedback in Telegram. The feedback is combined with the original prompt to generate a new email draft, which is sent for re-approval. A final notification is sent to Telegram when the batch is complete. Requirements Google Sheets with three tabs (see structure below). Telegram Bot Token and user/group Chat ID. Google Gemini API Key. SMTP Email Account credentials (server, port, username, password). Setup Instructions Google Sheets Setup: Create a new Google Sheet. Rename three tabs to exactly Filtered Leads, Sent Leads, and Emails Sent. Populate the Filtered Leads sheet with your lead data according to the structure specified below. API Credentials: Google Gemini: Generate an API key from your Google AI Studio account. Telegram Bot: Create a new bot by messaging @BotFather on Telegram and follow the prompts to get your API token. Get your Chat ID by messaging @userinfobot. SMTP Configuration: Obtain the SMTP server address, port, username, and password from your email provider (e.g., Google Workspace, Outlook). Automation Platform: In your automation platform (e.g., n8n, Make), create a new workflow. Connect your Google Sheets account using OAuth2. Add the Gemini API Key, Telegram Bot Token, Chat ID, and SMTP credentials into the respective modules or credential stores. Map the sheet columns to the variables in the workflow modules. Google Sheets Structure The automation requires the following column headers in each sheet. The names must be exact. Filtered Leads (Input Sheet)** FirstName: Lead's first name. LastName: Lead's last name. Email: Lead's email address. CompanyName: Name of the lead's company. JobTitle: Lead's current job title. Website: Company website (for AI context). LinkedIn: URL of the lead's LinkedIn profile. Notes: Any specific details or pain points for personalization. Status: Workflow status. Set to Available for leads ready to be processed. Sent Leads (Tracking Sheet)** Email: Email address of the contacted lead. CompanyName: Name of the company. TimestampSent: Date and time the email was sent. Emails Sent (Archive Sheet)** RecipientEmail: The lead's email address. Subject: The exact subject line that was sent. Body: The full email body that was sent. TimestampSent: Date and time the email was sent. Customization Guide This template can be adapted to fit specific campaign needs. Batch Size**: The number of leads processed per execution is controlled by the initial "Get Leads" module. Change the Limit parameter from 3 to your desired number. AI Prompt**: The core of the personalization is the prompt sent to the Gemini API. Modify this prompt to change the email's tone, structure, or call-to-action. You can instruct the AI to focus on specific data from the Notes column or reference a different value proposition. Lead Filtering**: The trigger condition is set to pull leads where Status = "Available". This can be changed to any other logic, such as Priority = "High" or Campaign = "Q4-Push", by adjusting the filter in the Google Sheets module. Email Signature**: The signature is typically configured within the SMTP "Send Email" module. Update the HTML or plain text here to change the signature across all sends. Telegram Notifications**: The text and buttons sent to Telegram for approval can be modified. You can add more lead data to the approval message (e.g., Job Title, Company Name) to give the approver more context.
by Fabian Herhold
Who’s it for Recruiting agencies, executive search firms, and in-house talent teams that want to automate candidate sourcing and prequalification. Instead of spending hours searching, scoring, and writing outreach, this workflow turns any job description into a ready-to-use shortlist with personalized messages. Youtube Walkthrough What it does (How it works) This workflow takes a job description (title, description, and location) and runs a complete recruiting automation pipeline: Normalize job titles** and generate variations to widen search coverage. Search candidates** in Apollo (or your CRM / database of choice). Remove duplicates** to keep clean lists. Score candidates** with AI (0–5) and provide concise reasoning across experience, industry, and seniority. Enrich LinkedIn profiles** (name, title, image, location, experience). Create structured candidate assessments** (summary, alignment, red flags, positives). Generate outreach messages** (email + LinkedIn DM) tailored to the candidate. Write to Airtable** for job/candidate tracking and downstream automation. Everything is plug-and-play, with no manual searching or copy-pasting required. Requirements n8n (Cloud or self-hosted) Airtable account + API access Apollo API or your preferred candidate source LLM provider: OpenAI or Anthropic LinkedIn enrichment API (RapidAPI, Apify, etc.) > ⚠️ Do not hardcode API keys in HTTP nodes. Always use Credentials in n8n. Airtable table specifications Create one base (e.g., Candidate Search – From Job Description) with two tables: Jobs Table Job Title (text) Job Description (long text) Job Location (text) Candidates (linked to Candidates table) Candidates Table Core fields: Name, LinkedIn URL, Job Title, Location, Image URL, Job Searches (linked) Assessment fields: Summary Fit Score, Executive Summary, Title Alignment, Skill Alignment, Industry Alignment, Seniority Alignment, Company Type Alignment, Educational Alignment, Potential Red Flags, Positive Signals, Final Recommendation, Next Steps Suggestion Outreach fields: Email Subject, Email Body, LinkedIn Message How to set up Connect credentials Add Airtable, Apollo/CRM, and OpenAI/Anthropic credentials under n8n Credentials. Create Airtable base/tables Follow the above spec for Jobs and Candidates. Match field names exactly to avoid mapping errors. Configure the trigger The workflow starts from a Form/Webhook node. It captures: Job Title (required) Job Description (required) Location (required) Target Companies (optional, comma-separated domains) Job title mutation The workflow uses an AI node to normalize the job title and generate up to 5 variations for broader candidate searches. Candidate search Apollo (or your CRM API) is queried with the generated titles and location filters. Results are deduped. AI scoring & structuring Candidates are scored 0–5 with clear reasoning (experience, industry, seniority, general fit). Profiles are formatted into structured JSON for Airtable. LinkedIn enrichment Enrichment API fetches missing data (geo, image, job history). Candidate assessment An AI model produces a full recruiter-ready evaluation (fit summary, strengths, red flags). Outreach generation The workflow drafts a concise cold email (<75 words) and LinkedIn DM (<60 words), consultative in tone. Write to Airtable All jobs and candidates (with assessments and outreach messages) are logged for review and integration. How to customize Swap Apollo with your CRM** (Greenhouse, Bullhorn, etc.). Adjust scoring prompts** to match your niche (sales, engineering, healthcare). Add custom filters** for target companies or industries. Change outreach tone** to align with your brand voice. Limit by score** (e.g., only push candidates with score ≥4). Security & best practices Store all keys in n8n Credentials (never in nodes). Use Set nodes to centralize editable variables (title, location, filters). Always add sticky notes in your workflow explaining steps. Rename nodes clearly for readability. Troubleshooting No candidates found?** Loosen title variations or broaden location. Low fit scores?** Refine keywords and required skills in scoring prompts. Airtable errors?** Double-check Base ID, Table ID, and field names. API rate limits?** Enable batching/pagination and increase intervals. SEO title: Build candidate shortlists from a job description to Airtable with Apollo, AI scoring, and personalized outreach Keywords: recruiting automation, Apollo people search, candidate enrichment, AI scoring, Airtable recruiting CRM, LinkedIn outreach, n8n workflow template
by Rully Saputra
Create GitHub issues from webhook input and send alerts to Telegram This workflow streamlines bug tracking by using a webhook to collect issue reports, automatically classifying and summarizing them with Gemini AI, then sending critical issues to GitHub and real-time notifications to Telegram. Optional manager approval is built in for low-priority reports. 🧑💻 Who’s it for This workflow is ideal for: Engineering teams needing automated issue tracking from multiple systems QA testers or customer support agents who log bugs via custom tools DevOps teams monitoring logs or error reports in real time Teams using GitHub for issue tracking and Telegram (or any messenger) for notifications ⚙️ How it works Webhook Trigger – Listens for incoming POST requests containing bug or task data. AI-Powered Classification – Uses the Gemini model to classify bugs as High or Low severity. Optional Approval – If severity is Low, it waits for a manager’s approval before proceeding. Bug Summary Generation – Passes through a filter and sends the input to Gemini to generate a clean summary. Create GitHub Issue – Submits the summarized issue to your GitHub repository. Telegram Notification – Sends a formatted message to a Telegram group or manager, depending on the path. 🛠️ How to set up Replace the GitHub node with your repo credentials and target repo. Set up the Telegram bot token and chat ID in the Telegram node. Customize the Gemini prompts for your preferred classification and summary logic. Define the conditions for “High” vs “Low” severity based on your data. 📋 Requirements A GitHub account with a personal access token (with repo access) A Telegram bot token and group chat ID Google Gemini API credentials (or your preferred AI model integration) 🔧 How to customize the workflow Swap Telegram with another messaging platform like Slack, Discord, or Microsoft Teams. Adjust classification rules to match your business logic. Change approval flow to notify a different person or add additional logic before sending to GitHub. Extend the webhook input format to support richer data, such as user info or system metadata.
by plemeo
Who’s it for Growth hackers, community builders, and marketers who want to keep their Twitter (X) accounts active by liking posts from selected profiles automatically. How it works / What it does Schedule Trigger fires hourly. Profile Post Extractor fetches up to 20 tweets for each profile in your CSV. Select Cookie rotates Twitter session-cookies. Get Random Post checks against twitter_posts_already_liked.csv. Builds twitter_posts_to_like.csv, uploads to SharePoint. Phantombuster Autolike Agent likes the tweet. Logs the liked URL to avoid duplicates. How to set up Add Phantombuster + SharePoint credentials. In SharePoint “Phantombuster” folder: • twitter_session_cookies.txt • twitter_posts_already_liked.csv (header postUrl) • profiles_twitter.csv (list of profiles). Profile CSV format Your profiles_twitter.csv must contain a header profileUrl and direct links to the Twitter profiles. Example: profileUrl https://twitter.com/elonmusk https://twitter.com/openai
by Elegant Biztech
Automated QuickBooks New Customer Welcome Emails This workflow provides a robust solution for QuickBooks users looking to automate their new customer onboarding process. It solves the time-consuming and error-prone task of manually sending welcome emails by creating a fully automated system that ensures every new customer receives a timely, personalized, and professional welcome. The workflow periodically checks your QuickBooks Online account for new entries. To prevent sending duplicate emails to existing customers, it cleverly uses a Google Sheet as a simple database, tracking every customer who has already been contacted. This makes the process reliable and safe to run on an automated schedule. This template was crafted with care by the team at Elegant Biztech to help you build stronger customer relationships through smart automation. How the Workflow Operates Scheduled Trigger: The workflow initiates on a customizable schedule (e.g., every hour). Fetch Data: It simultaneously fetches all customer data from your QuickBooks account and the list of already-processed customer IDs from your Google Sheet. Find New Customers: It compares the two lists to isolate only the new customers who have not yet been processed. Log New Customers: For each new customer found, the workflow performs two logging actions: It appends their full details (Name, Company, Email, etc.) to a "log" sheet for your records. It adds their unique Customer ID to the "tracking" sheet to ensure they are not emailed again in the future. Craft Personalized Email: A Email Template node dynamically generates a beautiful, responsive HTML email, personalized with the customer's name, company, and location details. Send Welcome Email: The final node sends the uniquely crafted email to the new customer. Prerequisites Before you begin, please ensure you have the following: An active n8n instance. A QuickBooks Online account with API access. A Google account. An email service (e.g., SMTP, Gmail, Outlook) connected to n8n as credentials. Step-by-Step Setup Guide Follow these instructions carefully to configure the workflow for your use. 1. Create the Google Sheet This workflow requires a Google Sheet with two specific tabs to function as its database. Create a new Google Sheet. Rename the first tab to Processed IDs. In cell A1, create the header: CustomerIds. Create a second tab and name it New Customer Logs. In row 1, create the following headers: Customer_Name, Company_Name, Email_ID, Phone_No, Customer_ID. 2. Connect Your Accounts You must authenticate your accounts in the designated nodes. Get many Customers node:** Select this node and connect your QuickBooks Online credentials. Read Old Customers node:** Connect your Google Sheets account credentials here. This will be automatically used by the other Google Sheets nodes. Send Personalized Welcome Email node:** Connect the credentials for the email account you wish to send from. 3. Configure the Google Sheets Nodes Point the workflow to the correct sheet and tabs you just created. Read Old Customers node:** In the Document ID field, select your new Google Sheet. In the Sheet Name field, select the Processed IDs tab. Log New Customer Details node:** Verify the Document ID field is correctly set to your Google Sheet. In the Sheet Name field, select the New Customer Logs tab. Log New Customer ID for Tracking node:** Verify the Document ID is correct. In the Sheet Name field, select the Processed IDs tab. 4. Customize the Email Template Personalize the welcome email to match your brand. Open the Code node. Inside the code editor, find and replace these four placeholder values: Your Logo URL: Replace the placeholder link with a public URL to your company's logo. Your Website Link: Replace the placeholder with a link to your website's dashboard or homepage. Your Support Email: Replace the mailto: link with your company's support email. Your Company Name: Update the company name in the copyright footer. Next, select the Send Personalized Welcome Email node and update the Subject field with your company's name. 5. Activate the Workflow Open the Scheduler node to set the schedule for how often you want the workflow to run. Save the workflow. Click the Active toggle at the top right of the screen. Your automated welcome email system is now live! For questions or to explore more custom solutions, visit us at elegantbiztech.com.
by Rajeet Nair
📖 Description 🔹 How it works This workflow uses AI (Mistral LLM + Pollinations.ai) to generate high-quality visual content for social media campaigns. It automates the process from brand/campaign input to final image upload, ensuring consistency and relevance. Input Brand & Campaign Data Retrieves brand profile and campaign goals from Google Drive. Cleans and merges the data into a structured JSON format. Campaign Goal Generation AI summarizes campaign goals, audience, success metrics, and keywords. Produces a clear campaign goal summary for content planning. Image Prompt Generation AI creates 5 detailed image prompts reflecting the campaign story. Includes 1 caption and 4–6 relevant hashtags. Image Creation Pollinations.ai generates images based on the AI prompts. Each image is renamed systematically (photo1 → photo5). Post-Processing & Upload All images are merged into a single item. Workflow uploads the final output to Google Drive for campaign use. ⚙️ Set up steps Connect Credentials Add Google Drive and Mistral API credentials in n8n. Configure Google Drive Input Nodes Set fileId for brand profile and campaign goals. Customize AI Prompts Sticky notes explain AI nodes for goal summary and image prompt generation. Optionally modify tone, keywords, or target audience for brand-specific campaigns. Check Image Output Nodes Ensure Pollinations.ai HTTP request nodes are active. Verify renaming code nodes for proper photo sequence. Activate Workflow Test workflow manually to ensure images are generated and uploaded correctly. 🔹 Data Handling & Output This workflow pulls brand profile and campaign goal data from Google Drive. Data is processed into structured JSON, including: Brand Profile: name, mission, vision, values, services, tone, keywords, contact info. Campaign Goal: primary goal, focus, success metrics, target audience, core message. Supports population of multiple campaigns or brands dynamically. JSON output can be used downstream for image prompt generation, reporting, or analytics. All processing is automated, with clear nodes for extraction, parsing, and merging. pollinations.ai is an open-source free text and image generation API available. No signups or API keys required. which prioritize your privacy with zero data storage and completely anonymous usage. ⚡ Result: A fully automated AI-to-image workflow that transforms campaign goals into ready-to-use social media visuals, saving time and maintaining brand consistency.