by Richard Uren
Shopify GraphQL cursor loop Many Shopify GraphQL queries have the ability to return a cursor which you can loop over, however the N8N GraphQL node does not natively have the ability to fetch pages. This simple 3 node workflow displays how to setup a cursor to fetch all items in a collection. Note : The pageSize in the "Shopify, products" node is set to 5 to illustrate how querying by cursor works. In production set this to a much larger value. Also, Update the Endpoint in GraphQL node to reflect your Shopify store.
by Oneclick AI Squad
Overview This solution ensures the secure backup and version control of your self-hosted n8n workflows by storing them in a GitLab repository. It compares current workflows with their GitLab counterparts, updates files when differences are detected, and organizes them in user-specific folders (e.g., repo -> username -> workflow.json). Backups are triggered manually or weekly, with a success notification sent via email. Operational Process Manual Backup Trigger**: Initiates the backup process on demand. Scheduled Weekly Backup**: Automatically triggers the backup every week. Fetch N8N Workflows**: Retrieves all workflows from n8n using the API (getAll:workflow). Prepare Backup Metadata**: Generates metadata, including user details for folder organization. Process Each Workflow**: Handles each workflow individually for processing. Format Workflow for GitLab**: Structures workflows with proper versioning for GitLab compatibility. Rate Limit Control**: Manages API rate limits to ensure smooth operation. Create to GitLab Repository**: Saves workflows to GitLab; creates a new file if it doesn’t exist. Check Backup Status**: Verifies if the file exists; if true, proceeds to update; if false, loops back. Update Backup Summary**: Updates the existing file in GitLab with the latest version. Log Backup Results**: Records the outcome of the backup process. Send Email**: Sends a confirmation email: "Hello, The scheduled backup of all n8n workflows has been completed successfully. All workflows have been committed to the GitLab repository without any errors. Regards, n8n Automation Bot" Implementation Guide Import this solution into your n8n instance. Configure GitLab API credentials and specify the target repository. Set up n8n API access to enable workflow retrieval. Customize the Prepare Backup Metadata node to map users to folders as needed. Test the process using the Manual Backup Trigger to confirm GitLab integration. Schedule weekly backups via the Scheduled Weekly Backup node (recommended for Fridays). Requirements GitLab API credentials with write access n8n API access for workflow retrieval A configured GitLab repository Customization Options Adjust the Prepare Backup Metadata node to include additional user fields. Modify the Rate Limit Control node to accommodate varying API limits. Tailor the Send Email node to include custom notification details.
by Baptiste Fort
Still manually copy-pasting your Tally form responses? What if every submission went straight into Airtable — and the user got an automatic email right after? That’s exactly what this workflow does. No code, no headache — just a simple and fast automation: Tally → Airtable → Gmail. STEP 1 — Capture Tally Form Responses Goal Trigger the workflow automatically every time someone submits your Tally form. What we're setting up A webhook that catches form responses and kicks off the rest of the flow. Steps to follow Add a Webhook node Parameter : Value Method : POST Path : formulaire-tally Authentication : None Respond : Immediately Save the workflow → This will generate a URL like: https://your-workspace.n8n.cloud/webhook-test/formulaire-tally 💡 Use the Test URL first (found under Parameters > Test URL) Head over to Tally Go to your form → Form Settings > Integrations > Webhooks Paste the Test URL into the Webhook field Enable the webhook ✅ Submit a test entry → Tally won’t send anything until a real submission is made. This step is required for n8n to capture the structure. Expected output n8n receives a JSON object containing: General info (IDs, timestamps, etc.) A fields[] array with all the form inputs (name, email, etc.) Each field is nicely structured with a label, key, type, and most importantly, a value. Perfect foundation for the next step: data cleanup. STEP 2 — Clean and Structure the Form Data (Set node) Goal Take the raw data sent by Tally and turn it into clean, readable JSON that's easy to use in the rest of the workflow. Tally sends the responses inside a big array called field. Can you grab a field directly with something like {{$json"fields"["value"]}}? Yes. But a good workflow is like a sock drawer — when everything’s folded and labeled, life’s just easier. So we’re going to clean it up using a Set node. Steps to follow Add a Set node right after the Webhook. Enable the “Keep only set” option. Define the following fields in the Set node: Field name: Expression full_name: {{$json"fields"["value"]}} company_name: {{$json"fields"["value"]}} job_title: {{$json"fields"["value"]}} email: {{$json"fields"["value"]}} phone_number: {{$json"fields"["value"] ?? ""}} submission_date: {{$now.toISOString()}} ⚠️ The order of fields[] depends on your Tally form. If you change the question order, make sure to update these indexes accordingly. Expected output You’ll get a clean, structured JSON like this: Now your data is clear, labeled, and ready for the rest of your workflow. STEP 3 — Save Data in Airtable Goal Every time someone submits your Tally form, their info is automatically added to an Airtable base. No more copy-pasting — everything lands right where it should. Steps to follow Create your Airtable base Start by creating a base named Leads (or whatever you prefer), with a table called Form Submissions. Add the following columns in this exact order so everything maps correctly later: Generate an Airtable token So n8n can send data into your base: Go to 👉 [ https://airtable.com/create/tokens](https://airtable.com/create/tokens ) Click Create token Give it a name (e.g. Tally Automation) Check the following permissions: data.records:read data.records:write schema.bases:read Under Base access, either choose your base manually or select “All current and future bases” Click Create token and copy the generated key Add configure the Airtable node in n8n Node: Airtable Operation: Create Authentication: Personal Access Token Paste your token n8n will suggest your base and table (or you can manually grab the IDs from the URL: https://airtable.com/appXXXXXXXX/tblYYYYYYYY/...) Map your fields Inside the Airtable node, add the following field mappings: Every new Tally form submission automatically creates a new row in your Airtable base. STEP 4 — Send an Automatic Confirmation Email Goal Send a professional email as soon as a form is completed Steps to follow Add a Wait node You don’t want the email to go out instantly — it feels cold and robotic. → Add a Wait node right after Airtable. Mode: Wait for a period of time Delay: 5 to 10 minutes Unit: Minutes Add a Gmail > Send Email node Authentication: OAuth2 Connect a Gmail account (business or test) ⚠️ No API keys here — Gmail requires OAuth. Configure the Send Email node Field Value Credential to connect with Gmail account via OAuth2 Resource : Message Operation : Send To : {{ $json.fields["Email"] }} Subject : Thanks for reaching out! Email Type : HTML Message: (but do the mapping correctly using the Input so that lead receives its name correctly ) End of the Workflow And that’s it — your automation is live! Your lead fills out the Tally form → the info goes to Airtable → they get a clean, professional email without you doing a thing.
by Sirisak Chantanate
Workflow overview: This workflow is designed for dynamic and intelligent conversational capabilities. It incorporates Meta's llama3.3-versatile model for personal assistant. There are no issues when sending simple text to the LINE reply API, so in this workflow you can see how to handle large and complex text sending from AI chat without any errors. Workflow description: User uses Line Messaging API to send message to the chatbot, create line business ID from here: Line Business Set the message from Step 1 to the proper value Send the message to process at Groq using API key that we have created from Groq Send the reply message from AI Agent back to Line Messaging API account Key Features: Utilizes Meta's llama 3.3 model for robust conversational capabilities Handles large and complex text interactions with ease, ensuring reliable connections to LINE Messaging API Demonstrates effective strategies for processing and responding to large and complex text inputs from AI chat To use this template, you need to be on n8n version 1.79.0 or later.
by Sarfaraz Muhammad Sajib
Daily Currency Update Workflow (n8n) Trigger: ScheduleTrigger node (configurable interval) Set Variables: API Key, Preferred Currencies (PKR, GBP, EUR, USD, BDT, INR) HTTP Request: Fetch latest exchange rates from CurrencyFreaks API Set Recipient Email Set Email Subject Send Email: HTML formatted via Gmail OAuth2 with dynamic rate data (date, base currency, rates) Flow: ScheduleTrigger → Set API Key & Currencies → HTTP Request → Set Recipient → Set Subject → Gmail Send
by Giovanni Ruggieri
Send Webflow form data to Google Sheets 🚀 How It Works This workflow connects your Webflow form submissions to Google Sheets with style and efficiency. Here's the magic in action: Form Submitted 🎉 – A Webflow form submission triggers the flow. Fields Prepared 🛠️ – Data gets organized, and a submission date is added. Data Logged 📋 – Your data finds a cozy new home in Google Sheets. Set-Up Steps ⏱️ Estimated Time: 5-10 minutes Connect Webflow 🌐 – Hook up your Webflow account and disable legacy APIs (instructions inside the workflow). Set Up Google Sheets 🧾 – Choose your spreadsheet and authenticate. You're Ready! 💫 – Let the workflow take it from here. Why You'll Love It ❤️ No More Manual Copy-Paste:** Save time and keep data clean. Smart Field Mapping:** Automatically creates columns and fits your data. Helpful Notes Along the Way:** Friendly tips guide you through setup like a pro. Enjoy the smooth ride from Webflow to Google Sheets! 🚀
by n8n Team
Who this template is for This template is for developers, content creators, or application builders who want to integrate an AI-powered text-to-image generation service into their applications or systems via an API endpoint. Use case Creating a secure API endpoint that converts text prompts into AI-generated images, with built-in content moderation to prevent inappropriate content generation. This can be used for creative applications, content creation tools, prototyping interfaces, or any system that needs on-demand image generation. How this workflow works Receives text prompt through a webhook endpoint Filters the prompt for inappropriate content using AI moderation Submits valid prompts to the Fal.ai Flux image generation service Polls for completion status and retrieves the generated image when ready Returns the image results in a structured JSON format to the client Set up steps Create a Fal.ai account and obtain API credentials Configure the HTTP Header Auth credentials with your Fal.ai API key Set up an OpenAI API key for the content moderation component Deploy the workflow and note the webhook URL for your API endpoint Test the endpoint by sending a POST request with a JSON body containing a "prompt" field
by Kev
Important: This workflow uses the Autype and SerpAPI Official community nodes and requires a self-hosted n8n instance. Submit a simple form with your product name, industry, and description. The workflow automatically researches your market via Google Trends and Google Search (SerpAPI), conducts deep analysis with Perplexity AI (via OpenRouter), writes a structured report with Anthropic Claude (via OpenRouter), and renders a professionally styled PDF using Autype Extended Markdown. No manual competitor input required -- everything is discovered automatically. Who is this for? Product managers, startup founders, strategists, and consultants who need quick market research reports for investor decks, board meetings, competitive positioning, or strategic planning. Instead of spending hours compiling data from multiple sources, this workflow automates the entire research-to-PDF pipeline from a single form submission. Concrete example: A SaaS startup preparing for a Series A fundraise needs a market research report on the document automation space. They fill in their product name and industry, describe their product, and submit the form. In under two minutes they get a polished PDF with current market trends, auto-discovered competitor comparisons, SWOT analysis, and strategic recommendations -- ready to attach to their pitch deck. What this workflow does When a user submits the form, the workflow sends parallel requests to Google Trends (12-month interest data) and Google Search (competitor discovery) via SerpAPI, and downloads Autype's extended markdown syntax reference. All data is merged and passed to an AI Research Agent powered by Perplexity Sonar Pro (via OpenRouter) for deep market and competitor analysis with real-time web citations. The research output is then handed to an AI Report Writer (Anthropic Claude via OpenRouter) that writes a structured market research report in Autype Extended Markdown. The markdown is rendered to a styled PDF via Autype's Render from Markdown operation, and the final report is saved to Google Drive. How it works Market Research Form -- An n8n Form Trigger collects product name, industry, product description, and report language. Google Trends -- SerpAPI Official node fetches 12 months of search interest data for the industry. Search Competitors -- SerpAPI Google Search automatically discovers competitors and market leaders. Download Markdown Syntax -- Fetches Autype's extended markdown syntax reference so the report writer knows all formatting options. Prepare Research Context -- A Code node merges trends data, competitor search results, and syntax reference into a single context. AI Research Agent -- An AI Agent with OpenRouter (Perplexity Sonar Pro) conducts deep market research: market overview, competitor profiles, trends, and product positioning. Prepare Report Input -- A Code node combines the research output with the markdown syntax reference and form data. AI Report Writer -- An AI Agent (Anthropic Claude via OpenRouter) writes the final report in Autype Extended Markdown. The prompt includes a title page template. Prepare Render Payload -- A Code node cleans the AI output and sets title/filename. Render Report PDF -- Autype renders the extended markdown to a professionally styled PDF with Open Sans font, heading hierarchy (28/22/18pt), automatic page breaks before h1/h2, chart color palette, header with company name and logo, footer with page numbers, and generous spacing. Save Report to Drive -- The PDF is uploaded to Google Drive. Setup Install community nodes via Settings > Community Nodes: n8n-nodes-autype and n8n-nodes-serpapi. Create an Autype API credential with your API key from app.autype.com. See API Keys in Settings. Create a SerpAPI credential with your API key from serpapi.com (free tier: 250 searches/month). Create two OpenRouter API credentials with your key(s) from openrouter.ai. One is used for Perplexity Sonar Pro (research), the other for Anthropic Claude (report writing). You can use the same API key for both. Create a Google Drive OAuth2 credential and connect your Google account. Import this workflow and assign your credentials to each node. Set YOUR_FOLDER_ID in the "Save Report to Drive" node to your target Google Drive folder. Activate the workflow and open the form URL to generate a report. Note: You need a self-hosted n8n instance to use the Community Nodes. Requirements Self-hosted n8n instance (community nodes are not available on n8n Cloud) Autype account with API key (free tier available) n8n-nodes-autype community node installed n8n-nodes-serpapi community node installed (verified) OpenRouter API key (for Perplexity Sonar Pro and Anthropic Claude models) SerpAPI account (free tier: 100 searches/month) Google Drive account with OAuth2 credentials (optional, can replace with other output) How to customize Add more data sources:** Insert additional HTTP Request or SerpAPI nodes before the merge to pull from Google News, Google Scholar, or other engines. Use a different research model:** Swap the OpenRouter Perplexity model for any other OpenRouter model (e.g. Gemini) or replace the sub-node entirely. Use a different report writer:** Swap the Anthropic Claude model for OpenAI, Google Gemini, or any other OpenRouter-compatible model. Customize header/footer:** Edit the defaults JSON in the Render Report PDF node to change the company name, logo URL, or footer text. Customize title page:** Edit the title page template in the AI Report Writer's user prompt to change the logo, layout, or metadata fields. Change report structure:** Edit the system prompt in the AI Report Writer node to add or remove sections, change the tone, or adjust the word count. Customize PDF styling:** Edit the defaults JSON in the Render Report PDF node to change fonts, colors, spacing, and heading styles. See the Autype defaults schema for all options. Generate DOCX instead of PDF:** Change the output format in the Render Report PDF node from PDF to DOCX. Schedule automatic reports:** Add a Schedule Trigger alongside the Form Trigger for recurring market monitoring. Change output destination:** Replace the Google Drive node with Email (SMTP), S3, Slack, or any other n8n output node. Add more languages:** Edit the dropdown options in the Market Research Form node.
by bangank36
This workflow retrieves all users from n8n, compares them against entries in a Google Sheets spreadsheet, and automatically creates new users when needed. Once new users are created, invitation emails are sent automatically. You can trigger the workflow manually or set it to run on a schedule to ensure continuous synchronization. Spreadsheet Template This workflow is designed to work with a Google Sheets structure inspired by Squarespace's newsletter block connection. You can modify the node settings to adapt to a different column format. 👉 Clone the sample sheet here Suggested columns: Submitted On Email Address Name Requirements Credentials To use this workflow, you need: n8n API Key – to update users from n8n. Google Sheets API credentials – Required to get data from a spreadsheet. Configure Your n8n Instance To make this workflow work with your n8n instance, update the API endpoint: 🔧 Edit Global node 👇 Change n8n_url to match your instance URL: Authentication Guide Explore More Templates 👉 Check out my other n8n templates
by Miquel Colomer
Do you want to check the SSL certificate expiration dates of your customers or servers? This workflow gets information of an SSL certificate using the uProc Get Certificate by domain tool. You can use this workflow to query SSL certificates in bulk and send alarms when any certificate has expired. You need to add your credentials (Email and API Key - real -) located at Integration section to n8n. You can replace "Create Domain Item" with any integration containing a domain, like Google Sheets, MySQL, or Zabbix server. Every "uProc" node returns the next fields per every analyzed SSL certificate: issuer: Contains the issuer. provider: Contains the provider. valid_from: Contains the start date. valid_to: Contains the end date. serial_number: Contains the serial number. type: Contains if supports one or multiple domains. protocol: Contains the protocol. valid: Contains its validity. domains: Contains all domains and subdomains supported. An "IF" node detects if the certificate is valid or not. Finally, the workflow sends an alarm to a Telegram channel to know if the certificate has expired.
by Tom
This workflow shows a no code approach to creating Salesforce accounts and contacts based on data coming from Excel 365 (the online version of Microsoft Excel). For a version working with regular Excel files check out this workflow instead. To run the workflow: Make sure you have both Excel 365 and Salesforce authenticated with n8n. Have a Microsoft Excel workbook with contacts and their account names ready: Select the workbook and sheet in the Microsoft Excel node of the workflow, then configure the range to read data from: Hit the Execute Workflow button at the bottom of the n8n canvas: Here is how it works: The workflow first searches for existing Salesforce accounts by name. It then branches out depending on whether the account already exists in Salesforce or not. If an account does not exist yet, it will be created. The data is then normalised before both branches converge again. Finally the contacts are created or updated as needed in Salesforce.
by Harshil Agrawal
This workflow updates your Twitter profile banner when you have a new follower. To use this workflow: Configure Header Auth in the Fetch New Followers to connect to your Twitter account. Update the URL of the template image in the Fetch BG node. Create and configure your Twitter OAuth 1.0 credentials in the last HTTP Request node. You can configure the size, and position of the avatar images in the Edit Image nodes. Check out this video to learn how to build it from scratch: How to automatically update your Twitter Profile Banner