by Patrick Siewert
đĄď¸ Evaluate Guardrails Node Accuracy with Automated Test Suite This workflow benchmarks the n8n Guardrails node across multiple safety categories -including PII, NSFW, jailbreak attempts, secret keys, and unsafe URLs. It runs 36 structured test cases, classifies each as PASS or VIOLATION, calculates accuracy metrics, and emails a detailed HTML report. đ How it works The workflow loops through 36 predefined test prompts. Each prompt is checked by the Guardrails node for violations. Results are recorded as PASS or VIOLATION. The system calculates metrics (accuracy, precision, recall, F1). A formatted Markdown â HTML report is generated and sent via Gmail. âď¸ Set up steps Add your OpenAI and Gmail credentials in n8n. Replace YOUR_MAIL_HERE in the Gmail node with your own address. (Optional) Change the model in the OpenAI Chat Model node. Default: gpt-4o-mini You can switch to gpt-5 or another available model if needed. Click Execute Workflow: test cases will run automatically. Check your inbox for the results. đ§ Who itâs for AI safety testers and workflow developers n8n users experimenting with the Guardrails node Teams validating LLM moderation, filtering, or compliance setups đ§Š Requirements n8n v1.119+ Guardrails node enabled OpenAI credentials (optional but recommended) Email integration (Gmail or SendGrid) đĄ Why itâs useful Use this test suite to understand how accurately the Guardrails node identifies unsafe content across different categories. The generated metrics help you fine-tune thresholds, compare models, and strengthen AI moderation workflows. Example result
by Rahul Joshi
Description Synchronize OKRs (Objectives and Key Results) between Monday.com and Jira to automatically calculate progress variance, update dashboards, and share variance reports via Slack and Outlook. This workflow ensures teams have accurate, real-time visibility into performance metrics and project alignment â without manual reconciliation. đŻđđŹ What This Template Does Step 1: Triggers daily at a scheduled time to fetch the latest OKRs from Monday.com. â° Step 2: Extracts Key Results and their linked Jira epic keys from the OKR board. đ Step 3: Fetches corresponding Jira epic details such as status, assignee, and last updated date. đ§Š Step 4: Merges Monday.com KR data with Jira epic progress through SQL-style joins. đ Step 5: Calculates real-time progress and variance against target goals. đ Step 6: Updates Monday.com KR items with actual progress, variance percentage, and status (âOn Trackâ, âAt Riskâ, or âAheadâ). đ Step 7: Aggregates all KR data into a consolidated report for communication. đŚ Step 8: Sends formatted variance reports to Slack and Outlook, with summaries of owner, progress, and variance metrics. đ˘ Key Benefits â Automates end-to-end OKR and Jira synchronization â Eliminates manual progress tracking errors â Provides daily visibility on team and project health â Enables proactive risk detection via variance thresholds â Keeps all stakeholders updated via Slack and Outlook â Centralizes OKR performance metrics for reporting Features Daily scheduled trigger for automatic OKR sync Monday.com â Jira data integration via API Real-time variance computation logic Automatic updates of OKR fields in Monday.com SQL-style data merging and aggregation Slack notification with variance summaries Outlook email digest with formatted HTML tables Requirements Monday.com API credentials with board access Jira API credentials with permission to view epics Slack Bot token with chat:write permissions Microsoft Outlook OAuth2 credentials for sending emails Environment variables for board, channel, and recipient configuration Target Audience Product and engineering teams managing OKRs across platforms đŻ Project managers tracking cross-tool performance metrics đ Leadership teams needing automated OKR reporting đź Operations and strategy teams monitoring execution health đ§ Step-by-Step Setup Instructions Connect your Monday.com, Jira, Slack, and Outlook credentials in n8n. đ Replace MONDAY_BOARD_ID, GROUP_ID, and column identifiers with your own. đ§Š Set environment variables for SLACK_CHANNEL_ID and REPORT_RECIPIENT_EMAIL. đŹ Adjust the cron expression to define your sync frequency (e.g., daily at 9 AM). â° Test the workflow with a single OKR item to confirm successful synchronization. đ§ Enable the workflow to automate daily OKR variance tracking and reporting. â
by WeblineIndia
Detect duplicate candidates by email/phone from Gmail to Slack using Google Sheets This workflow automatically detects duplicate job applicants by checking incoming emails from Gmail against existing records in Google Sheets. If a candidate's email is already found in the sheet, it sends an alert to Slack; otherwise, it adds the candidate to the sheet. Whoâs it for HR and recruitment teams processing candidate emails manually Startups or SMEs handling job applications via Gmail Anyone who wants to automate resume collection and deduplication Teams using Slack and Google Workspace How it works Triggers every few minutes via the Schedule Trigger node Fetches recent emails labeled "applicant" from Gmail Extracts candidate details from the email body using regex Reads all existing rows from the Google Sheet Compares the candidateâs email with existing entries If duplicate â Sends a Slack alert If new â Appends to the Google Sheet How to set up Label candidate emails in Gmail with a label like applicant Connect Gmail, Google Sheets, and Slack credentials in n8n Create a Google Sheet with these columns: candidate_name, candidate_email, candidate_phone, role_applied, years_of_experience, recruiter, resume_url, source_email Import the workflow JSON Update: Gmail label ID Google Sheet ID Slack channel or user Activate the workflow Requirements n8n (self-hosted or cloud) Gmail account with access to labeled application emails Google Sheet to store candidates Slack account with chat:write scope Basic regex familiarity (optional) How to customize Change comparison logic to include phone numbers. Add fallback logic to check for similar names. Add filters for roles, experience levels. Forward resumes to Drive or Notion. Trigger an approval flow for screened candidates. Addâons Google Drive: Upload parsed resumes. Notion / Airtable: Store structured candidate records. Webhooks: Forward to ATS or CRM. PDF parsers: Extract data from attachments. Use Case Examples | Use Case | Description | | ------------------- | ----------------------------------------------------- | | Resume deduplication | Avoid processing the same applicant twice | | Auto Slack alert | Instantly notify recruiter of repeat candidates | | Centralized tracking | Keep candidate records in Sheets for filtering/export | | Passive sourcing | Run hourly checks on labeled Gmail inboxes | Common troubleshooting | Issue | Possible Cause | Solution | | ------------------------ | ------------------------------------------ | -------------------------------------------------------------- | | Slack message not sent | Invalid Slack token / channel not selected | Reauthorize Slack connection and select correct user/channel | | Google Sheet not updated | Sheet ID or tab name is incorrect | Double-check the Sheet URL and worksheet tab | | Email data not extracted | Email body format doesnât match regex | Adjust regex in the "Code" node | | Nothing happens | Gmail label or date filter is too strict | Ensure emails exist with the right label in the last X minutes | Need Help? Need help setting it up or tweaking regex for your custom email format? Weâre happy to help â just ask! Want to add phone number duplication checks or auto-resume upload to Google Drive? Our Automation team at WeblineIndia can guide you step-by-step.
by Intuz
This n8n template from Intuz provides a complete and automated solution for instant team-wide financial visibility. It actively monitors QuickBooks and, upon detecting a new invoice, immediately sends a detailed alert to your chosen Slack channel. For customized reporting, the workflow can pull specific keywords or data like the customer name, invoice amount, and due date directly into the Slack message, creating a complete, real-time feed of your company's sales activity. Use Cases Sales Team Visibility:** Instantly notify the sales channel when an invoice is generated for a deal they closed. Finance & Ops Sync:** Keep the finance team aware of all billing activities as they happen in a dedicated channel. Account Management:** Alert account managers when invoices are sent to their clients, allowing for proactive follow-up. Executive Dashboard:** Create a high-level #billing-feed channel for leadership to monitor revenue-generating activities in real time. How it Works 1. Instant Webhook Trigger: The workflow begins when an invoice is created or updated in QuickBooks. A configured webhook in your Intuit Developer Portal sends a real-time notification to n8n, instantly activating the flow. 2. Fetch Full Invoice Details: The initial webhook payload only contains a basic event notification. This node uses the invoice ID from that payload to query the QuickBooks API and retrieve the full invoice details, such as the customer's name, due date, and domain. 3. Format Key Data: A simple but essential Code node takes the raw data from QuickBooks and cleans it up. It extracts only the most important fields (ID, Domain, Customer Name, Due Date) and organizes them for the next step. 4. Send Slack Notification: The final node crafts a human-readable message and posts it to your chosen Slack channel. The message is dynamically populated with the invoice data, providing a clear and concise update for the whole team. For example: Invoice having ID: 160 having the Domain: QBO for the customer Rondonuwu Fruit and Vegi which is due on 2025-09-07 has been generated successfully. Setup Instructions To get this workflow running, follow these configuration steps: 1. Credentials: QuickBooks: Connect your QuickBooks account credentials to n8n. Slack: Connect your Slack account using OAuth2 credentials. 2. QuickBooks Webhook Configuration: First, activate this n8n workflow. This will make the webhook URL live. Copy the Production URL from the QuickBooks Webhook node. Log in to your Intuit Developer Portal, navigate to the webhooks section for your application, and paste the URL. Ensure you subscribe to Invoice events (e.g., Create, Update, etc.). 3. Node Configuration: Get an invoice: No configuration needed; it will automatically use your QuickBooks credentials. Send a message (Slack): In the parameters, select the Slack Channel where you want the notifications to be posted. Support If you need help setting up this workflow or require a custom version tailored to your specific use case, please feel free to reach out to the template author: Website: https://www.intuz.com/services Email: getstarted@intuz.com LinkedIn: https://www.linkedin.com/company/intuz Get Started: https://n8n.partnerlinks.io/intuz For Custom Worflow Automation Click here- Get Started
by Oneclick AI Squad
This workflow automatically tracks shipments across multiple courier services, updates Google Sheets, and notifies customers via WhatsApp/Email when status changes. Good to know Runs daily at 9 AM and only sends notifications when shipment status actually changes API costs may apply for courier tracking (Delhivery, DHL) and WhatsApp notifications Requires Google Sheet with proper column structure and valid API credentials Currently supports Delhivery and DHL APIs but easily expandable How it works Daily Trigger**: Cron node runs workflow every day at 9 AM Get Shipments List**: Fetches all shipment data from Google Sheet Filter Active Shipments**: Excludes delivered orders and empty tracking numbers Route by Courier**: Directs shipments to appropriate API (Delhivery or DHL) Track via APIs**: Makes real-time tracking calls to courier services Parse Tracking Data**: Normalizes different API responses and detects status changes Check Status Change**: Only processes shipments with actual status updates Update & Notify**: Simultaneously updates Google Sheet, sends WhatsApp message, and email notification Execution Summary**: Logs workflow performance metrics How to use Import the JSON workflow into n8n Create Google Sheet with columns: tracking_number, order_id, customer_email, customer_phone, courier, status, location, last_updated, estimated_delivery Configure credentials: Google Sheets OAuth2, Delhivery API, DHL API, WhatsApp API, SMTP Replace YOUR_GOOGLE_SHEET_ID with actual sheet ID Test workflow manually before enabling daily schedule Requirements Google Sheets API access Courier API keys (Delhivery, DHL) WhatsApp Business API credentials SMTP email service n8n instance (self-hosted or cloud) Customizing this workflow Add courier services**: Create new HTTP Request node and update routing logic Change frequency**: Modify cron expression (hourly: 0 * * * *, twice daily: 0 9,17 * * *) Customize notifications**: Edit WhatsApp/Email templates in respective nodes Add CRM integration**: Insert CRM update node after status change detection
by Rapiwa
Who is this for? This workflow is for online store owners, support teams, and marketing staff who want to automatically verify WhatsApp numbers and send order invoice links or personalized order updates to customers. Itâs built against WooCommerce order webhooks but can be adapted to Shopify or other e-commerce platforms that provide billing and line_items. What this Workflow Does Receives order events (Webhook / WooCommerce order.updated). Normalizes the payload into a compact object: { data: { customer, products, invoice_link } } via a Code node. Iterates items in batches (SplitInBatches) to control throughput. Cleans phone numbers (removes non-digits) and verifies WhatsApp registration using Rapiwa (/api/verify-whatsapp). Sends templated WhatsApp messages through Rapiwa (/api/send-message) for verified numbers. Logs every attempt into Google Sheets: one sheet for verified & sent rows, another for unverified & not sent rows. Uses a Wait node to throttle and loop back into the batch processor. Key Features Trigger-based automation (Webhook or WooCommerce trigger). Payload normalization and mapping via JavaScript Code nodes. Controlled batching (SplitInBatches) to avoid rate limits. Pre-send verification of WhatsApp numbers using Rapiwa. Conditional branching with the IF node to separate verified vs unverified flows. Personalized message templates that pull customer and product fields from the mapped data. Logging and audit trail stored in Google Sheets (two separate append flows). How to Use â Step-by-step Setup Add credentials in n8n Rapiwa: Create an HTTP Bearer credential and paste your Bearer token (example name used in the flow: Rapiwa Bearer Auth). Google Sheets: Create an OAuth2 credential (example: Google Sheets). WooCommerce: Add WooCommerce API credentials for the trigger (or configure Shopify credentials if adapting). Import / configure nodes in n8n Webhook (or WooCommerce Trigger): receive order payloads. Example Webhook path is present in the exported flow. Code node Format Webhook Response Data: map body.billing, body.line_items, body.payment_url into { data: { customer, products, invoice_link } }. Code node Clean WhatsApp Number: ensure the phone number is a string and strip non-digits: String(rawNumber).replace(/\D/g, ""). HTTP Request Check valid whatsapp number Using Rapiwa: POST to https://app.rapiwa.com/api/verify-whatsapp with { number }. Use the Rapiwa Bearer credential. IF If: check verification result. The flow compares {{$json.data.exists}} to "true" in the exported flow; normalize types if your API returns booleans. HTTP Request Rapiwa Sender: POST to https://app.rapiwa.com/api/send-message with number, message_type: 'text', and a templated message (see message template in the flow). Google Sheets Store State of Rows in Verified & Sent and Store State of Rows in Unverified & Not Sent Google Sheet Column Structure Create these columns exactly (the Google Sheets nodes in the flow expect these names): A Google Sheet formatted like this ⤠sample | Name | Number | Email | Address | Product Title | Product ID | Size | Quantity | Total Price | Product Image | Invoice Link | Product Status | Validity | Status | |-----------------|---------------|-------------------|--------------|------------------------------------------------|------------|------|----------|----------------|--------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------|----------------|------------|----------| | Abdul Mannan | 8801322827799 | contact@spagreen.net | mirpur dohs | Air Force 1 Reigning Champ Dark Grey 1:1 - 40 | 251 | 40 | 1 | BDT 5800.00 | | Invoice | on-hold | verified | sent | | Abdul Mannan | 8801322827799 | contact@spagreen.net | mirpur dohs | Air Force 1 Reigning Champ Dark Grey 1:1 - 40 | 251 | 40 | 1 | BDT 5800.00 | | Invoice | on-hold | unverified | not sent | Customization Ideas Adapt the Code mapping node for Shopify payloads or other marketplaces. Iterate and include multiple products in the message instead of using products[0]. Add filters in the Code node (e.g., only process orders with total > 5000). Add fallback channels (SMS or email) for unverified numbers. Persist logs into a database for analytics and retention beyond Google Sheets. Add admin notifications (Slack, email) at the end of each run. Useful Links Dashboard:** https://app.rapiwa.com Official Website:** https://rapiwa.com Documentation:** https://docs.rapiwa.com Support & Help WhatsApp**: Chat on WhatsApp Discord**: SpaGreen Community Facebook Group**: SpaGreen Support Website**: https://spagreen.net Developer Portfolio**: Codecanyon SpaGreen
by Daniel Shashko
How it Works This workflow automatically monitors your Google Ads campaigns every day, analyzing performance with AI-powered scoring to identify scaling opportunities and catch issues before they drain your budget. Each morning at 9 AM, it fetches all active campaign data including clicks, impressions, conversions, costs, and conversion rates from your Google Ads account. The AI analysis engine evaluates four critical dimensions: CTR (click-through rate) to measure ad relevance, conversion rate to assess landing page effectiveness, cost per conversion to evaluate profitability, and traffic volume to identify scale-readiness. Each campaign receives a performance score (0-100 points) and is automatically categorized as Excellent (75+), Good (55-74), Fair (35-54), or Underperforming (0-34). High-performing campaigns trigger instant Slack alerts to your PPC team with detailed scaling recommendations and projected ROI improvements, while underperforming campaigns generate urgent alerts with specific optimization actions. Every campaign is logged to your Google Sheets dashboard with daily metrics, and the system generates personalized email reportsâaction-oriented scaling plans for top performers and troubleshooting guides for campaigns needing attention. The entire analysis takes minutes, providing your team with daily intelligence reports that would otherwise require hours of manual spreadsheet work and data analysis. Who is this for? PPC managers and paid media specialists drowning in campaign data and manual reporting Marketing agencies managing multiple client accounts needing automated performance monitoring E-commerce brands running high-spend campaigns who can't afford budget waste Growth teams looking to scale winners faster and pause losers immediately Anyone spending $5K+ monthly on Google Ads who needs data-driven optimization decisions Setup Steps Setup time:** Approx. 15-25 minutes (credential configuration, dashboard setup, alert customization) Requirements:** Google Ads account with active campaigns Google account with a tracking spreadsheet Slack workspace SMTP email provider (Gmail, SendGrid, etc.) Create a Google Sheets dashboard with two tabs: "Daily Performance" and "Campaign Log" with appropriate column headers. Set up these nodes: Schedule Daily Check: Pre-configured to run at 9 AM daily (adjust timing if needed). Fetch Google Ads Data: Connect your Google Ads account and authorize API access. AI Performance Analysis: Review scoring thresholds (CTR, conversion rate, cost benchmarks). Route by Performance: Automatically splits campaigns into high-performers vs. issues. Update Campaign Dashboard: Connect Google Sheets and select your "Daily Performance" tab. Log All Campaigns: Select your "Campaign Log" tab for historical tracking. Slack Alerts: Connect workspace and configure separate channels for scaling opportunities and performance issues. Generate Action Plan: Customize email templates with your brand voice and action items. Email Performance Report: Configure SMTP and set recipient email addresses. Credentials must be entered into their respective nodes for successful execution. Customization Guidance Scoring Weights:** Adjust point values for CTR (30), conversion rate (35), cost efficiency (25), and volume (10) in the AI Performance Analysis node based on your business priorities. Performance Thresholds:** Modify the 75-point Excellent threshold and 55-point Good threshold to match your campaign quality distribution and industry benchmarks. Benchmark Values:** Update CTR benchmarks (5% excellent, 3% good, 1.5% average) and conversion rate targets (10%, 5%, 2%) for your industry. Alert Channels:** Create separate Slack channels for different alert types or route critical alerts to Microsoft Teams, Discord, or SMS via Twilio. Email Recipients:** Configure different recipient lists for scaling alerts (executives, growth team) vs. optimization alerts (campaign managers). Schedule Frequency:** Change from daily to hourly monitoring for high-spend campaigns, or weekly for smaller accounts. Additional Platforms:** Duplicate the workflow structure for Facebook Ads, Microsoft Ads, or LinkedIn Ads with platform-specific nodes. Budget Controls:** Add nodes to automatically pause campaigns exceeding cost thresholds or adjust bids based on performance scores. Once configured, this workflow will continuously monitor your ad spend, identify opportunities worth thousands in additional revenue, and alert you to issues before they waste your budgetâtransforming manual reporting into automated intelligence. Built by Daniel Shashko Connect on LinkedIn
by KlickTipp
Community Node Disclaimer This workflow uses KlickTipp community nodes, available for self-hosted n8n instances only. Whoâs it for Digital marketers, social media managers, and coaches who engage leads through Instagram DMs and want to automate personalized outreach, lead enrichment, and segmentation in KlickTipp â without manual follow-ups or data entry. How it works This workflow creates a complete Instagram-to-email enrichment loop â starting with personalized DM outreach, capturing responses via JotForm, enriching profile data, and syncing everything with KlickTipp. When a workflow trigger or campaign action occurs, it: Sends a personalized Instagram DM inviting the user to fill out a JotForm. Listens for form submissions in real time. Retrieves the leadâs Instagram profile data via the Facebook Graph API. Matches the username to the Instagram DM ID in a Google Sheet. Generates AI-powered marketing insights using OpenAI. Subscribes or updates the lead in KlickTipp, mapping enriched fields and tags. The result: every DM-initiated lead is captured, analyzed, and segmented â ready for intelligent follow-ups and personalized campaigns. How to set up Connect accounts for KlickTipp, JotForm, Google Sheets, Facebook Graph API, and OpenAI. Set up a KlickTipp tag or campaign trigger to initiate the DM sending. Create KlickTipp fields for Instagram data (e.g., Bio, Follower count, Insights). Add tags: Instagram | Outreach, Instagram | Enrichment, Instagram | Username found. Test a sample flow: send a DM â fill the JotForm â verify data enrichment in KlickTipp. đĄ Pro Tip: Personalize the DM message template and test both personal and business accounts to ensure optimal engagement and AI insight quality. Requirements Meta (Instagram) Business Account Facebook Graph API with instagram_basic and pages_show_list permissions KlickTipp account with API access OpenAI connection (gpt-4.1-mini model) (Optional) Active Instagram Page connected to your Facebook App for DM messaging How to customize Adjust DM content and message timing for different campaigns or audiences. Edit tags and field mappings in KlickTipp to match your segmentation logic. Modify the AI prompt to emphasize tone, purchase intent, or niche interests. Add conditional logic (e.g., followers > 1,000 â influencer tag). Extend the flow to LinkedIn, website tracking, or CRM syncing for multi-channel enrichment.
by Pawel
Description Very straightforward workflow. It checks the Epic Games website if the HTML container with free games has changed. If it did then it will send a notification to Discord with a list of embeds containing those games. Requirements You will need to install n8n-nodes-puppeteer community node Setup There are two nodes that notify Discord. One at the very end and one in the loop in case of error. Configure them with a webhook or a bot, whatever suits you. That's all.
by KlickTipp
Community Node Disclaimer: This workflow uses KlickTipp community nodes. How It Works This workflow connects an MCP Server with the KlickTipp contact management platform and integrates it with an LLM (e.g. Claude etc.) to enable intelligent querying and segmentation of contact data. It covers all major KlickTipp API endpoints, providing a comprehensive toolkit for automated contact handling and campaign targeting. Key Features MCP Server Trigger: Initiates the workflow via the MCP server, listening for incoming requests related to contact queries or segmentation actions. LLM Interaction Setup: Interacts with an OpenAI or Claude model to handle natural language queries such as contact lookups, tagging, and segmentation tasks. KlickTipp Integration: Complete set of KlickTipp API endpoints included: Contact Management: Add, update, get, list, delete, and unsubscribe contacts. Contact Tagging: Tag, untag, list tagged contacts. Tag Operations: Create, get, update, delete, list tags. Opt-In Processes: List and retrieve opt-in process details. Data Fields: List and get custom data fields. Redirects: Retrieve redirect URLs. Use Cases Supported: Query contact information via email or name. Identify and segment contacts by city, region, or behavior. Create or update contacts from the provided data. Dynamically apply or remove tags to initiate campaigns. Automate targeted outreach based on contact attributes. Setup Instructions Install and Configure Nodes: Set up MCP Server. Configure the LLM connection (e.g., Claude Desktop configuration). Add and authenticate all KlickTipp nodes using valid API credentials. Define Tagging and Field Mapping: Identify which fields and tags are relevant to your use cases. Ensure necessary tags and custom fields are already created in KlickTipp. Workflow Logic: Trigger via MCP Server: A prompt or webhook call activates the server listener. Query Handling via LLM Agent: AI interprets the natural language input and determines the action. Contact Search & Segmentation: Searches contacts using identifiers (email, address) or criteria. Data Operations: Retrieves, updates, or manages contact and tag data based on interpreted command. Campaign Preparation: Applies tags or sends campaign triggers depending on query results. Benefits: AI-Powered Automation:** Reduces manual contact search and tagging efforts through intelligent processing. Scalable Integration:** Built-in support for full range of KlickTipp operations allows diverse use-case handling. Data Consistency:** Ensures structured data flows between MCP, AI, and KlickTipp, minimizing errors. Testing and Deployment: Use defined prompts such as: âTell me something about the contact with email address Xâ âTag all contacts from region Yâ âSend campaign Z to customers in area Aâ Validate expected actions in KlickTipp after prompt execution. Notes: Customization:** Adjust tag logic, AI prompts, and contact field mappings based on project needs. Extensibility:** The template can be expanded with further logic for Google Sheets input or campaign feedback loops Resources: Use KlickTipp Community Node in n8n Automate Workflows: KlickTipp Integration in n8n
by Jorge MartĂnez
Generate social posts from GitHub pushes to Twitter and LinkedIn On each GitHub push, this workflow checks if the commit set includes README.md and CHANGELOG.md, fetches both files, lets an LLM generate a Twitter and LinkedIn post, then publishes to Twitter and LinkedIn (Person). Apps & Nodes Trigger:** Webhook Logic:** IF, Merge, Aggregate GitHub:** Get Repository File (Ă2) Files:** Extract from File (text) (Ă2) AI:** OpenAI Chat Model â LLM Chain (+ Structured Output Parser) Publish:** Twitter, LinkedIn (Person) Prerequisites GitHub:** OAuth2 or PAT with repo read. OpenAI:** API key. Twitter:* OAuth2 app with *Read and Write; scopes tweet.read tweet.write users.read offline.access. LinkedIn (Person):* OAuth2 credentials; *required scope:** w_member_social, openid. Setup GitHub Webhook: Repo â Settings â Webhooks Payload URL: https://<your-n8n-domain>/webhook/github/push Content type: application/json ⢠Event: Push ⢠Secret (optional) ⢠Branches as needed. Credentials: Connect GitHub, OpenAI, Twitter, and LinkedIn (Person). How it Works Webhook receives GitHub push payload. IF checks that README and CHANGELOG appear in added/modified. GitHub (Get Repository File) pulls README.md and CHANGELOG.md. Extract from File (text) converts both binaries to text. Merge & Aggregate combines into one item with both contents. LLM (OpenAI + Parser) returns a JSON with twitter and linkedin. Twitter posts the tweet. LinkedIn (Person) posts the LinkedIn text.
by n8n Team
This workflow adds new HubSpot contacts to the Mailchimp email list. Prerequisites HubSpot account and HubSpot credentials Mailchimp account and Mailchimp credentials How it works Cron node triggers this workflow every day at 7:00. HubSpot node searches for the new contacts created. Mailchimp node creates a new contact in a certain audience and add a 'subscribed' status.