DNS Lead Scanner with Video Tracking
Complete lead management system with DNS passive scanning to detect SaaS vendors, video watch time tracking, automated ghost email protocol, and Calendly booking integration with pre-audit emails.
Build ONE complete n8n workflow that implements the following operational architecture end-to-end. šØ HARD CONSTRAINTS (NON-NEGOTIABLE): USE FREE / PUBLIC APIs ONLY NO Clearbit, NO Apollo enrichment, NO paid SaaS APIs Allowed: DNS lookups, Webhooks, Google Sheets, Firebase (free tier), SMTP/Gmail, Calendly (free), JavaScript logic Use native n8n nodes wherever possible Use Code nodes only when explicitly required All logic must be deterministic and idempotent No placeholders, no mock logic GLOBAL DATA MODEL (SINGLE SOURCE OF TRUTH) Store leads in Google Sheets OR Firestore (free tier) with these fields: lead_id (string, unique) first_name last_name email company company_domain detected_vendors (array of strings) status (enum): NEW READY_FOR_VIDEO VIDEO_WATCHING GHOST_SENT BOOKED BOOKED_PREP_SENT DO_NOT_CONTACT max_watch_time_seconds (number) calendly_booking_time (datetime) ghost_email_sent_at (datetime | null) WORKFLOW A: INTAKE & INTEL (DNS PASSIVE SCAN ā FREE ONLY) Trigger: Webhook OR Manual Trigger receiving: lead_id email company company_domain Steps: Validate company_domain exists If missing or invalid ā terminate workflow Code Node (JavaScript): Perform DNS lookups using Node.js libraries: MX records TXT records NO external APIs Parse records for SaaS fingerprints: Google Workspace Microsoft 365 Salesforce HubSpot Zendesk Atlassian SendGrid Mailgun DocuSign Zoom Slack Intercom Output: detected_vendors (unique array) Write detected_vendors to lead storage Update status = READY_FOR_VIDEO End workflow WORKFLOW B: VIDEO HEARTBEAT + GHOST PROTOCOL (NO TRACKING SDKs) Trigger: Webhook receiving JSON: lead_id time_seconds Steps: Fetch lead by lead_id If status == DO_NOT_CONTACT ā terminate Update: max_watch_time_seconds = max(existing, time_seconds) If status == READY_FOR_VIDEO: Update status = VIDEO_WATCHING Condition Check: IF: max_watch_time_seconds > 45 status NOT IN [BOOKED, BOOKED_PREP_SENT] ghost_email_sent_at IS NULL THEN: Send Email (SMTP or Gmail node ā free) Subject: "The $20k guarantee" Body must include: "System shows you reviewed the audit brief but didn't deploy the stress test." Two bullet options: skepticism bandwidth Reply instruction: "Reply LATER to pause" Sender name: Sambit Update: ghost_email_sent_at = now status = GHOST_SENT ELSE: 8. Do nothing WORKFLOW C: CALENDLY ā PRE-AUDIT EMAIL (FREE TIER) Trigger: Calendly Invitee Created Webhook (free) Steps: Extract invitee email Lookup lead by email If lead not found ā terminate Update: status = BOOKED calendly_booking_time = now Wait Node: Delay exactly 120 seconds Fetch detected_vendors Construct vendor sentence: If vendors exist: "I've already run a passive scan on {{company}}'s public DNS records. I can see traces of {{vendor_1}}, {{vendor_2}}, {{vendor_3}} not fully behind SSO." Max 3 vendors If none: "Scanning your public headers suggests a fragmented SaaS footprint." Send Email (SMTP/Gmail): Subject: "Pre-audit reqs: {{company}}" Body: "Saw the booking, {{first_name}}." Vendor sentence "No prep needed. Have your primary admin email open during the call." Signature: Sambit Update status = BOOKED_PREP_SENT SAFETY & GOVERNANCE (MANDATORY) Every email node must check: status != DO_NOT_CONTACT Ghost Email must be impossible to send twice No workflow may ever downgrade status All logic must be auditable via logs OUTPUT INSTRUCTIONS Generate the full n8n workflow graph Include: Node names Conditions Code node contents Field mappings Do NOT explain Do NOT summarize Do NOT add commentary Build the workflow now.
English: Build a complete lead management workflow with DNS passive scanning for SaaS vendor detection, video heartbeat tracking, ghost email protocol for engaged leads, and Calendly integration with automated pre-audit emails.
Loading workflow preview...