by Harshil Agrawal
This workflow allows you to create a new list, add a new contact to that list, update the contact, and get all contacts in the list using the Autopilot node. Autopilot node: This node will create a new list called n8n-docs in Autopilot. Autopilot1 node: This node creates a new contact and adds it to the list created in the previous node. Autopilot2 node: This node updates the information of the contact that we created in the previous node. Autopilot3 node: This node returns all the contacts of the n8n-docs list that we created using the Autopilot node.
by System Admin
filters out: - existing Zoom meetings made by Calendly - in person zoom meetings - signal meetings - canceled Calendly meetings ("transparent")
by System Admin
f3bc462f9219860aafe79747ee369e2f79ccd7f9b096dfe66b55d946871e8942. f3bc462f9219860aafe79747ee369e2f79ccd7f9b096dfe66b55d946871e8942. f3bc462f9219860aafe79747ee369e2f79ccd7f9b096dfe66b55d946871e8942
by System Admin
Filter tickets by status.. Get all tickets.. Sends a summary to customer support stream.. Daily stand-up open days.
by Trung Tran
Automated Slack Channel Audit Workflow with Chatbot and GPT-4.1 > Automatically scans all public Slack channels weekly to detect those with no activity in the past 30 days, then generates and sends a detailed inactivity report to admins for review and action. Helps keep your Slack workspace clean, relevant, and clutter-free. π§βπΌ Whoβs it for This workflow is built for: Slack Workspace Admins** IT or Ops Managers** HR/Compliance Teams** β¦who want to maintain a clean and active Slack workspace by regularly reviewing inactive channels. βοΈ How it works / What it does This automated n8n workflow: Runs weekly via a scheduled trigger. Fetches all public Slack channels in the workspace. Checks message history of each channel for activity. Filters channels that have had no discussion in the past 30 days. Generates a Slack-friendly report with key metadata (name, member count, purpose, etc.). Sends the report to a Slack channel for admin review and possible action (e.g., archive, engage, repurpose). π οΈ How to set up Configure your Slack App Go to https://api.slack.com/apps β Create App Add the following OAuth scopes to your Bot Token: channels:read β to get list of public channels channels:history β to fetch message history users:read β to personalize report (optional) chat:write β to post the report to a Slack channel Install the app in your workspace Copy the Bot User OAuth Token Add it to your n8n Slack credentials under "Slack API" Customize the schedule in the "Weekly Schedule Trigger" node to control report frequency. Connect your Slack workspace to the workflow using your credentials. β Requirements n8n (self-hosted or cloud) Slack App with: channels:read channels:history chat:write Active channels and member data A designated Slack channel to receive the report π§ How to customize the workflow | Component | Customization Options | |----------|------------------------| | β±οΈ Schedule Trigger | Change to daily, monthly, etc. | | π Inactivity Threshold | Modify Filter channel with last discussion 30 days ago to 60/90 days | | π Report Formatting | Tweak the Consume slack report node to change formatting or summary | | π¬ Output Channel | Change target channel in Send Channel Inactivity Report | | π« Auto-archiving | Add logic to archive channels with 0 members or activity (using Slack API) | π Slack Permissions Reference | Action | Slack Scope Required | |--------|-----------------------| | Get all public channels | channels:read | | Get message history of a channel | channels:history | | Post message to Slack | chat:write | | Get user info (optional) | users:read |
by Milan Vasarhelyi - SmoothWork
QuickBooks export customer list to Google Sheets A small workflow that pulls your QuickBooks customer list and drops it into Google Sheets. It runs on a schedule. You can also trigger it on demand if you want to test. What it does Triggers on a monthly schedule at 08:00. Fetches all customers from QuickBooks Online. Prepares a small set of fields: Period (YYYY-MM from the run date) Id Balance Email Appends these rows into a Google Sheet. Why this is useful Quick view of who owes what this month. Easy export for finance or sales teams. Works as a template for exporting any QuickBooks data, not just customers. Setup QuickBooks credential**: connect your QuickBooks Online account in n8n. Google Sheets credential**: connect your Google account in n8n. Sheet target**: replace the example spreadsheet URL with your sheet. Keep the sheet tab name or set one you like. Schedule**: default is monthly at 08:00. Change it if you need weekly or daily runs. Fields and mapping The workflow keeps it lean: Period is generated from the run date. Id, Balance, Email come from the QuickBooks customer object. If you want more columns, add them in Prepare Customer Data and map them in Export to Google Sheets. Example output Sheet columns per row: Period - 2025-08 Id - 123 Balance - 245.50 Email - customer@company.com Notes This is a safe baseline. No transformations beyond simple field picks. Good starting point to build reports, alerts, or dashboards later.
by David Olusola
ποΈ Auto-Create Airtable CRM Records for Zoom Attendees This workflow automatically logs every Zoom meeting attendee into an Airtable CRM β capturing their details for sales follow-up, reporting, or onboarding. βοΈ How It Works Zoom Webhook β Captures participant join event. Normalize Data β Extracts attendee name, email, join/leave times. Airtable β Saves/updates record with meeting + contact info. π οΈ Setup Steps 1. Zoom Create a Zoom App with meeting.participant_joined event. Paste workflow webhook URL. 2. Airtable Create a base called CRM. Table: Attendees. Columns: Meeting ID Topic Name Email Join Time Leave Time Duration Tag 3. n8n Replace YOUR_AIRTABLE_BASE_ID + YOUR_AIRTABLE_TABLE_ID in the workflow. Connect Airtable API key. π Example Airtable Row | Meeting ID | Topic | Name | Email | Join Time | Duration | Tag | |------------|--------------|----------|--------------------|----------------------|----------|----------| | 999-123-456 | Sales Demo | Sarah L. | sarah@email.com | 2025-08-30T10:02:00Z | 45 min | New Lead | β‘ With this workflow, every Zoom attendee becomes a structured CRM record automatically.
by Harshil Agrawal
This workflow allows you to create, update, and get an object from Bubble. Bubble node: This node will create a new object of the type Doc in Bubble. If you want to create an object with a different type, use that type instead. Bubble1 node: This node will update the object that we created using the previous node. Bubble2 node: This node will retrieve the information of the object that we created earlier.
by Harshil Agrawal
This workflow allows you to create a quote and a transfer, execute the transfer and get the information of the transfer using the Wise node. Wise node: This node will create a new quote in Wise. Wise1 node: This node will create a new transfer for the quote that we created in the previous node. Wise2 node: This node will execute the transfer that we created in the previous node. Wise3 node: This node will return the information of the transfer that we executed in the previous node.
by Gaurav
Automated Email Verification for Google Sheets This n8n template demonstrates how to automatically validate email addresses from your Google Sheets using a reliable email verification API. Perfect for cleaning contact lists, validating leads, and ensuring email deliverability before marketing campaigns. Use cases are many: Lead qualification for sales teams, contact list cleaning for marketing, subscriber validation for newsletters, or CRM data hygiene maintenance! Good to know The rapid-email-verifier API is free for up to 1,000 verifications per month Each email verification typically takes less than 500ms to complete The workflow runs automatically every hour, checking for new entries Only processes emails that haven't been verified yet, preventing duplicate API calls How it works Monitor Google Sheets: The trigger watches your spreadsheet for new email entries every hour Smart Filtering: Only emails with empty "Email Verified" columns are processed to avoid duplicates Batch Processing: Emails are processed one by one to respect API rate limits and ensure reliability API Verification: Each email is sent to the rapid-email-verifier service which returns validation status Results Update: The original sheet is updated with verification results (valid/invalid/unknown) using the Serial Number as a match key The verification accuracy is consistently above 95% and shows excellent detection of invalid, disposable, and risky email addresses! How to use The Google Sheets trigger monitors your spreadsheet automatically, but you can also test manually Simply add new rows with email addresses to your connected Google Sheet Leave the "Email Verified" column empty for new entries The workflow will automatically process and update the verification status Technically, you can process unlimited emails, but consider API rate limits and costs for large batches. Requirements Google Sheets account** with a spreadsheet containing columns: SrNo, Name, Email, Email Verified Google Sheets credentials** configured in n8n for both trigger and update operations Internet connection** for API access (no additional API key required for rapid-email-verifier) Customising this workflow Email verification can be enhanced for many use-cases: Add webhook trigger** for real-time verification when leads are captured Connect to CRM systems** like HubSpot or Salesforce for direct integration Add email categorization** to separate personal vs business emails Include bounce detection** by connecting to your email service provider Set up notifications** to alert when invalid emails are detected in important lists This template is perfect for marketing managers, sales professionals, data analysts, and anyone managing contact databases who needs reliable email validation!
by Moe Ahad
How it works: This flow checks the user's Google calender of events from Sunday to Saturday of current week, to determine how many hours have been booked each day. If a day has over 6 hours booked, it blocks out the remaining work hours for dedicated focus time. The flow assumes 8 work hours per day. For example, if the Monday of this week has 6.5 hours booked (for meetings, tasks etc.), it automatically blocks off the remaining 1.5 hours for dedicated focus time, so external users can see and not book new events for those hours. Benefit: Prevents users from being overloaded with meetings and gives time for dedicated deep work/focus time. Set up steps: Update start time of the "Schedule Trigger," this is the time the flow will run daily. Note: the workflow assumes a 9AM-5PM work schedule so it's recommended to schedule the flow to trigger before 9AM. Update the credentials for the "Get Full Weeks Events" and "Create Focus Time Event" nodes. Use your Google credentials so the workflow can connect to your Google calendar.
by Robert Breen
Send a templated outreach email to new leads in a Google Sheet on a daily schedule, then mark each lead as contacted so they wonβt be emailed twice. Built with: Schedule Trigger β Google Sheets β Filter β Outlook Send Email β Google Sheets (append/update). Whoβs it for Teams that collect leads in Sheets and want automatic, once-per-lead outreach Solo founders/consultants running simple top-of-funnel follow-ups Anyone prototyping CRM-lite flows in n8n How it works / What it does Schedule Trigger runs daily (e.g., 09:00). Get rows (Google Sheets) pulls leads from your sheet. Filter keeps only rows where Contacted is empty. Outlook β Send a message emails each remaining lead (to = {{$json.Email}}). Google Sheets (appendOrUpdate) writes back Contacted = Yes (match on Email) to prevent re-sending. How to set up 1) Google Sheets (OAuth2) In n8n β Credentials β New β Google Sheets (OAuth2), sign in and grant access. In Get rows: select your Lead Source sheet (e.g., βNew Leadsβ). In Append/Update: select the sheet you want to mark as contacted (can be the same sheet or a CRM sheet). Make sure your sheet has at least: Email, Contacted (blank for new). 2) Outlook (Microsoft Graph) OAuth2 n8n Cloud (quick connect):** In Credentials β New β Microsoft Outlook OAuth2, choose Connect, sign in with your Microsoft account, and accept permissions. Self-hosted (Azure App Registration):** 1) Azure Portal β App registrations β New registration. 2) Add redirect URL: https://YOUR_N8N_URL/rest/oauth2-credential/callback. 3) API permissions (Delegated): offline_access, Mail.Send, User.Read. Grant admin consent if required. 4) Create a Client secret; copy Application (client) ID and Directory (tenant) ID. 5) In n8n, create Microsoft Outlook OAuth2 credential with those values and scopes: offline_access Mail.Send openid email profile. In the Send a message node, select that credential and keep To mapped to {{$json.Email}}. Customize Subject and Body to your brand (default provided). Requirements A Google Sheet of leads with an Email column (and an optional Contacted column). A Microsoft account with permission to send mail via Microsoft Graph (Outlook). How to customize the workflow Email content:** Edit subject/body (add variables like {{$json.FirstName}}). Send window:** Change Schedule Trigger time/interval. Idempotency:** Use the same sheet for read+write (match on Email) or separate source/CRM sheets. Logging:** Add a Sheet or Notion append step after send for an audit trail. Security & best practices No hardcoded secrets:* Always use *OAuth2 credentials** (Sheets & Outlook). Sanitize PII:* If publishing, *remove real spreadsheet IDs/URLs** and personal emails/phone numbers. Sticky notes are mandatory:* Add a *yellow sticky note** in the workflow with this description and a short setup checklist. Use neutral sticky notes for per-node tips. Troubleshooting No emails sent:** Ensure Contacted is blank for new rows and the Filter checks βis empty.β Auth errors (Outlook):** Reconnect credential; confirm Graph scopes and tenant consent. Sheets errors:** Re-select spreadsheet/tab; verify headers (Email, Contacted). Duplicates:* Confirm *Append/Update* uses *matching column = Email**. Tags & category Category: Sales & CRM Tags: outreach, follow-up, google-sheets, outlook, schedule, dedupe, cold-email Changelog v1.0.0 β Initial release: scheduled outreach, Outlook email, de-dupe via Contacted = Yes. Contact Need help customizing (personalization, rate-limits, CRM sync, bounce checks)? π§ rbreen@ynteractive.com π Robert Breen β https://www.linkedin.com/in/robert-breen-29429625/ π ynteractive.com β https://ynteractive.com