by SIENNA
Automated FTP/SFTP to MinIO Object Backup with Scheduling $\mapsto$ Can work with FTP/SFTP Servers like your Wordpress Website ! What this workflow does ? This workflow performs automated, periodic backups of files from a FTP or SFTP server directory to a MinIO S3 bucket running locally or on a dedicated container/VM/server. It can also work if the MinIO bucket is running on a remote cloud provider's infrastructure; you just need to change the URL and keys. Who's this intended for ? Storage administrators, cloud architects, or DevOps who need a simple and scalable solution for retrieving data from a remote FTP or SFTP Server. This can also be practical for Wordpress Devs that need to backup data from a server hosting a Wordpress Website. In that case, you'll just need to specify the folder that you want to backup (could be one from wordpress/uploads or even the root one) How it works This workflow uses commands to list and download files from a specific directory on a FTP-SFTP Server, then send them to MinIO using their version of the S3 API. The source directory can be a specific one or the entire server (the root directory) Requirements None, just a source folder/directory on a FTP/SFTP Server and a destination bucket on MinIO. You'll also need to get MinIO running. You're using Proxmox VE ? Create a MinIO LXC Container : https://community-scripts.github.io/ProxmoxVE/scripts?id=minio Need a Backup from another Cloud Storage Provider ? Need automated backup from another Cloud Storage Provider ? $\mapsto$ Check out our templates, we've done it with AWS, Azure, and GCP, and we even have a version for FTP/SFTP servers! $\odot$ These workflow can be integrated to bigger ones and modified to best suit your needs ! You can, for example, replace the MinIO node to another S3 Bucket from another Cloud Storage Provider (Backblaze, Wasabi, Scaleway, OVH, ...)
by SerpApi
Sync Google Maps Reviews to Google Sheets for Any Google Maps Query How it works This workflow accepts any query you might run on actual Google Maps to search for places. The search happens through SerpApi's Google Maps API. Once the workflow receives place results from Google Maps, it loops through each place fetching reviews using SerpApi's Google Maps Reviews API. By default, the workflow will be limited to fetch up to 50 reviews per place. This can be customized in the 'Set Review Limit' node}. The first page of reviews for a place will only return 8 reviews. All subsequent pages will return up to 20 reviews. The fetched reviews are sent to a connected Google Sheet. How to use Create a free SerpApi account here: https://serpapi.com/ Add SerpApi credentials to n8n. Your SerpApi API key is here: https://serpapi.com/manage-api-key Connect your Google Sheets accounts to n8n. Help available here: https://n8n.io/integrations/google-sheets/ Create a Google Sheet with these column headers: name, iso_date, rating, snippet Connect your Google Sheet in the 'Append Reviews' Google Sheet node Update the Search Query in the 'Search Google Maps' node to set your own query (Optional) Update the review limit from the default 50 in the 'Set Review Limit' node. Set it to a very high number (e.g. 50000) to get all possible reviews. Hit 'Test Workflow' to manually trigger the workflow. Limitations Can only retrieve the top 20 results from Google Maps. It won't paginate to get more results. The workflow could be extended to support Google Maps Pagination. Warning Each request to SerpApi consumes 1 search credit. Be mindful of how many search credits your account has before requesting more reviews than your account supports. As an example, if a Google Maps query returns 20 results and you fetch the default limit of 50 reviews per page, this will use up to 61 SerpApi search credits. Documentation Google Maps API Google Maps Reviews API SerpApi n8n Node Intro Guide
by KlickTipp
Community Node Disclaimer: This workflow uses KlickTipp community nodes. Introduction This workflow automates Stripe checkout confirmations by capturing transaction data and syncing it into KlickTipp. Upon successful checkout, the contact's data is enriched with purchase details and tagged to trigger a personalized confirmation campaign in KlickTipp. Perfect for digital product sellers, course creators, and service providers seeking an end-to-end automated sales confirmation process. Benefits Instant confirmation emails**: Automatically notify customers upon successful checkout—no manual processing needed. Structured contact data**: Order data (invoice link, amount, transaction ID, products) is stored in KlickTipp custom fields. Smart campaign triggering**: Assign dynamic tags to start automated confirmation or fulfillment sequences. Seamless digital delivery**: Ideal for pairing with tools like Memberspot or Mentortools to unlock digital products post-checkout. Key Features Stripe Webhook Trigger**: Triggers on Triggers on Checkout Session.completed events events. Captures checkout data including product names, order number, and total amount. KlickTipp Contact Sync**: Adds or updates contacts in KlickTipp. Maps Stripe data into custom fields Assigns a tag such as Stripe Checkout to initiate a confirmation campaign. Router Logic (optional)**: Branches logic based on product ID or Stripe payment link. Enables product-specific campaigns or follow-ups. Setup Instructions KlickTipp Preparation Create the following custom fields in your KlickTipp account: | Field Name | Field Type | |--------------------------|------------------| | Stripe \| Products | Text | | Stripe \| Total | Decimal Number | | Stripe \| Payment ID | Text | | Stripe \| Receipt URL | URL | Define a tag for each product or confirmation flow, e.g., Order: Course XYZ. Credential Configuration Connect your Stripe account using an API key from the Stripe Dashboard. Authenticate your KlickTipp connection with username/password credentials (API access required). Field Mapping and Workflow Alignment Map Stripe output fields to the KlickTipp custom fields. Assign the tag to trigger your post-purchase campaign. Ensure that required data like email and opt-in info are present for the contact to be valid. Testing and Deployment Click on Inactive to activate the scenario. Perform a test payment using a Stripe product link. Verify in KlickTipp: The contact appears with email and opt-in status. Custom fields for Stripe are filled. The campaign tag is correctly applied and confirmation email is sent. ⚠️ Note: Use real or test-mode API keys in Stripe depending on your testing environment. Stripe events may take a few seconds to propagate. Campaign Expansion Ideas Launch targeted upsell flows based on the product tag. Use confirmation placeholders like: [[Stripe | Products]] [[Stripe | Total]] [[Stripe | Payment ID]] [[Stripe | Products]] Route customers to different product access portals (e.g., Memberspot, Mentortools). Send follow-up content over multiple days using KlickTipp sequences. Customization You can extend the scenario using a switch node to: Assign different tags per used payment link Branch into upsell or membership activation flows Chain additional automations like CRM entry, Slack notification, or invoice creation. Resources: Use KlickTipp Community Node in n8n Automate Workflows: KlickTipp Integration in n8n
by System Admin
Example Input Data: {"name":"John Doe","email":"doe.j@northeastern.edu"}
by Harshil Agrawal
This workflow automatically creates an event in PostHog when a request is made to a webhook URL. Prerequisites A PostHog account and credentials Nodes Webhook node triggers the workflow when a URL is accessed. PostHog node creates a new event in PostHog.
by System Admin
If the user log water recently. Wait for another 3x minutes
by Robert Breen
This n8n workflow template automatically pulls marketing data from Google Sheets, calculates key performance metrics, and sends beautifully formatted HTML email reports. Perfect for marketing teams, agencies, or businesses that need regular performance reporting without manual data processing. What This Workflow Does This automated workflow: Retrieves marketing campaign data from Google Sheets Calculates 5 key performance metrics (customers, campaigns, clicks, conversions, spend) Merges all statistics into a single data object Sends a professional HTML email report with modern styling Can be run manually or scheduled for regular reporting The workflow processes data including Customer ID, Campaign names, Clicks, Conversions, and Spend amounts to generate comprehensive performance summaries. Tools & Services Used N8N** - Workflow automation platform Google Sheets** - Marketing data source and storage Microsoft Outlook** - Email delivery system HTML/CSS** - Professional report formatting Step-by-Step Implementation Step 1: Set Up Your Google Sheets Data Source Copy the Sample Data Template: Access the template: Marketing Performance Data Template Click "File" → "Make a copy" to create your own version Rename it (e.g., "My Marketing Performance Data") Set Up Your Data Structure: Your Google Sheet should have a "Data" tab with these columns: Customer ID** - Unique identifier for each customer Campaign** - Name of the marketing campaign Clicks** - Number of clicks generated Conversions** - Number of conversions achieved Spend ($)** - Amount spent on the campaign Configure Google Sheets API Access: Go to Google Cloud Console Create a project or select existing one Enable "Google Sheets API" Create OAuth2 credentials or use service account Share your sheet with the service account email (if using service account) Step 2: Import and Configure the N8N Workflow Import the Workflow: Copy the workflow JSON from the template In your N8N instance, go to Workflows → Import from JSON Paste the JSON and import the workflow Step 3: Configure Each Node Node 1: "When clicking 'Execute workflow'" (Manual Trigger) Purpose**: Starts the workflow manually for testing Configuration**: No setup required Note**: You can replace this with a Schedule Trigger for automated reports Node 2: "Get Google Sheets Data" Purpose**: Retrieves all marketing data from your Google Sheet Setup Required**: Click on the node Set up Google Sheets OAuth2 credentials: Click "Create New Credential" Follow OAuth2 setup process Authorize access to your Google account Select your spreadsheet from the dropdown Choose the "Data" sheet Test the connection to ensure data loads Node 3-7: Data Analysis Nodes "Count Unique Customers" Purpose**: Counts how many unique customers were reached Configuration**: Pre-configured to count unique "Customer ID" values No setup required** "Count Unique Campaigns" Purpose**: Counts total number of campaigns run Configuration**: Pre-configured to count unique "Campaign" values No setup required** "Sum Total Clicks" Purpose**: Adds up all clicks across campaigns Configuration**: Pre-configured to sum "Clicks" column No setup required** "Sum Total Conversions" Purpose**: Totals all conversions achieved Configuration**: Pre-configured to sum "Conversions" column No setup required** "Sum Total Spend" Purpose**: Calculates total marketing spend Configuration**: Pre-configured to sum "Spend ($)" column No setup required** Node 8: "Merge" Purpose**: Combines all calculated metrics into one data object Configuration**: Pre-configured to merge by position No setup required** Node 9: "Send Email Report" (Microsoft Outlook) Purpose**: Sends the formatted HTML email report Setup Required**: Click on the node Set up Microsoft Outlook OAuth2 credentials: Click "Create New Credential" Follow OAuth2 setup for your Microsoft account Grant necessary email permissions Configure Email Settings: To Recipients: Change from "rbreen@ynteractive.com" to your recipient email(s) Subject: Modify "Daily Marketing Performance" as needed Body Content: Pre-configured with professional HTML template Email Template Features: Modern glassmorphic design Responsive layout for mobile devices Animated gradient accents Hover effects on metric cards Professional typography For professional setup, customization, or troubleshooting of this workflow, contact: Robert - Ynteractive Solutions Email**: robert@ynteractive.com Website**: www.ynteractive.com LinkedIn**: linkedin.com/in/robert-breen-29429625/ Specializing in AI-powered workflow automation, business process optimization, and custom integration solutions.
by System Admin
No description available
by System Admin
No description available
by System Admin
No description available
by Davide
This workflow transforms n8n into a call automation system, where AI agents can talk directly with people over the phone using Twilio. This workflow integrates Ultravox AI voice agents with Twilio’s telephony service to fully automate outbound phone calls. Ultravox generates the AI conversation and audio, while Twilio handles the PSTN connection to the actual phone network, with the two services connected in real-time via a media stream. Key Advantages AI-Powered Conversations** – Leverage Ultravox agents to handle natural, real-time dialogues with customers. Seamless Telephony Integration** – Twilio ensures reliable phone call delivery worldwide. Flexible Setup** – You can easily change the target phone number, agent, or Twilio line directly in the workflow. Scalable Outreach** – Automates outbound calls for customer support, sales, or appointment reminders. Step-by-Step Guidance** – The workflow includes clear instructions for: Buying and configuring a Twilio number Creating an Ultravox agent Executing the final call How it Works Manual Trigger: The workflow is started manually by a user within n8n. Set Parameters: The "Set Params" node defines the crucial variables for the call: the Ultravox agent_id, the Twilio phone number to call from (twilio_number), and the destination phone_number to call. Initiate Ultravox Session: The "Create Ultravox Call" node sends an HTTP POST request to the Ultravox API. It specifies the agent to use and, crucially, informs Ultravox that the call will be handled by Twilio (medium: { twilio: {} }). Ultravox responds with a unique joinUrl (a WebSocket stream URL). Place the Twilio Call: The "Twilio Call" node uses the details from the previous steps. It instructs Twilio to make a call from the specified twilio_number to the target phone_number. The key instruction (twiml) tells Twilio to connect the call to the joinUrl provided by Ultravox, effectively streaming the audio between the participant and the AI agent. Set Up Steps Twilio Configuration: Log into your Twilio Console. Buy a phone number under the "Phone Numbers" section. Obtain your "Account SID" and "Auth Token" from the dashboard. In the "Twilio Call" node credentials, add your Twilio Account SID and Auth Token. In the "Set Params" node, set the twilio_number value to your newly purchased Twilio number (e.g., +1xxxxxxx). Ultravox Configuration: Log into your Ultravox App. Create a new AI Agent by configuring its voice, tools, and system prompt. Copy the ID of your newly created agent. In the "Set Params" node, set the agent_id value to your Ultravox agent's ID. Execute the Call: In the "Set Params" node, set the phone_number value to the destination number you wish to call (e.g., +1xxxxxxxx). Execute the workflow manually from the n8n editor. The AI agent will call the specified number through Twilio. Need help customizing? Contact me for consulting and support or add me on Linkedin.
by System Admin
Tagged with: Current