by Adrian
This workflow automates plant care reminders and records using Google Sheets, Telegram, and OpenWeather API. It checks when each plant needs watering or fertilizing, sends a personalized reminder, and lets you confirm the task with a single button. When confirmed, it updates your Google Sheet and shows a confirmation HTML page. Who is it for? Home gardeners who want to automate watering and fertilizing schedules. Anyone managing a plant collection, greenhouse, or garden and wanting a lightweight, no-code reminder system. How it works Schedule Trigger starts the workflow once per day. Read Settings (Google Sheets) checks if vacation_mode is active. Read Plants (Google Sheets) retrieves all plants with columns such as id, plant, last_water, water_freq, etc. DecideDue (Code Node) compares today’s date with the last watering/fertilizing date and marks which plants are due. OpenWeather Request (optional) fetches local forecast for plants with coordinates and weather_delay = true. WeatherGate (Code Node) skips or delays watering if it recently rained or if rain is expected soon. Telegram Send Message sends a reminder for each due task. The message contains an inline button “Mark as done” linking to your webhook URL (opens confirmation window). Webhook – Confirm Done receives the click, update dates on Google Sheets, appends an optional log entry, and returns an HTML confirmation page. Setup steps Principal Workflow Spreadsheet- Create a Google Sheets document with: plants sheet: (id, plant, last_water, water_freq, last_fert, fert_freq, lat, lon, weather_delay , indoor, thirst_level) settings sheet: (vacation_mode, timezone) log sheet: (ts, plant_id, action message_id) Connect your Google account Configure the Schedule Trigger Enable weather integration (Get a free OpenWeather API key) and add it to the HTTP Request node parameters appid. https://openweathermap.org/api Configure Telegram with your credential and your chat id on {YOUR_CHAT_ID}. Configure "Send Dues" node with your custom url https://{YOUR_PROJECT_URL}.app.n8n... Setup steps Sub-Workflow (Webhook) Trigger: Configure your custom Path. Google Sheets: Connect your Google Account and Map sheets and columns. Requirements · A Google account with access to Google Sheets. . A spreadsheet containing three sheets with headers matching the field names used in the workflow. . A telegram bot. . OpenWeather API key for climate-aware watering. How to customise it Add plant photos: Include a photo URL column and show it in the Telegram message. Extend actions: Add pruning, repotting or any other periodic task by duplicating the existing logic.
by Asfandyar Malik
Who’s it for For HR professionals, recruiters, and hiring managers who want to automate the initial CV screening and candidate evaluation process. This workflow helps teams efficiently assess applicants based on submitted answers and resume data — saving hours of manual review and ensuring fair, consistent scoring. How it works This workflow automates CV screening using Google Drive, Google Sheets, and Gemini AI. When a candidate submits a form with their answers and CV, the file is uploaded to Drive, converted from PDF to plain text, and merged with the form data. Gemini AI then analyzes both inputs, comparing skills, experience, and responses to generate consistency, job-fit, and final scores. Finally, the results are parsed, saved to Google Sheets, and automatically sorted by score, providing a ranked list of candidates for easy review. How to set up Connect your Google Drive and Google Sheets credentials in n8n. Configure your Form Trigger to capture candidate answers and CV uploads. Set up the Extract from File node to parse PDF files into text. Add your Gemini AI credentials securely using n8n’s credential system (no hardcoded keys). Execute the workflow once to verify that CVs are uploaded, analyzed, and ranked in the connected Google Sheet. Requirements n8n account (cloud or self-hosted). Google Drive and Google Sheets integrations. Gemini AI (Chat Model) API credentials. A connected form (e.g., Typeform, n8n Form Trigger) How to customize You can modify the AI prompt to align with your company’s job criteria or evaluation style. Add more scoring categories (e.g., education, technical skills, experience). Change the output destination — send results to Airtable, Notion, or Slack. Enhance it with dashboards or extra nodes for reporting and analytics. ⚠️ Disclaimer This workflow uses Gemini AI, which may require self-hosting for community node compatibility. Ensure that no personal or sensitive candidate data is shared externally when using AI services.
by ConceptRecall
Who is this for? This workflow is designed for software teams, project managers, and developers who manage work across Azure DevOps and GitHub. It helps organizations that use Azure DevOps for work item tracking but rely on GitHub for issue management and collaboration. If you need to ensure that your DevOps Stories and Tasks are mirrored in GitHub issues while keeping a single source of truth in Google Sheets, this workflow is for you. What problem is this workflow solving? / Use case Managing projects across multiple platforms often leads to missed updates and poor traceability. Stories created in Azure DevOps may not be tracked properly in GitHub.\ Tasks under Stories often lose visibility when teams split between platforms.\ Manual syncing between tools takes time and causes human errors. This workflow solves that problem by automating the sync between Azure DevOps Stories and GitHub Issues, while also keeping a Google Sheets record for cross-referencing and reporting. What this workflow does Triggers from Azure DevOps Stories -- When a Story is created or updated, the workflow is activated.\ Creates a GitHub Issue -- A new issue is generated in the specified GitHub repository.\ Assigns a random collaborator -- One repository collaborator is randomly assigned to the issue.\ Logs mapping in Google Sheets -- The Azure DevOps Story ID, GitHub Issue number, and URL are stored for tracking.\ Triggers from Azure DevOps Tasks -- When a Task linked to a Story is created, the workflow looks up its parent in Google Sheets.\ Updates the GitHub Issue -- The parent GitHub Issue is updated with a clickable link to the new Task for better visibility. Setup Connect your accounts GitHub (OAuth2 or personal token)\ Google Sheets (OAuth2)\ Azure DevOps (Webhook integration) Configure Webhooks Add the workflow's webhook URLs to Azure DevOps service hooks for Work Item Created/Updated events. Update repository details Set the GitHub repository where issues should be created. Customize Sheets Use the provided Google Sheet or link your own for issue mappings. How to customize this workflow to your needs Modify assignment logic**: Instead of random collaborator assignment, edit the Code node to assign issues based on workload or labels.\ Change Sheet schema**: Add more fields (e.g., State, IterationPath) to your Google Sheet for richer reporting.\ Expand task linking**: Customize the way Tasks are appended to GitHub issues (e.g., group by state, show due dates). Powered By Concept Recall https://conceptrecall.com
by Abdullah Alshiekh
This workflow is designed to automate your e-commerce order processing by instantly syncing new Jotform submissions with your internal systems and immediately notifying the customer on Telegram. 🧩 What Problem Does It Solve? Businesses manually processing orders face delays in: Sending order confirmations to customers.** Updating internal sales logs (CRM/Google Sheets).** Creating necessary financial documents (Invoices).** This workflow solves these by: Instant Confirmation:** Automatically sending a detailed order confirmation message to the customer via Telegram. Automatic Record Keeping:** Logging all order details in both a Google Sheet (CRM) and an n8n Data Table. Fast Invoicing:** Instantly generating Invoice for every completed order. 🛠️ How to Configure It 1.Jotform Setup: Connect your Jotform API credentials in n8n. Specify the ID of the form you want to monitor in the Jotform Trigger node. 2.Telegram Setup: Connect your Telegram Bot API credentials in n8n. The workflow relies on the customer messaging the bot first to capture their unique Chat ID. 3.CRM & Finance Setup: Connect your Google Sheets API credentials and specify the Document ID and Sheet GID. Connect your Zoho CRM API credentials and map the product IDs and financial fields in the Create Zoho Invoice node. 4.n8n Data Table: Create a dedicated n8n Data Table to temporarily store and manage the Chat ID mapping for new orders. ⚙️ How It Works Order Received:* The *Jotform Trigger** instantly fires upon a new form submission. Data Processing:** The data is cleaned, structured, and a unique Order ID is generated. CRM Sync:* The order is logged into the Google Sheet CRM and an Invoice is created in *Zoho CRM**. Confirmation Sent:** The Send a text message node delivers the order confirmation summary directly to the customer's Telegram chat. 🎯 Perfect For E-commerce:** Instantly confirm sales and stop worrying about manually sending receipts or updating sales sheets. Service Bookings:** Automate client intake; when a form is submitted, the invoice is drafted, and the client is immediately notified. Local Businesses:** Turn a complex Jotform submission into an organized invoice and a clean CRM entry, instantly. Anyone Who Takes Orders Online:** If you manually copy order info from a form to an invoice or a spreadsheet, this is your instant automation solution. If you need any help Get in Touch
by Alexandra Spalato
Companies Email Finder & Lead Generation Automation Short Description Automatically find company domains, extract decision maker emails (CEO, Sales, Marketing), validate email quality, and build a comprehensive prospect database using AI-powered search and professional email finding APIs. Detailed Description This comprehensive lead generation workflow transforms a simple list of company names into a complete prospect database with verified decision maker contacts. The system automatically discovers official company websites, finds key decision makers' email addresses, validates email quality, and organizes everything in a structured database for immediate outreach. Perfect for sales teams, marketing agencies, business developers, and anyone who needs to build high-quality prospect lists efficiently and cost-effectively. Key Features Intelligent Domain Discovery**: Uses Serper.dev and AI to find official company websites from search results Multi-Role Email Finding**: Automatically extracts emails for: CEOs and C-level executives Sales decision makers Marketing decision makers Email Quality Validation**: Classifies emails as "valid" or "risky" for better deliverability Smart Fallback System**: Searches for additional company emails when decision makers aren't found Duplicate Prevention**: Removes duplicate contacts automatically Batch Processing**: Handles large company lists efficiently with intelligent batching Database Integration**: Stores all data in NocoDB with proper organization and status tracking Rate Limiting**: Includes delays and error handling to respect API limits Who This Workflow Is For Sales Teams**: Building targeted prospect lists for outbound campaigns Marketing Agencies**: Creating lead databases for client campaigns Business Development**: Finding decision makers for partnership opportunities Recruiters**: Locating hiring managers and HR contacts Entrepreneurs**: Building contact lists for product launches or fundraising Lead Generation Services**: Automating prospect research for clients Problems This Workflow Solves Manual Research Time**: Eliminates hours of manual company and contact research Incomplete Contact Data**: Ensures you have decision makers, not just generic emails Email Deliverability Issues**: Validates email quality before outreach campaigns Data Organization**: Maintains clean, structured prospect databases Scaling Bottlenecks**: Processes hundreds of companies automatically High Lead Generation Costs**: Reduces dependency on expensive lead generation services Setup Requirements Required API Credentials Serper.dev API Key**: For company domain search and discovery OpenAI API Key**: For intelligent domain extraction from search results AnyMailFinder API Key**: For decision maker email discovery and validation NocoDB API Token**: For database storage and management Database Structure Companies Table: Id (Number): Unique company identifier company_name (Text): Company name to search location (Text): Company location for better search results url (URL): Discovered company website domain (Text): Extracted domain name status (Select): Processing status tracking emails (Text): All discovered company emails company_emails_status (Text): Email validation status Contacts Table: companies_id (Number): Link to parent company name (Text): Contact full name position (Text): Job title/role email (Email): Contact email address email_status (Text): Email validation status linkedin_url (URL): LinkedIn profile (when available) System Requirements Active n8n instance (self-hosted or cloud) NocoDB database instance Active API subscriptions for Serper.dev, OpenAI, and AnyMailFinder How It Works Phase 1: Domain Discovery Company Processing: Retrieves companies from database in batches Domain Search: Uses Serper.dev to search for official company websites AI Domain Extraction: OpenAI analyzes search results to identify official domains Database Updates: Stores discovered domains and URLs Phase 2: Decision Maker Discovery Multi-Role Search: Finds emails for CEO, Sales, and Marketing decision makers using AnyMailFinder Email Validation: Validates email deliverability and flags risky addresses Contact Creation: Stores validated contacts with full details Status Tracking: Updates company status based on email discovery success Phase 3: Company Email Backup Gap Analysis: Identifies companies with no valid decision maker emails Bulk Email Search: Finds up to 20 additional company emails using AnyMailFinder Final Updates: Stores all discovered emails for comprehensive coverage Customization Options Search Parameters Modify search queries for better domain discovery using Serper.dev Adjust location-based search parameters Customize AI prompts for domain extraction Decision Maker Roles Add new decision maker categories (HR, Finance, Operations, etc.) Modify existing role search parameters in AnyMailFinder Customize email validation criteria Data Processing Adjust batch sizes for different processing speeds Modify rate limiting delays Customize error handling and retry logic Database Schema Add custom fields for industry, company size, etc. Integrate with different database systems Customize data validation rules API Costs and Credits AnyMailFinder**: 2 credits per valid email found, 1 credit per bulk company search Serper.dev**: ~$1 per 1000 searches OpenAI**: Minimal costs for domain extraction prompts Estimated Cost**: about $0.03 per company processed (depending on email discovery success) Benefits Save 20+ Hours Weekly**: Automate prospect research that takes hours manually Higher Quality Leads**: Get decision makers, not generic contact@ emails Better Deliverability**: Email validation reduces bounce rates Scalable Process**: Handle thousands of companies automatically Cost Effective**: Much cheaper than traditional lead generation services Complete Database**: Build comprehensive prospect databases with all contact details Use Cases Outbound Sales Campaigns**: Build targeted prospect lists for cold outreach Partnership Development**: Find decision makers at potential partner companies Market Research**: Understand company structures and contact hierarchies Recruitment**: Locate hiring managers and HR contacts Investor Relations**: Find contacts at potential investor companies Vendor Outreach**: Identify procurement and operations contacts Installation Instructions Import the workflow JSON into your n8n instance Set up NocoDB database with required table structures Configure all API credentials in the credential manager (including Serper.dev and AnyMailFinder) Update NocoDB connection settings with your database details Test with a small batch of companies before full deployment Monitor API usage and adjust batch sizes as needed Best Practices Start with high-quality company names and locations Monitor AnyMailFinder credit usage to manage costs Use Serper.dev efficiently with targeted search queries Regularly clean and validate your prospect database Respect email deliverability best practices Follow GDPR and data privacy regulations Use rate limiting to avoid API restrictions Error Handling Built-in retry mechanisms for API failures Continues processing even if individual companies fail Create an Error Workflow
by Ranjan Dailata
Who this is for This workflow is designed for researchers, marketing teams, customer success managers, and survey analysts who want to automatically generate AI-powered summaries of form responses collected via Jotform — turning raw feedback into actionable insights. It is ideal for: Teams conducting market research or post-event surveys. Customer experience teams that collect feedback via forms and need instant, digestible summaries. Product managers seeking concise overviews of user comments and suggestions. Analysts who want to compare comprehensive vs. abstract summaries for richer intelligence. What problem this workflow solves Analyzing open-ended Jotform responses manually can be slow, repetitive, and error-prone. This workflow automates the process by generating two AI summaries for every response: Comprehensive Summary — captures all factual details from the response. Abstract Summary — rephrases and synthesizes insights at a higher, conceptual level. With this workflow: Each response is summarized instantly using Google Gemini AI. Both comprehensive and abstract summaries are automatically generated and stored. Data is persisted in Google Sheets, DataTable, and Google Docs for further use. What this workflow does This n8n workflow transforms Jotform submissions into structured summaries using Google Gemini. Step-by-Step Breakdown Webhook Trigger (Jotform Integration) Listens for new Jotform submissions using the Webhook node. Receives full form data via the Webhook response. Set the Input Fields Extracts and assigns key fields like: FormTitle SubmissionID Body (the formatted form data) Prepares structured JSON to feed into the AI summarization stage. Comprehensive & Abstract Summarizer Powered by Google Gemini Chat Model (models/gemini-2.0-flash-exp). Custom prompt: You are an expert comprehensive summarizer. Build a detailed and abstract summary of the following {{ $json.body.pretty }}. Produces two distinct summaries: comprehensive_summary abstract_summary Structured Output Parser Ensures Gemini output matches a defined JSON schema: { "comprehensive_summary": "", "abstract_summary": "" } Guarantees reliable downstream integration with Sheets and Docs. Persist on DataTable Saves both summaries into an n8n DataTable for historical tracking or visualization. Useful for teams running internal analytics within n8n Cloud or self-hosted environments. Append or Update Row in Google Sheets Writes both summaries into a connected Google Sheet. Columns: comprehensive_summary abstract_summary Create Google Document Automatically generates a Google Docs file titled: {FormTitle}-{SubmissionID} Acts as a per-submission record with a placeholder ready for AI summary insertion. Update Google Document Inserts both summaries directly into the newly created Google Doc: Comprehensive Summary: [Full detailed summary] Abstract Summary: [Conceptual summary] Each doc becomes a polished, shareable insight artifact. Concepts Used in the Workflow Comprehensive Summarization Comprehensive summarization captures every important detail in a factual, exhaustive way — ideal when accuracy and completeness matter. Goal: Provide a detailed understanding of user responses without losing nuance. Best For: Research surveys Customer service logs Support ticket summaries Feedback traceability Abstract Summarization Abstract summarization rephrases and synthesizes ideas, offering high-level insights rather than copying text. Goal: Capture the essence and implications of feedback — ideal for storytelling and executive reviews. Best For: Executive summaries Marketing insights Customer trend analysis Blog-style recaps Setup Instructions Pre-requisite If you are new to Jotform, Please do signup using Jotform Signup For the purpose of demonstation, we are considering the Jotforms Prebuilt Form as a example. Follow these steps to deploy and customize the workflow: Step 0: Local n8n This step is required for the locally hosted n8n only. Please make sure to setup and install ngrok and follow the steps to configure and run ngrok on your local with the n8n port. This is how you can run. ngrok http 5678 Copy the base URL ex: https://2c6ab9f2c746.ngrok-free.app/ as it will be utilized as part of the webhook configuration for the Jotform. Step 1: Configure Jotform Webhook Copy the webhook URL generated by n8n’s Jotform Trigger node. In your Jotform dashboard, go to: Settings → Integrations → Webhooks → Add Webhook If you are executing this workflow on a self hosted n8n instance, please follow the steps for setting up ngrok and format the Webhook URL so that the Jotform can make a Webhook POST over the public URL. Copy the Webhook URL generated by n8n. You can copy the URL by double clicking on the Jotform Trigger node. Make sure to replace the base url with the above Step 0, if you are running the workflow from your local machine. Step 2: Connect Google Gemini Navigate to n8n → Credentials → Google Gemini (PaLM API). Add API credentials and select the model: models/gemini-2.0-flash-exp Test the connection before proceeding. Step 3: Configure the Structured Output Parser Open the Structured Output Parser node. Ensure the schema includes: { "comprehensive_summary": "", "abstract_summary": "" } Modify or expand schema fields if additional summaries (e.g., “sentiment_summary”) are needed. Step 4: Connect Google Sheets Link your Google Sheets OAuth2 credentials. Specify: Document ID (Google Sheet URL) Sheet Name (e.g., “Sheet1”) Map columns to: comprehensive_summary abstract_summary Step 5: Enable DataTable Storage (Optional) Use the DataTable node to maintain a permanent database within n8n Cloud. Configure the schema fields for: comprehensive_summary abstract_summary Step 6: Generate and Update Google Docs Link your Google Docs account under n8n credentials. The workflow auto-creates and updates a doc per submission, embedding both summaries for easy sharing. How to Customize Add Sentiment Analysis** After generating the summary, insert another Google Gemini node to classify the tone of each response — for example, Positive, Neutral, or Negative. This helps you track user sentiment trends over time. Send Alerts for Urgent Feedback** Use an IF node to check if the abstract summary contains words such as “urgent,” “issue,” or “negative.” If triggered, automatically send an alert through Slack, Gmail, or Discord, so the team can respond immediately. Enable Multi-Language Support** Insert a Language Detection node before the Gemini summarizer. Once the language is detected, modify the summarizer prompt dynamically to summarize in that same language — ensuring localized insights. Add Topic Extraction** Include an additional Gemini text extraction node that identifies major topics or recurring themes from each response before summarization. This creates structured insights ready for analytics or tagging. Integrate with CRM or Ticketing Systems** Connect your workflow to HubSpot, Salesforce, or Zendesk to automatically create new records or tickets based on the feedback type or sentiment. This closes the loop between survey collection and actionable response. Summary This workflow automates survey intelligence generation from Jotform submissions — powered by Google Gemini AI — delivering dual-layer summarization outputs directly into Google Sheets, DataTables, and Google Docs. Benefits: Instant comprehensive and abstract summaries per submission. Ready-to-use outputs for reports, dashboards, and client deliverables.
by Santhej Kallada
In this tutorial, I’ll walk you through a step-by-step N8N workflow that combines the power of OpenAI and Claude AI to generate professional, ready-to-use lead magnet plans for any niche. This workflow helps marketers, agencies, and freelancers create engaging lead magnets — such as guides, blueprints, and checklists — with zero manual writing and complete AI automation. Who is this for? Marketers and content strategists creating high-converting lead magnets Agencies looking to scale client content deliverables Freelancers offering marketing automation services Anyone who wants to combine AI + automation for efficient content creation What problem is this workflow solving? Manually writing lead magnets can be slow and inconsistent. This workflow eliminates that by: Using OpenAI and Claude AI to co-create detailed content frameworks Automating research, structure, and formatting of lead magnet documents Allowing full customization for different industries or audiences Reducing production time from hours to minutes What this workflow does This automation connects OpenAI, Claude AI, and Google Drive (or Docs) inside n8n to produce well-structured lead magnet documents. The process includes: Collecting a topic or niche input from a form or webhook. Generating an outline and content blocks using OpenAI. Refining, expanding, and organizing the text using Claude AI. Formatting the content and converting it to clean HTML or Google Docs format. Saving or uploading the final version to Google Drive or Notion. By the end of the tutorial, you’ll have a fully automated content agent that builds lead magnet plans from scratch — ready to deliver to clients or publish instantly. Setup Create Accounts: Sign up for n8n.io. Obtain API access for OpenAI, Claude (via OpenRouter), and Google Drive API. Add API Keys in n8n: Go to Credentials and add your OpenAI and Claude API keys securely. Build the Workflow: Use a Form Trigger or Webhook Node to capture topic input. Add OpenAI Node to generate structure and section ideas. Add HTTP Request Node for Claude API (OpenRouter) to expand sections into polished paragraphs. Use a Function Node to merge sections and format them into Markdown or HTML. Add Google Drive Node to upload or store the final file. Test Your Workflow: Input a test topic (e.g., “Dental Marketing Blueprint”). Wait for the AI to generate, merge, and store your lead magnet content automatically. How to customize this workflow to your needs Modify prompt templates to fit your target audience or writing style. Integrate Notion, Airtable, or Slack for automatic delivery. Add a scheduling trigger (e.g., weekly lead magnet generation). Incorporate branding or styling logic using Markdown → HTML conversion. Expand prompts for multilingual or niche-specific lead magnets. Notes This workflow requires API keys for both OpenAI and Claude (via OpenRouter). Ensure proper handling of text formatting nodes to avoid Markdown errors. Google Drive integration requires OAuth setup in n8n credentials. Works on both n8n Cloud and self-hosted environments. 🎥 Watch the Full Tutorial 👉 YouTube Video Tutorial
by Nishant Rayan
Create Video with HeyGen and Upload to YouTube Overview This workflow automates the process of creating an AI-generated avatar video using HeyGen and directly uploading it to YouTube. By sending text input via a webhook, the workflow generates a video with a chosen avatar and voice, waits for processing, downloads the completed file, and publishes it to your configured YouTube channel. This template is ideal for automating content creation pipelines, such as daily news updates, explainer videos, or narrated scripts, without manual intervention. Use Case Marketing teams**: Automate explainer or promotional video creation from text input. Content creators**: Generate AI-based avatar videos for YouTube directly from scripts. Organizations**: Streamline video generation for announcements, product updates, or tutorials. Instead of recording and editing videos manually, this template allows you to feed text content into a webhook and have a ready-to-publish video on your YouTube channel within minutes. How It Works Webhook Trigger: The workflow starts when text content and a title are sent to the webhook endpoint. Code Node: Cleans and formats the input text by removing unnecessary newlines and returns it with the title. Set Node: Prepares HeyGen parameters, including API key, avatar ID, voice ID, title, and content. HeyGen API Call: Sends the request to generate a video with the provided avatar and voice. Wait Node: Pauses briefly to allow HeyGen to process the video. Video Status Check: Polls HeyGen to check whether the video has finished processing. Conditional Check: If the video is still processing, it loops back to wait. Once complete, it moves forward. Download Node: Retrieves the generated video file. YouTube Upload Node: Uploads the video to your YouTube channel with the provided title and default settings. Requirements HeyGen API Key**: Required to authenticate with HeyGen’s video generation API. HeyGen Avatar & Voice IDs**: Unique identifiers for the avatar and voice you want to use. YouTube OAuth2 Credentials**: Connected account for video uploads. Setup Instructions Import the Workflow: Download and import this template JSON into your n8n instance. Configure the Webhook: Copy the webhook URL from n8n and use it to send requests with title and content. Example payload: { "title": "Tech News Update", "content": "Today’s top story is about AI advancements in video generation..." } Add HeyGen Credentials: Insert your HeyGen API key in the Set Node under x-api-key. Provide your chosen avatar_id and voice_id from HeyGen. To find your HeyGen avatar_id and voice_id, first retrieve your API key from the HeyGen dashboard. With this key, you can use HeyGen’s API to look up available options: run a GET request to https://api.heygen.com/v2/avatars to see a list of avatars along with their avatar_id, and then run a GET request to https://api.heygen.com/v2/voices to see a list of voices with their voice_id. Once you’ve identified the avatar and voice you want to use, copy their IDs and paste them into the Set HeyGen Parameters node in your n8n workflow. Set Up YouTube Credentials: Connect your YouTube account in n8n using OAuth2. Ensure proper permissions are granted for video uploads. To set up YouTube credentials in n8n, go to the Google Cloud Console, enable YouTube Data API v3, and create an OAuth Client ID (choose Web Application and add the redirect URI: https://<your-n8n-domain>/rest/oauth2-credential/callback). Copy the Client ID and Client Secret, then in n8n create new credentials for YouTube OAuth2 API. Enter the values, authenticate with your Google account to grant upload permissions, and test the connection. Once complete, the YouTube node will be ready to upload videos automatically. Activate the Workflow: Once configured, enable the workflow. Sending a POST request to the webhook with title and content will trigger the full process. Notes You can adjust video dimensions (default: 1280x720) in the HeyGen API request. Processing time may vary depending on script length. The workflow uses a wait-and-poll loop until the video is ready. Default YouTube upload category is Education (28) and region is US. These can be customized in the YouTube node.
by SpaGreen Creative
Shopify Order Fulfillment & Send Tracking Link via WhatsApp Using Rapiwa API Who is this for? This n8n workflow automatically sends WhatsApp notifications to customers when their Shopify orders are fulfilled. It extracts order details, validates customer phone numbers for WhatsApp compatibility using the Rapiwa API, sends tracking information via WhatsApp, and logs all interactions in Google Sheets with appropriate verification status. What this Workflow Does This n8n workflow listens for new order fulfillments on Shopify and automatically sends a WhatsApp message with tracking details to customers. It uses the Rapiwa API to verify if the customer's number is on WhatsApp, formats all the data, sends a message, and logs everything to Google Sheets for tracking and auditing purposes. Key Features Webhook-Triggered**: Activates on new Shopify fulfillment events Phone Number Validation**: Uses Rapiwa to check WhatsApp compatibility Tracking Message Automation**: Sends real-time tracking messages via WhatsApp Data Cleaning**: Formats phone numbers and customer data Smart Branching**: Separates verified and unverified WhatsApp users Google Sheets Logging**: Stores data with status labels for all messages Rate-Limit Protection**: Wait node helps space API calls Dual Sheet Logging**: Maintains separate records for verified and unverified numbers Requirements Tools & Services An n8n instance (self-hosted or cloud) A Shopify store with REST API access enabled A Rapiwa.com account with: Valid Bearer Token Connected and verified WhatsApp number A Google Sheet with the following columns: Like this Sample Sheet Google Sheets OAuth2 credentials** set up in n8n Shopify API credentials** added to n8n Rapiwa Bearer Token** added as httpBearerAuth credentials How to Use Step-by-step Setup Connect Shopify to n8n Use the Shopify Trigger node Set event to fulfillments/create to capture new fulfillment events Extract Webhook Data Use a Code Node to format the webhook response Capture order, customer, and tracking details Fetch Complete Order Information Add an HTTP Request Node using Shopify Admin API Include the order ID to retrieve customer phone, email, and product details Clean the Phone Number Use a Code Node to: Remove non-numeric characters Format number to international standard Combine customer first and last name Batch Process Orders Use the Split In Batches node to handle customers one-by-one Validate WhatsApp Number Use Rapiwa’s /verify-whatsapp endpoint with a Bearer Token Check if number exists on WhatsApp Conditional Branching Use an If Node: If data.exists === "true" → Verified path Else → Unverified path Send WhatsApp Message Send tracking info with a personalized message: Hi [Customer Name], Good news! Your order has just been fulfilled. Tracking Number: [Tracking Number] Track your package here: [Tracking URL] Thank you for shopping with us. -Team SpaGreen Creative Log Data to Google Sheets Log verified and unverified entries in separate sheets Include all relevant customer and tracking data Add Delay Between Messages Use the Wait Node to avoid rate limits on Rapiwa API Requirements A Shopify store with API access enabled A Google Sheet with required column like this ➤ Sample Rapiwa API account**: Connected WhatsApp number Valid Bearer Token n8n** with: Shopify API credentials Rapiwa Bearer Token Google Sheets OAuth2 credentials Google Sheet Column Reference A Google Sheet formatted like this ➤ Sample | customer_id | name | email | number | tracking_company | tracking_number | tracking_url | product_title | status | |---------------|-----------------|--------------------------------|---------------|------------------|-----------------|---------------------------------------------|----------------------------------------|------------| | 8986XXXX06 | Abdul Mannan | contact@spagreen.net | 8801322827799 | Amazon Logistics | SG-OT-02 | https://traxxxG-OT-02 | S25 Ultra 5G Smartphone | verified | | 883XXX7982 | Abdul Mannan | contact@spagreen.net | 8801322827799 | Amazon Logistics | SG-OT-N03 | https://traxxxGOT-N03| Samsung Galaxy S24 Ultra | verified | Workflow Logic Summary Shopify Webhook Trigger: On order fulfillment Extract Webhook Payload Fetch Order + Customer Details Clean and Format Phone Number Split into Single-Item Batch Check WhatsApp Validity via Rapiwa If Verified: Send WhatsApp Message Log to verified sheet If Not Verified: Skip message Log to unverified sheet Add Delay with Wait Node Repeat for Next Fulfillment Customization Ideas Modify WhatsApp message to include delivery date or store contact Send different messages for different product categories Use product_type or shipping_zone to trigger separate workflows Add admin alerts for unverified numbers Store message delivery status (e.g., success, failed) Notes & Warnings Rapiwa is an unofficial WhatsApp API — delivery reliability is not guaranteed The Google Sheet column name must include the space at the end Wait node** may need longer delay for high-volume stores Always format phone numbers in international format (e.g., 8801XXXXXXXXX) Shopify API version used is 2025-07 — update as newer versions release You must comply with WhatsApp terms and data privacy laws when messaging users Useful Links Dashboard:** https://app.rapiwa.com Official Website:** https://rapiwa.com Documentation:** https://docs.rapiwa.com Support WhatsApp Support: Chat Now Discord: Join SpaGreen Community Facebook Group: SpaGreen Support Website: https://spagreen.net Developer Portfolio: Codecanyon SpaGreen
by Jan Oberhauser
Receives data from an incoming HTTP Request (set up to use respond to webhook node) Create dummy data Convert JSON to XML which gets returned Respond to Webhook which returns the data and the content type of the data
by tanaypant
This workflow is the second of three. You can find the other workflkows here: Incident Response Workflow - Part 1 Incident Response Workflow - Part 2 Incident Response Workflow - Part 3 We have the following nodes in the workflow: Webhook node: This trigger node listens to the event when the Acknowledge button is clicked. PagerDuty node: This node changes the status of the incident report from 'Triggered' to 'Acknowledged' in PagerDuty. Mattermost node: This node publishes a message in the auxiliary channel saying that the status of the incident report has been changed to Acknowledged.
by Harshil Agrawal
This workflow generates sensor data, which is used in another workflow for managing factory incident reports. Read more about this use case and how to build both workflows with step-by-step instructions in the blog post How to automate your factory’s incident reporting. Prerequisites AMQP, an ActiveMQ connection, and credentials Nodes Interval node triggers the workflow every second. Set node set the necessary values for the items that are addeed to the queue. AMQP Sender node sends a raw message to add to the queue.