by Dave Long
This workflow contains community nodes that are only compatible with the self-hosted version of n8n. Using the serial number for assets, this workflow will create a ticket with the subject "Found duplicate Serial Numbers" with a list of all of the duplicate assets for a technician to review and merge. Duplicate assets causes incorrect billing (if customers are billed based on asset counts), and additional overhead when reviewing the history of assets when that history is spread across multiple instances. Note: Due to limitations of the Syncro API, automatically merging duplicate assets is not possible. How it works: Get a list of all assets in Syncro and summarize the list based on the Customer ID, Asset Type, and Asset Serial Create a new ticket listing all of the duplicate assets Set up steps: Install the Syncro RMM community node Connect a Syncro RMM account* Open the "Create a ticket" node and update the customer ID *See Syncro RMM Community Node documentation for details about how to get a Syncro API key and what permissions the Syncro API key needs
by FORK SOFTWARE TECHNOLOGIES INC.
Overview This n8n workflow is specifically designed to monitor the USDT ERC-20 balance within a specific wallet. It uses Etherscan's public blockchain database, which does not require API authentication, to periodically check and process transaction data. This workflow is ideal for users who need an automated solution to track ERC-20 wallet transactions. Features Automatic Monitoring**: Executes every 5 minutes to capture new transactions. Customizable Filters**: Customize tracking based on parameters like transaction duration and wallet addresses. Data Aggregation**: Compiles transaction data into a single, structured list. Formatted Outputs**: Presents processed data in an organized format. Telegram Tracking**: Tracks wallet balances via Telegram notifications using the bot. Requirements n8n Setup**: Requires a self-hosted or cloud-based n8n instance. Basic Understanding**: Basic knowledge of n8n workflows and nodes. Installation and Configuration Import Workflow: Load the provided JSON workflow into your n8n instance. Configure the User Data Node: Enter your ERC-20 Wallet Address in the 'Your Wallet Address' field. Enter your Etherscan API Key in the “Your Etherscan API Key” field. Enter your USDT ERC-20 Contract Address in the "Your ERC-20 USDT Contract Address" field (0xdAC17F958D2ee523a2206206994597C13D831ec7). You can also monitor another token by entering a different contract address. Configure the Telegram Node: Go to Telegram and search for "BotFather". Select /newbot from the BotFather menu to create your bot. Get the API key BotFather provides. Go to Telegram and search for "Get My ChatID". Start the conversation and get your ChatID. Use this information to configure the Telegram Node. Schedule Trigger Node: By default, the workflow is triggered every 5 minutes. Adjust this according to your needs. Test the Workflow: Execute the workflow manually to ensure everything is working as expected. How It Works Schedule Trigger: Starts the workflow at predetermined intervals. Edit Fields: Sets the wallet address, Etherscan API key, and USDT ERC-20 token address. Edit Telegram Settings: Create a bot via BotFather. Configure the API key and Telegram Chat ID. Etherscan Data Import: Collects transaction data from the ERC-20 wallet using Etherscan's public database. Final Results: Organizes and formats the transaction data for review. Telegram Bot Message Sending: If there is a balance change, it sends a formatted message about the balance change. If there is no balance change, it sends a message that your balance has not changed. You can configure it to avoid sending a message when there is no change.
by Ranjan Dailata
Who is this for? The Capture Website Screenshots with Bright Data Web Unlocker and Save to Disk workflow is built for automation professionals and developers who need reliable, high-quality screenshots from any website even those protected by anti-bot technologies. It is ideal for: Compliance Teams - Capturing visual records of web content for legal or audit purposes. Product Managers - Tracking visual changes across competitor landing pages. Digital Marketers - Archiving campaign pages and offer variations. Developers and QA Teams - Validating UI deployments or rendering issues. Growth Hackers and Scrapers - Who need to bypass bot protection and capture visual snapshots of restricted content. What problem is this workflow solving? Websites today are highly protected with anti-bot tools like Cloudflare, bot detection scripts, and geo-restrictions. These protections often break traditional screenshot tools or prevent headless browsers from accessing content. This workflow solves the following problems: Bypasses anti-bot defenses using Bright Data Web Unlocker. Automatically captures screenshots without manual browser steps. Stores images locally for easy access or reporting. Operates headlessly and at scale, perfect for automations or scheduled jobs. What this workflow does Sets the target URL, file name, and Bright Data zone name using the Set URL, Filename and Bright Data Zone node. Sends an HTTP POST request to Bright Data Web Unlocker API to capture a screenshot. Saves the screenshot image (.png) to a specified disk location using the Write a file to disk node. Pre-conditions You need to have a Bright Data account and do the necessary setup as mentioned in the "Setup" section below. Setup Sign up at Bright Data. Navigate to Proxies & Scraping and create a new Web Unlocker zone by selecting Web Unlocker API under Scraping Solutions. In n8n, configure the Header Auth account under Credentials (Generic Auth Type: Header Authentication). The Value field should be set with the Bearer XXXXXXXXXXXXXX. The XXXXXXXXXXXXXX should be replaced by the Web Unlocker Token. Ensure the URL, file name, and Bright Data zone name are correctly set in the Set URL, Filename and Bright Data Zone node. Set the desired local path in the Write a file to disk node to save the screenshot. How to customize this workflow to your needs Change the target URL: Modify the value in the **Set URL, Filename and Bright Data Zone node to capture different websites. Set dynamic filenames**: Use expressions in n8n to generate filenames based on date/time or URL. Specify custom save paths: Adjust the path in the **Write a file to disk node to store screenshots in your preferred directory. Enhance with notifications**: Add additional nodes to send alerts or log activity after each screenshot is taken. Integrate with external systems**: Send screenshots to cloud storage (e.g: AWS S3, Google Drive) or link into monitoring/reporting tools.
by n8n Team
This workflow automatically adds a new lead to Pipedrive once someone forks your GitHub repository. Prerequisites Pipedrive account and Pipedrive credentials GitHub account and GitHub credentials How it works GitHub Trigger node starts the workflow once someone forks your GitHub repository. HTTP Request node gets user's data from GitHub and sends it further. Pipedrive node searches forkee's data in Pipedrive by email. IF node decides whether to create a new person in Pipedrive in case contact doesn't exist yet or update an existing contact in Pipedrive. In case there's no contact existing yet, the Pipedrive node creates a lead and adds a note with GitHub URL.
by Agent Studio
Automatically store Retell transcripts in Google Sheets/Airtable/Notion from webhook Overview This workflow stores the results of a Retell voice call (transcript, analysis, etc.) once it has ended and been analyzed. It listens for call_analyzed webhook events from Retell and stores the data in Airtable, Google Sheets, and Notion (choose based on your stack). Useful for anyone building Retell agents who want to keep a detailed history of analyzed calls in structured tools. Who is it for For builders of Retell's Voice Agents who want to store call history and essential analytic data. Prerequisites Have a Retell AI Account Create a Retell agent Associate a phone number with your Retell agent Set up one of the following: An Airtable base and table (example: "Transcripts") A Google Sheet with a “Transcripts” tab A Notion database with columns to match the transcript fields Templates: Airtable Google Sheets Notion How it works Receives a webhook POST request from Retell when a call has been analyzed. Filters out any event that is not call_analyzed (Retell sends webhooks for call_started, call_ended and call_analyzed) Extracts useful fields like: Call ID, start/end time, duration, total cost Transcript, summary, sentiment Stores this data in your preferred tool: Airtable Google Sheets Notion How to use it Copy the webhook URL (e.g., https://your-instance.app.n8n.cloud/webhook/poc-retell-analysis) and paste it in your Retell agent under "Webhook settings" then "Agent Level Webhook URL". Make sure your Airtable, Google Sheet, or Notion databases are correctly configured to receive the fields. After each call, once Retell finishes the analysis, this workflow will automatically log the results. Extension If you use any "Post-Call Analysis" fields, you can add columns to your Airtable, Google Sheet, or Notion database. Then fetch the data from the call.call_analysis.custom_analysis_data object. Additional Notes Phone numbers are extracted depending on the call direction (from_number or to_number). Cost is converted from cents to dollars before saving. Dates are converted from timestamps to local ISO strings. You can remove any of the outputs (Airtable, Google Sheets, Notion) if you're only using one. 👉 Reach out to us if you're interested in analysing your Retell Agent conversations.
by Batu Öztürk
🚀 Transform LinkedIn Post Reactions into Content Ideas with Airtable 📝 Description This workflow helps you to turn your LinkedIn activity into a powerful content ideation engine. It captures your most recent post reactions on LinkedIn automatically, filters them based on recency, and structures the content into Airtable—ready for brainstorming, inspiration, or publication planning. ⚙️ What It Does Fetches* the latest liked posts from LinkedIn via a public API (rapidapi.com/Real-Time Linkedin Scraper*). Filters** posts to include only those marked as your decided reaction and posted in the last 7 days. Extracts** the post text, author, links and more. Formats** the data into a database-friendly structure. Saves** the output in Airtable for easy tracking, tagging, or team collaboration. 💡 Use Cases Build a content idea vault from posts you admire. Capture inspiration from thought leaders. Identify trends based on what you find insightful. Supercharge your personal brand or newsletter by turning likes into learning. 🛠 Prerequisites Before using this template, make sure you have: ✅ A RapidAPI account and access to the linkedin-api8 endpoint. ✅ Your RapidAPI key and the target LinkedIn username. ✅ An Airtable account with a base/table set up. 🧰 Setup Instructions Clone this template into your n8n instance. Open the Fetch LinkedIn Likes node and enter: Your LinkedIn username. Your RapidAPI key in the headers. Open the Save to Airtable node and: Connect your Airtable account. Link the correct base (Content Hub) and table (Ideas). Set your desired schedule in the Trigger node. Activate the workflow and you're done! 📋 Airtable Setup Create a base called Content Hub and a table named Ideas with the following columns: | Column Name | Type | Required | Notes | |-------------|------------|----------|----------------------------| | Title | Single line text | ✅ | Generated from author info | | Description | Long text | ✅ | Contains post content | | Source | URL | ✅ | Link to the original post | | Type | Single select | ✅ | Value: Linkedin
by Juan Carlos Cavero Gracia
Image Carousel Publisher for Instagram and TikTok Description This automation template is designed for content creators, digital marketers, and social media managers looking to streamline their image carousel posting workflow. It automates the process of uploading multiple images as carousels to Instagram and slideshows to TikTok, making your visual content management more efficient across platforms. Who Is This For? Content Creators & Influencers:** Simplify posting image collections and focus more on creating visual content. Digital Marketers:** Ensure consistent carousel posts across multiple platforms with minimal manual effort. Social Media Managers:** Automate repetitive image uploading tasks and maintain visual engagement. What Problem Does This Workflow Solve? Manually uploading image carousels to different platforms can be time-consuming and inconsistent. This workflow addresses these challenges by: Automating Multi-Image Uploads:** Processes multiple images and prepares them for platform-specific formats. Supporting Cross-Platform Publishing:** Simultaneously posts your image carousels to Instagram and TikTok slideshows. Maintaining Visual Consistency:** Ensures your visual stories remain consistent across platforms. Streamlining Batch Processing:** Handles the technical complexity of multi-image uploads with a single workflow trigger. How It Works Image Selection: Trigger the workflow with your selected images. Image Processing: The workflow automatically processes and prepares your images for both platforms. Content Distribution: Uploads the images as a carousel to Instagram and as a slideshow to TikTok. Platform Optimization: Formats the uploads according to each platform's requirements. Setup API Token Generation: Visit upload-post.com and create an account Navigate to the API settings section Generate a new API token Copy the token for use in the next steps Platform Configuration: In the "Upload to Instagram" node: Paste your API token in the designated field Configure your Instagram account settings Set your preferred posting parameters In the "Upload to TikTok" node: Add the same API token Set up your TikTok account credentials Adjust posting preferences Content Parameters Setup: Rename the "HTTP Request" node to "Social Media Upload Request" Configure your account information: Username Account ID Content title format Posting schedule (if applicable) Image Source Configuration: Set up your image source directory Configure image format requirements Test with sample images before going live About upload-post.com Upload-post.com is a third-party service that acts as a bridge between your workflow and social media platforms. It provides: Secure API endpoints for multi-platform posting Image format validation and optimization Queue management for scheduled posts Analytics and posting status tracking Cross-platform compatibility handling Requirements Accounts:** upload-post.com account with access to Instagram and TikTok publishing. API Keys:** Upload-post.com API token. Images:** Properly formatted images that meet Instagram and TikTok specifications: Instagram: Up to 10 images per carousel, 1:1 to 4:5 aspect ratio TikTok: Compatible with slideshow format, 9:16 aspect ratio recommended Use this template to enhance your visual storytelling, maintain consistency across social platforms, and engage your audience with compelling image carousels and slideshows.
by Lucas Correia
What Does This Flow Do? This workflow demonstrates how to dynamically generate a line chart using the QuickChart node based on data provided in a JSON object and then upload the resulting chart image to Google Drive. Use Cases You can use it in presentations or requesting for chart generation from a software with HTTP requests. Automated report generation (e.g., daily sales charts). Visualizing data fetched from APIs or databases. Simple monitoring dashboards. Adding charts to internal tools or notifications. How it Works Trigger: The workflow starts manually when you click 'Test workflow'. Set Sample Data: A Set node (Edit Fields: Set JSON data to test) defines a sample JSON object named jsonData. This object contains: reportTitle: A title (not used in the chart generation in this example, but useful for context). labels: An array of strings representing the labels for the chart's X-axis (e.g., ["Q1", "Q2", "Q3", "Q4"]). salesData: An array of numbers representing the data points for the chart's Y-axis (e.g., [1250, 1800, 1550, 2100]). Generate Chart: The QuickChart node is configured to: Create a line chart. Dynamically read labels from the jsonData.labels array (Labels Mode: From Array). Use the jsonData.salesData array as the input data (Note: This configuration places data in the top-level 'Data' field. For more complex charts with multiple datasets or specific dataset options, configure datasets under 'Dataset Options' instead). The node outputs the generated chart image as binary data in a field named data. Upload to Google Drive: The Google Drive node (Google Drive: Upload File): Takes the binary data (data) from the QuickChart node. Uploads the image to your specified Google Drive folder. Dynamically names the file based on its extension (e.g., chart.png). Setup Steps Import: Import this template into your n8n instance. Configure Google Drive Credentials: Select the Google Drive: Upload File node. You MUST configure your own Google Drive credentials. Click on the 'Credentials' dropdown and either select existing credentials or create new ones by following the authentication prompts. (Optional) Customize Google Drive Folder: In the Google Drive: Upload File node, you can change the Drive ID and Folder ID to specify exactly where the chart should be uploaded. Activate: Activate the workflow if you want it to run automatically based on a different trigger. How to Use & Customize Change Input Data:** Modify the labels and salesData arrays within the Edit Fields: Set JSON data to test node to use your own data. Ensure the number of labels matches the number of data points. Use Real Data Sources:** Replace the Edit Fields: Set JSON data to test node with nodes that fetch data from real sources like: HTTP Request (APIs) Postgres / MongoDB nodes (Databases) Google Sheets node Ensure the output data from your source node is formatted similarly (providing labels and salesData arrays). You might need another Set node to structure the data correctly before the QuickChart node. Change Chart Type:** In the QuickChart node, modify the Chart Type parameter (e.g., change from line to bar, pie, doughnut, etc.). Customize Chart Appearance:** Explore the Chart Options parameter within the QuickChart node to add titles, change colors, modify axes, etc., using QuickChart's standard JSON configuration options. Use Datasets (Recommended for Complex Charts):** For multiple lines/bars or more control, configure datasets explicitly in the QuickChart node: Remove the expression from the top-level Data field. Go to Dataset Options -> Add option -> Add dataset. Set the Data field within the dataset using an expression like {{ $json.jsonData.salesData }}. You can add multiple datasets this way. Change Output Destination:** Replace the Google Drive: Upload File node with other nodes to handle the chart image differently: Write Binary File: Save the chart to the local filesystem where n8n is running. Slack / Discord / Telegram: Send the chart to messaging platforms. Move Binary Data: Convert the image to Base64 to embed in HTML or return via webhook response. Nodes Used Manual Trigger Set QuickChart Google Drive Tags: (Suggestions for tags field) QuickChart, Chart, Visualization, Line Chart, Google Drive, Reporting, Automation
by Hueston
Who is this for? Sales professionals looking to build lead lists from target company domains Business development teams conducting outreach campaigns Marketers building contact databases for account-based marketing Recruiters searching for potential candidates at specific companies Anyone needing to transform a list of company domains into actionable contact information What problem is this workflow solving? Finding business email addresses for outreach is a time-consuming process. The Apollo API doesn't provide a direct way to extract email contacts from domains in a single call. This workflow bridges that gap by: Automating the two-step process required by Apollo's API Processing multiple domains in batches without manual intervention Extracting, enriching, and storing contact information in a structured format Eliminating hours of manual data entry and API interaction What this workflow does This workflow creates an automated pipeline between Google Sheets and Apollo's API to: Pull a list of target domains from a Google Sheet Submit each domain to Apollo's search API to find associated people Loop through each person found and enrich their profile data Extract key information: name, title, email address, and LinkedIn URL Write the enriched contact information back to a results sheet Process the next domain automatically until all are complete Setup Prerequisites: An n8n instance (cloud or self-hosted) Apollo.io account with API access Google account with access to Google Sheets Google Sheets Setup: Create a new Google Sheet with two tabs: Tab 1: "Target Domains" with a column named "Domain To Enrich" Tab 2: "Results" with columns: Company, First Name, Last Name, Title, Email, LinkedIn n8n Setup: Import the workflow JSON into your n8n instance Set up Google Sheets credentials in n8n Update the Google Sheets document ID in both Google Sheets nodes Add your Apollo API key to both HTTP Request nodes Review and adjust API rate limits if needed Testing: Add a few test domains to your "Target Domains" sheet Run the workflow manually to verify it's working correctly Check the "Results" sheet to confirm data is being properly populated How to customize this workflow to your needs Adding More Contact Fields: Modify the "Clean Up" node to extract additional fields from the Apollo API response Add corresponding columns to your "Results" sheet Update the "Results To Results Sheet" node mapping to include the new fields Filtering Results: Add a Filter node after "Clean Up" to include only contacts with specific roles Create conditions based on title, seniority, or other fields returned by Apollo Automating Workflow Execution: Replace the manual trigger with a Schedule Trigger to run daily/weekly Add a Filter node to process only domains with "Not Processed" status Update the status field in Google Sheets after processing Additional Notes This workflow respects Apollo's API rate limits by processing one contact at a time The Apollo API may not return contact information for all domains or all employees Consider legal and privacy implications when collecting and storing contact information Made with ❤️ by Hueston
by n8n Team
This workflow creates an Asana task when a new ticket is created in Zendesk. Subsequent comments on the ticket in Zendesk are added as comments to the task in Asana. Prerequisites Zendesk account and Zendesk credentials. Asana account and Asana credentials. Asana workspace to create tasks in. How it works The workflow listens for new tickets in Zendesk. When a new ticket is created, the workflow creates a new task in Asana. The Asana GID is then saved in one of the ticket's fields (in setup we call this "Asana GID"). The next time a comment is added to the ticket, the workflow retrieves the Asana GID from the ticket's field and adds the comment to the task in Asana. Setup This workflow requires that you set up a webhook in Zendesk. To do so, follow the steps below: In the workflow, open the On new Zendesk ticket node and copy the webhook URL. In Zendesk, navigate to Admin Center > Apps and integrations > Webhooks > Actions > Create Webhook. Add all the required details which can be retrieved from the On new Zendesk ticket node. The webhook URL gets added to the “Endpoint URL” field, and the “Request method” should match what is shown in n8n. Save the webhook. In Zendesk, navigate to Admin Center > Objects and rules > Business rules > Triggers > Add trigger. Give trigger a name such as “New tickets”. Under “Conditions” in “Meet ALL of the following conditions”, add “Status is New”. Under “Actions”, select “Notify active webhook” and select the webhook you created previously. In the JSON body, add the following: { "id": "{{ticket.id}}", "comment": "{{ticket.latest_comment_html}}" } Save the Zendesk trigger. You will also need to set up a field in Zendesk to store the Asana GID. To do so, follow the steps below: In Zendesk, navigate to Admin Center > Objects and rules > Tickets > Fields > Add field. Use the number field option and give the field a name such as “Asana GID”. Save the field. In n8n, open the Update ticket node and select the field you created in Zendesk.
by Aurélien P.
📈 Daily Crypto Market Summary Bot (Binance to Telegram) This workflow fetches 24h price change data from Binance for selected crypto pairs (BTC/USDC, ETH/USDC, SOL/USDC) every hour using a cron schedule. It performs in-depth analysis—including volatility, volume, bid-ask spread, momentum, and market comparison—then formats a detailed market summary. The final report is sent to a Telegram chat using HTML formatting, highlighting top gainers, losers, and key metrics in a clean, readable layout. 🔑 Key Features ⏱ Runs every hour (cron: 5 * * * *) 🔍 Filters and analyzes major coins: BTC, ETH, SOL 📊 Calculates market metrics: Volatility Bid-ask spread Momentum Estimated market cap Market average comparison 📈 Highlights gainers, losers, and top coins by volume ✂️ Splits messages to fit Telegram’s 4096 character limit 💬 Sends output in rich HTML format to a Telegram group or chat 🎯 Use Cases ✅ Crypto traders wanting hourly performance insights ✅ Telegram groups needing automated market updates ✅ Analysts monitoring key coin metrics in real-time ✅ Bot developers creating crypto dashboards or alerts 🛠 Technical Details Data Source:** Binance 24hr ticker API (/api/v3/ticker/24hr) Coins Monitored:** BTCUSDC, ETHUSDC, SOLUSDC (can be expanded) Metrics Calculated:** Price change percentage Volatility (high vs low price) Bid-ask spread % Momentum (vs weighted average) Estimated market cap Number of trades Market average movement Message Format:** HTML with emojis, bold styling, and section headings Auto-split messages when exceeding Telegram's 4096-char limit Error Handling:** Retry on HTTP failure (up to 5 times with 5s delay) Message length checked and split for Telegram compatibility ⚙️ Setup Requirements Telegram Bot Token — Create a bot via @BotFather on Telegram Chat ID — Use a personal ID or group chat ID (add the bot to the group) n8n Instance — Either cloud or self-hosted (Optional) Modify relevantSymbols in the Function node to track different coins 🧠 Notes This workflow is highly customizable—feel free to modify the analytics, tracked pairs, or formatting. Great base for alerting systems or crypto dashboards. 📷 Example Output (Telegram) 📊 Crypto Market Summary — 2025-04-20 14:05:05 UTC 🌐 Market Overview (BTC, ETH, SOL) Average Change: -1.54% 24h Volume: $850,358,765.46 Most Volatile: SOLUSDC (4.53%) Most Liquid: BTCUSDC (0.0000% spread) 💹 Top by Volume ETHUSDC: $403,860,356.75 | -1.640% SOLUSDC: $279,241,338.60 | -1.706% BTCUSDC: $167,257,070.12 | -1.261% 📉 Losers SOLUSDC 🔻 Change: -1.71% (24h) 💰 Current: $137.10 📊 Range: $135.82 - $141.97 📈 Volatility: 4.53% 🔄 Volume: 2.01M | $279,241,338.60 ⚖️ Bid-Ask Spread: 0.0073% ⬇️ vs Market Avg: -0.17% 🔽 Momentum: -1.42% 🔢 Trades: 366,119 ETHUSDC 🔻 Change: -1.64% (24h) 💰 Current: $1,577.42 📊 Range: $1,565.60 - $1,631.98 📈 Volatility: 4.24% 🔄 Volume: 252.11K | $403,860,356.75 ⚖️ Bid-Ask Spread: 0.0044% ⬇️ vs Market Avg: -0.10% 🔽 Momentum: -1.53% 🔢 Trades: 596,801 BTCUSDC 🔻 Change: -1.26% (24h) 💰 Current: $84,336.65 📊 Range: $83,963.35 - $85,634.50 📈 Volatility: 1.99% 🔄 Volume: 1.97K | $167,257,070.12 ⚖️ Bid-Ask Spread: 0.0000% ⭐ vs Market Avg: 0.27% 🔽 Momentum: -0.68% 🔢 Trades: 124,202
by Aitor | 1Node
Turn Gumroad buyers into loyal email subscribers and keep your CRM up‑to‑date. When someone makes a purchase on your Gumroad store, this n8n workflow instantly adds that customer to the right MailerLite group (so your nurture sequence starts on time) and writes the sale details into your Google Sheets CRM. You’ll never copy‑and‑paste orders again, and every buyer begins receiving your follow‑up emails the moment they purchase. Requirements A Gumroad account with a product listed A MailerLite account. A MailerLite group of subscribers created Enabled APIs and credentials for Google Sheets, MailerLite and Gumroad How it works Listen for a new sale on Gumroad** The Gumroad trigger watches your account 24/7 and fires as soon as a sale is completed. Create (or update) the subscriber in MailerLite** Their name and email are added to MailerLite. If they already exist, the workflow simply updates their profile. Assign the subscriber to your Gumroad group** Grouping lets your MailerLite automation send the right onboarding or upsell sequence without manual tagging. Log the purchase in Google Sheets** The buyer’s contact details, product, price, and date are appended as a new row in your CRM sheet. Set‑up steps Create an application in Gumroad. Copy the access token, you’ll paste it into the Gumroad trigger node. Grab your MailerLite API key MailerLite dashboard → Integrations → API. Paste it into the two MailerLite nodes. Prepare a Google Sheets spreadsheet Add column headers like Name, Email, Product, Price, Date. Open the template in n8n Cloud or Desktop In the Gumroad node, paste your token. In the MailerLite nodes, paste your API keys and replace the group id. In the Google Sheets node, replace the credentials, pick your spreadsheet and worksheet. Get in touch with us Feel free to contact us at 1 Node. Get instant access to a library of free resources we created.