by Ibrahim Malick
β οΈ This template uses only official n8n nodes. No community nodes required. π§βπΌ Who is this for? This workflow is designed for: Legal tech founders Marketing freelancers or consultants Agencies supporting lawyers and small law firms Anyone doing outbound outreach in the legal niche β What problem is this solving? LinkedIn is a goldmine for targeting legal professionals β but scraping and personalizing outreach is tedious and expensive. Most tools either: Require paid LinkedIn Sales Navigator Canβt personalize at scale Violate LinkedInβs TOS This workflow solves that by using free Google Search, OpenRouter AI, and GPT-4o to find, enrich, and message up to 1,000 solo lawyers per day β without using browser automation or scrapers. βοΈ What this workflow does Uses Google Programmable Search to find solo lawyers and small firm founders on LinkedIn Parses each profileβs name, title, profile URL, and snippet Saves raw lead data to Google Sheets Uses OpenRouter Sonar Pro to enrich each profile with external content Generates a personalized, 1-line message using GPT-4o Appends the final message into Google Sheets for outreach π οΈ Setup Estimated time: 15β20 minutes β Google Programmable Search Enable the Custom Search API on Google Cloud Create a programmable search engine set to search the full web Copy your API key and CX ID β Google Sheets Create a sheet with columns: Name, Title, Profile URL, Outreach Message Share the sheet with your OAuth-connected Google account β OpenRouter Sign up at openrouter.ai Fund with at least $5 and generate your API key Use the model perplexity/sonar-pro for real-time research β GPT-4o (optional) You can use your OpenAI key or route GPT-4o via OpenRouter All setup-specific values are marked clearly in sticky notes and placeholders. π οΈ How to customize this workflow to your needs Change the Google search query to match your industry (e.g., "founder" AND "therapist" site:linkedin.com/in) Modify the AI prompt to match your tone (formal, casual, humorous) Connect the final output to your CRM (like HubSpot, Airtable, etc.) Add a second outreach message variant to A/B test performance π Sticky Notes & Annotations All nodes are clearly renamed for understandability (e.g., Find Lawyer Profiles, Parse LinkedIn Search Results) Color-coded sticky notes explain: Setup instructions Required credentials Use case π Category AI Sales Marketing
by Jay Hartley
What this template does This workflow will collect order data as it is produced, then send a summary email of all orders at the end of every day, formatted in a table. It receives new orders via webhook and stores in Airtable. At 7PM every day, it sends a summary email with the day's orders in a HTML table Setup: Instructions Video Create a new table in Airtable and give it a field time with type date, orderID with type number, and orderPrice also with type number. Create a new access token if you haven't already at https://airtable.com/create/tokens/new. Make sure to give the token the scopes data.records:read, data.records:write, schema.bases:read and access to whichever table you choose to store the orders. A pop-up window appears with the token. Use this token to make Create New Credential > Access Token for Airtable in the Store Order and Airtable Get Today's Orders nodes. Create access credentials for your Gmail as described here: https://developers.google.com/workspace/guides/create-credentials. Use the credentials from your client_secret.json in the Send to Gmail node. In the Store Order node, change Base and Table to the database and table in your Airtable account you wish to use to store orders. Make sure to use these same values in the Airtable Get Today's Orders node. Every time an order is created in your system, send a POST request to Webhook from your order software. Each request must contain a single order containing fields 'orderID' and 'orderPrice' (or, edit Set Order Fields to select which incoming fields you wish to save) Change the schedule time for sending email from Everyday at 7PM to whichever time you choose. Test: Activate the workflow. From the node Webhook, copy Production URL Send the following CURL request to the URL given to you: curl -X POST -H "Content-Type: application/json" -d '{"orderID": 12345, "orderPrice": 99.99}' YOUR_URL_HERE It should say Node executed successfully. Now check your Airtable and confirm the order was stored in the right place.
by Sam Robertson
Generate Summaries from Uploaded Files using OpenAI Assistants API π Overview Upload a document (PDF, DOCX, PPTX, TXT, CSV, JSON, or Markdown) and receive an AI-generated summary containing: title** β 5-10 words summary** β 1-2 sentences bullets** β 3-5 key points tags** β 3-6 short keywords The workflow: Stores the file in OpenAI. Runs an Assistant with File Search and Code Interpreter enabled. Polls until the run finishes. Retrieves the summary JSON. β Prerequisites OpenAI Assistant Create one at <https://platform.openai.com/assistants> Enable File Search and Code Interpreter Note: The assistant ID starts with asst_ OpenAI API credential setup in n8n Go to Credentials β New β HTTP Header Auth Header name: Authorization Value: Bearer YOUR-OPENAI-API-KEY (replace YOUR-OPENAI-API-KEY with your OpenAI API secret key for your assistant, starts with sk-) Name it: openAIApiHeader π§ Setup Import the workflow JSON. When n8n prompts for a credential, choose openAIApiHeader for every HTTP Request node. Open Run Assistant β Body and replace "assistant_id": "REPLACE_WITH_YOUR_ASSISTANT_ID" with your real ID (starts with asst_β¦). Save. π How it works | # | Node | Purpose | |---|------|---------| | 1 | On form submission | User uploads a file (File). | | 2 | Upload File | POST /v1/files (multipart) β returns file_id. | | 3 | Create Thread | Creates a thread and attaches the uploaded file. | | 4 | Run Assistant | Starts the run using your assistant_id. | | 5 | Poll Run Status β Wait 2 s β IF | Loops until status = completed. | | 6 | Fetch Summary | GET /v1/threads/{thread_id}/messages β summary JSON. | ποΈ Customisation ideas Edit the user prompt in Create Thread to change summary length, tone, or language. Add an HTTP Response node after Fetch Summary to return plaintext to the uploader. Replace the polling loop with OpenAIβs forthcoming wait-for-run endpoint when available. No community nodes required. Works on any n8n Cloud plan (Starter, Pro, Enterprise) or self-hosted Community Edition.
by Agent Studio
Overview This workflow helps you compare Claude 3.5 Sonnet and Gemini 2.0 Flash when extracting data from a PDF This workflow extracts and processes the data within a PDF in one single step, instead of calling an OCR and then an LLMβ How it works The initial 2 steps download the PDF and convert it to base64. This base64 string is then sent to both Claude 3.5 Sonnet and Gemini 2.0 Flash to extract information. This workflow is made to let you compare results, latency, and cost (in their dedicated dashboard). How to use it Set up your Google Drive if not already done Select a document on your Google Drive Modify the prompt in "Define Prompt" to extract the information you need and transform it as wanted. Get a Claude API key and/or Gemini API key Note that you can deactivate one of the 2 API calls if you don't want to try both Test the Workflow
by KlickTipp
Community Node Disclaimer: This workflow uses KlickTipp community nodes. How It Works: Typeform Quiz Integration: This workflow streamlines the process of handling quiz answers submitted via Typeform. It ensures the data is correctly formatted and seamlessly integrates with KlickTipp. Data Transformation: Input data is validated and transformed to meet KlickTippβs API requirements, including formatting phone numbers and converting dates. Key Features Typeform Trigger: Captures new quiz submissions from Typeform, including user details and quiz responses. Data Processing and Transformation: Formats phone numbers to numeric-only format with international prefixes. Converts dates (e.g., birthdays) to UNIX timestamps. Maps multiple-choice quiz answers to string values for API compatibility. Scales numeric quiz responses for tailored use cases. Subscriber Management in KlickTipp: Adds participants as subscribers to a designated KlickTipp list, with custom field mappings for: Personal details (e.g., name, email, phone number, birthday). Quiz responses (e.g., intended usage of KlickTipp, company location, and team size). Tags contacts for segmentation: Adds fixed and dynamic tags to contacts. Error Handling: Handles empty or malformed data gracefully, ensuring clean submissions to KlickTipp. Setup Instructions Install and Configure Nodes: Set up the Typeform and KlickTipp nodes in your n8n instance. Authenticate your Typeform and KlickTipp accounts. Prepare Custom Fields in KlickTipp: Create custom fields to store quiz answers and personal details, such as: | Name | Datentyp | |----------------------------------|-----------------| | Typeform_URL_Linkedin | URL | | Typeform_Frage1_klicktipp_nutzen | Zeile | | Typeform_Frage2_klicktipp_sitz | Zeile | | Typeform_Frage3_mitglieder_CHT | Dezimalzahl | After creating fields, allow 10-15 minutes for them to sync. If fields donβt appear, reconnect your KlickTipp credentials. Field Mapping and Adjustments: Verify and customize field assignments in the workflow to align with your specific form and subscriber list setup. Workflow Logic Trigger via Typeform Submission: The workflow initiates upon receiving a new quiz submission. Transform Data for KlickTipp: Converts and validates data from Typeform to match KlickTippβs API requirements. Add to KlickTipp Subscriber List: Submits the cleaned data to KlickTipp, including all relevant quiz answers. Get all tags from KlickTipp and create a list: Fetches all existing Tags and turns them into an array Define tags to dynamically set for contacts: Definiton of variables that are received from the form submission and should be converted into tags Merge tags of both lists: Checks whether the list of existing tags in KlickTipp contains the tags which should be dynamically set based on the form submission Tag creation and tagging contacts: Creates new tags if it previously did not exist and then tags the contact Benefits Efficient lead generation: Contacts from forms are automatically imported into KlickTipp and can be used immediately, saving time and increasing the conversion rate. Automated processes: Experts can start workflows directly, such as welcome emails or course admissions, reducing administrative effort. Error-free data management: The template ensures precise data mapping, avoids manual corrections and reinforces a professional appearance. Testing and Deployment Test the workflow by filling the form on Typeform and verifying data updates in KlickTipp. Notes Customization: Update field mappings within the KlickTipp nodes to align with your account setup. This ensures accurate data syncing. Resources: Typeform KlickTipp Knowledge Base help article Use KlickTipp Community Node in n8n Automate Workflows: KlickTipp Integration in n8n
by Joachim Hummel
This n8n workflow automates posting Amazon affiliate products to Mastodon β complete with image upload, description, and a shortened tracking URL using Shlink. π§ How it works Input Source: The workflow starts by reading from a connected Google Sheet that contains: SHlink (Shortlink) Amazon Link Description (Optional) PicURL Send /NO or YES A Send column (used as a flag to check if the row was already posted) Image Upload: It fetches the product image via HTTP and uploads it directly to a Mastodon instance via the /media API endpoint. URL Shortening (Shlink): The original Amazon URL is shortened using your self-hosted or cloud-hosted Shlink instance to enable click tracking and better presentation. Text Generation: A two-line promotional text is automatically generated using a Language Model (LLM), based on the product description. Posting to Mastodon: The post is then published on Mastodon with: The image The generated text The shortened Shlink URL Row Update: Once published, the Send column in the Google Sheet is updated to "YES" to prevent duplicates. Requirements β Shlink β Required for shortening and tracking Amazon URLs β Google Sheet β Used as a product queue and post β Google Sheet Example https://link.unixweb.home64.de/w7VqY β Mastodon account β OAuth2 credentials with write scope β Product image URL β Must be valid and accessible β n8n credentials β Set up for Google Sheets, Mastodon, and optionally OpenRouter or other LLM providers This workflow is ideal for content creators, affiliate marketers, and automation fans who want to save time and optimize reach across the Fediverse. #affiliate #amazon #mastodon #advertisment
by DigiMetaLab
A smart personal assistant that can reason, search, calculate, and remember β powered by Google Gemini and ready in one click. Most AI agents only respond β this one thinks before replying, pulls in real-time facts, does the math, and even remembers the last 5 things you said. π§ How it works This template builds a conversational agent using the Google Gemini API. It uses multiple tools like: π§ Think β to reason step-by-step π SerpAPI β to search live data on Google β Calculator β to solve math problems πΎ Memory β to remember short-term chat history You can embed this agent into a chatbot, web app, or automate any customer support, research, or productivity workflow. π§ Your agent will: Understand what you're asking Think logically using the Think tool Search facts in real-time using SerpAPI Calculate numbers using a math engine Recall past context using a memory buffer And respond clearly β just like a real assistant. π§βπΌ Who is this template for? This template is ideal for: Creators & developers building AI agents Teams needing a Gemini-powered assistant Beginners exploring LangChain + n8n Anyone curious about combining LLMs + tools + memory π How to set up Plug in your Google Gemini API key Add your SerpAPI key Run the workflow and start chatting! Everything is pre-wired for you β just import and go. π¬ Use cases You can connect this agent to: Telegram bots π€ WhatsApp via Twilio π± Slack, Discord, or Gmail π¬ Or just trigger it inside n8n manually π π Check out my other templates https://n8n.io/creators/digimetalab
by Alexander K.
Transform your creative sparks into professional Instagram Reel scripts instantly! This AI-powered workflow takes your raw ideas (text or voice messages) via Telegram and generates complete, viral-ready Reel scenarios with hooks, scripts, captions, and visual concepts. Who is this template for? This template is perfect for: Content creators looking to streamline their Reel production process Social media managers who need to generate multiple Reel concepts quickly Marketing professionals seeking data-driven, psychology-based content strategies Influencers and entrepreneurs who want to maintain consistent, engaging content Small business owners looking to create viral marketing content without hiring expensive copywriters Anyone who struggles with writer's block or wants to improve their Instagram engagement What this template does This comprehensive workflow provides a complete Reel creation assistant that: π― Accepts Multiple Input Types: Text messages with your Reel ideas Voice notes that get automatically transcribed Processes ideas in real-time through Telegram π§ AI-Powered Content Generation: Creates 3 attention-grabbing hook variants designed to stop the scroll Generates a complete 30-60 second script with Hook, Subtitle, Body, and Call-to-Action Writes engaging captions that complement (not repeat) your video content Provides specific visual concepts with cinematic direction for filming π Smart Features: Memory system that remembers your conversation context for personalized suggestions Optional Google Sheets integration to automatically log and organize all your Reel ideas Error handling for seamless user experience Instant delivery of results back to your Telegram chat π¨ Professional Quality Output: Scripts based on proven marketing psychology from industry legends Hooks designed using viral content strategies Visual concepts that are specific and actionable (not generic "film yourself" advice) Captions optimized for engagement and shareability Sample Results Input (Idea): How I Saved 10 Hours a Week with Blog Automation? Output: π‘ Hook (variants): "Blogging doesn't have to be a time-suck. Here's my secretβ¦" "Is blogging eating up your spare time? Let's fix that!" "Unlock 10 hours a week AND keep your blog thriving!" π¬ Script: Hook: "Blogging doesn't have to be a time-suck. Here's my secretβ¦" Subtitle: "Maximize your time with blog automation hacks!" Body: "Picture this: writing, editing, posting, and promoting your blog without breaking a sweat. I was buried under endless tasks until I discovered blog automation. Scheduling posts, auto-publishing, automating social sharesβit's a game-changer. 10 hours a week, back in my pocket! More time for creativity or even a break. Imagine what automation could do for your content game." CTA: "Which blog task do you wish was automated? Drop a comment!" π Reel Caption: Blog automation isn't just convenienceβit's freedom. What will you create with your extra time? πΈ Visual Idea: Open with a whirlwind of papers and sticky notes symbolizing chaos. Transition to a person seamlessly typing on a laptop, where blog posts are auto-scheduled. Quick cuts show blog shares and responses happening automatically. Conclude with a serene scene: the person outdoors, notebook in hand, jotting ideas peacefully on a sunny day. Setup Instructions Prerequisites: Telegram account OpenAI API account with GPT-4 access Google account (optional, for logging ideas) Step 1: Create Your Telegram Bot Open Telegram and search for @BotFather Send /newbot and follow the instructions to create your bot Save the Bot Token you receive - you'll need this for n8n Send /setprivacy to @BotFather, select your bot, and choose "Disable" to allow the bot to read all messages Step 2: Get Your OpenAI API Key Visit OpenAI's API platform Create an account or log in Navigate to API Keys section Create a new API key and save it securely Ensure you have access to GPT-4 models (required for optimal results) Step 3: Configure the Workflow Import this template into your n8n instance Set up Telegram credentials: Add your Bot Token to all Telegram nodes Test the connection Configure OpenAI credentials: Add your API key to the "OpenAI Chat Model" and "Transcribes audio" nodes Verify GPT-4o model access Optional - Google Sheets setup: Create a new Google Sheet with columns: Status, Date, Description, Script Connect your Google account to the "Google Sheets" node Select your spreadsheet and sheet Step 4: Activate and Test Click "Activate" in the top-right corner of your workflow Open Telegram and find your bot Send a test message like "Create a Reel about morning routines" Verify you receive a complete Reel scenario response Step 5: Start Creating! Send text ideas directly to your bot Record voice notes with your concepts Receive professional Reel scenarios within seconds Use the optional Google Sheets integration to build your content library Pro Tips: Be specific with your ideas for better results The AI remembers your conversation context, so you can refine ideas iteratively Voice messages work great for capturing spontaneous ideas on-the-go Review the generated visual concepts - they're designed to be immediately actionable Troubleshooting: Ensure your OpenAI account has sufficient credits Verify your Telegram bot privacy settings allow message reading Check that all credentials are properly configured and tested For Google Sheets issues, confirm the sheet structure matches the expected columns This template transforms the tedious process of content creation into an instant, AI-powered system that delivers professional-quality Reel scenarios whenever inspiration strikes!
by Samuel Kimutai
How it works Automatically generates trending LinkedIn content topics using AI Researches current industry angles and hooks Writes posts in your authentic voice using OpenAI Creates professional images with DALL-E Posts everything on schedule without manual intervention Set up steps Connect OpenAI API for content generation and image creation Link LinkedIn API for automated posting Configure scheduling triggers (daily/weekly posting) Customize prompts to match your writing style and industry Set up content approval workflows (optional) Results you can expect 400% increase in profile views within 3 weeks Generate 120+ posts per month vs manual 12 posts Free up 15+ hours weekly for revenue-generating activities Consistent posting schedule that builds audience engagement Professional content that converts followers to clients Time to set up: 30-45 minutes Technical level: Beginner to intermediate APIs required: OpenAI, LinkedIn API Cost: OpenAI usage fees only (approximately $5-15/month) This workflow transforms LinkedIn content creation from a time-consuming daily task into a fully automated system that works while you sleep. Perfect for entrepreneurs, marketers, and content creators who want consistent LinkedIn presence without the manual effort.
by Roshan Ramani
π€ GitHub Auto-Assign Bot Streamline your open source project with intelligent issue assignment automation. β¨ What It Does Automatically assigns GitHub issues to contributors who comment "assign me" - eliminating manual triage work and creating a fair, first-come-first-served system. π Key Features Smart Detection**: Monitors both new issues and comments for assignment requests Conflict Prevention**: Checks existing assignments before making new ones Auto-Labeling**: Adds "assigned" labels for better tracking Self-Service Assignment**: Contributors claim issues with simple "assign me" command Polite Responses**: Automatically notifies when issues are already assigned π― Perfect For Open source maintainers Development teams managing GitHub repos Projects with active contributor communities Anyone reducing manual issue management βοΈ Setup Requirements GitHub repository with issues enabled n8n instance with GitHub OAuth credentials 5 minutes configuration time π How Contributors Use It Find an unassigned issue Comment assign me Get automatically assigned Start coding immediately β no maintainer approval needed! β Benefits Reduces maintainer workload** - No manual assignments Faster contributor onboarding** - Instant self-service Prevents conflicts** - Built-in assignment checking Scales automatically** - Works across unlimited issues Improves contributor experience** - Simple, clear process β‘ Workflow Triggers New GitHub issues containing "assign me" New comments with "assign me" on existing issues Automatic label management Conflict resolution responses > Transform your GitHub workflow - Perfect for growing open source projects and development teams!
by Paul
AI Database Assistant with Smart Query's & PostgreSQL Integration Description: π Transform Your Database into an Intelligent AI Assistant This workflow creates a smart database assistant that safely handles natural language queries without crashing your system. Features dual-agent architecture with built-in query limits and PostgreSQL optimization β perfect for commercial applications! β Ideal for: SaaS developers building database search features π Database administrators providing safe AI access π‘οΈ Business teams needing user-friendly data queries π Anyone wanting ChatGPT-like database interaction π€ π§ How It Works 1οΈβ£ User asks a question β "Show me top 10 popular products" 2οΈβ£ Main AI Agent β Interprets the request and ensures safety limits 3οΈβ£ SQL Sub-Agent β Generates precise PostgreSQL queries 4οΈβ£ Database executes β Returns formatted, limited results safely β‘ Setup Instructions 1οΈβ£ Prepare Your Database Ensure PostgreSQL is accessible from n8n Note your table structure and column names Set up database connection credentials 2οΈβ£ Customize the Templates Replace [YOUR_TABLE_NAME] with your actual table name Update [YOUR_FIELDS] with your column names Modify examples to match your use case Important**: Keep all LIMIT clauses intact! 3οΈβ£ Configure the Agents Copy Main Agent system message to your primary AI node Copy Sub-Agent system message to your SQL generator node Connect the sub-workflow between both agents 4οΈβ£ Test & Deploy Test with sample queries like "Show me 5 recent items" Verify query limits work (max 50 results) Deploy and monitor performance π― Why Use This Workflow? βοΈ System Protection β Built-in limits prevent crashes from large queries βοΈ Natural Language β Users ask questions in plain English βοΈ Commercial Ready β Generic templates work with any database βοΈ Dual-Agent Safety β Smart interpretation + precise SQL generation βοΈ PostgreSQL Optimized β Handles complex schemas and data types π¨ Critical Features Query Limits**: Default 10, maximum 50 results (can be modified) Error Prevention**: No unlimited data retrieval Smart Routing**: Natural language β Safe SQL β Formatted results Customizable**: Works with any PostgreSQL database schema π Start building your AI database assistant today β safe, smart, and scalable!
by Niranjan G
Automated GitHub Scanner for Exposed AWS IAM Keys Overview This n8n workflow automatically scans GitHub for exposed AWS IAM access keys associated with your AWS account, helping security teams quickly identify and respond to potential security breaches. When compromised keys are found, the workflow generates detailed security reports and sends Slack notifications with actionable remediation steps. π Key Features Automated AWS IAM Key Scanning**: Regularly checks for exposed AWS access keys on GitHub Real-time Security Alerts**: Sends immediate Slack notifications when compromised keys are detected Comprehensive Security Reports**: Generates detailed reports with exposure information and risk assessment Actionable Remediation Steps**: Provides clear instructions for securing compromised credentials Continuous Monitoring**: Maintains ongoing surveillance of your AWS environment π Workflow Steps List AWS Users: Retrieves all users from your AWS account Split Users for Processing: Processes each user individually Get User Access Keys: Retrieves access keys for each user Filter Active Keys Only: Focuses only on currently active access keys Search GitHub for Exposed Keys: Scans GitHub repositories for exposed access keys Aggregate Search Results: Consolidates and deduplicates search findings Check For Compromised Keys: Determines if any keys have been exposed Generate Security Report: Creates detailed security reports for compromised keys Extract AWS Usernames: Extracts usernames from AWS response for notification Format Slack Alert: Prepares comprehensive Slack notifications Send Slack Notification: Delivers alerts with actionable information Continue Scanning: Maintains continuous monitoring cycle π οΈ Setup Requirements Prerequisites Active n8n instance AWS account with IAM permissions GitHub account/token for searching repositories Slack workspace for notifications Required Credentials AWS Credentials: IAM user with permissions to list users and access keys Access Key ID and Secret Access Key GitHub Credentials: Personal Access Token with search permissions Slack Credentials: Webhook URL for your notification channel βοΈ Configuration AWS Configuration: Configure the "List AWS Users" node with your AWS credentials Ensure proper IAM permissions for listing users and access keys GitHub Configuration: Set up the "Search GitHub for Exposed Keys" node with your GitHub token Adjust search parameters if needed Slack Configuration: Configure the Slack node with your webhook URL Customize notification format if desired π Usage Running the Workflow Manual Execution: Click "Execute Workflow" to run an immediate scan Scheduled Execution: Set up a schedule to run periodic scans (recommended daily or weekly) Repository Compatibility This workflow is compatible with both public and private GitHub repositories to which you have access. It will scan all repositories you have permission to view based on your GitHub credentials. Handling Alerts When a compromised key is detected: Review the Slack notification for details about the exposure Follow the recommended remediation steps: Deactivate the compromised key immediately Create a new key if needed Investigate the exposure source Update any services using the compromised key β οΈ Disclaimer This workflow template is provided for reference purposes only to demonstrate how to automate AWS IAM key exposure scanning. Please note: The scanning process may produce false positives as it only matches potential AWS access key patterns Always verify any reported exposures manually before taking action Disabling or deleting access keys without proper verification could have significant negative impacts on your environment Understand which systems and applications rely on identified access keys before deactivating them This template should be customized to fit your specific environment and security policies IMPORTANT: Use this workflow with caution and only after thoroughly understanding your AWS environment. The authors of this template are not responsible for any disruptions or damages resulting from its use. π Security Considerations This workflow requires access to sensitive AWS credentials Store all credentials securely within n8n Review and rotate access keys regularly π Customization Options Adjust GitHub search parameters for more targeted scanning Customize Slack notification format and content Modify security report generation for your specific needs Integrate with additional notification channels (email, MS Teams, etc.) Optional: Enabling Interactive Slack Buttons The Slack Block Kit notification format supports interactive buttons that can be implemented if you want to perform actions directly from Slack: Disable Key: This button can be configured to automatically disable the compromised AWS IAM access key View Details: This button can be set up to show additional information about the exposure Acknowledge: This button can be used to mark the alert as acknowledged To make these buttons functional: Set up a Slack Socket Mode App: Create a Slack app in the Slack API Console Enable Socket Mode and Interactive Components Subscribe to the block_actions event to capture button clicks Create an n8n Webhook Endpoint: Add a new webhook node to receive Slack button click events Create separate workflows for each button action Implement AWS Key Disabling: For the "Disable Key" button, create a workflow that uses the n8n HTTP Request node to call the AWS IAM UpdateAccessKey API Example HTTP request that can be implemented in n8n: Method: POST URL: https://iam.amazonaws.com/ Query Parameters: Action: UpdateAccessKey AccessKeyId: AKIAIOSFODNN7EXAMPLE Status: Inactive UserName: {{$json.username}} Version: 2010-05-08 Update the Slack Message Format: Modify the Format Slack Alert node to include your webhook URL in the button action values Add callback_id and action_id values to identify which button was clicked This implementation allows for immediate response to security incidents directly from the Slack interface, reducing response time and improving security posture.