{"product_id":"email-signup-validation-n8n-workflow-dns-data-table","title":"Email Signup Validation n8n Workflow: DNS \u0026 Data Table","description":"\u003ch3\u003eValidate signup emails with real DNS + registration signals (and log every check)\u003c\/h3\u003e\n\u003cp\u003eThis n8n workflow exposes a webhook that evaluates an email address during signup using \u003cstrong\u003eCloudflare DNS-over-HTTPS\u003c\/strong\u003e lookups, \u003cstrong\u003eRDAP domain data\u003c\/strong\u003e from \u003cstrong\u003erdap.org\u003c\/strong\u003e, and a \u003cstrong\u003edisposable-domain blocklist\u003c\/strong\u003e from \u003cstrong\u003eGitHub\u003c\/strong\u003e—then returns an \u003cem\u003eaccept \/ review \/ reject\u003c\/em\u003e verdict with reasons and saves the result to an n8n \u003cstrong\u003eData Table\u003c\/strong\u003e.\u003c\/p\u003e\n\n\u003ch3\u003eWhat this workflow does\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eReceives a POST webhook\u003c\/strong\u003e containing an email address (JSON body, form fields, or query parameter) and normalizes it for consistent checks.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003ePerforms DNS-over-HTTPS checks via Cloudflare\u003c\/strong\u003e: retrieves MX, A, DMARC (TXT), and SPF (TXT) records.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eFetches RDAP registration\/expiry data\u003c\/strong\u003e from \u003cstrong\u003erdap.org\u003c\/strong\u003e to help infer domain age and registration status signals.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eDownloads a disposable-email domain blocklist\u003c\/strong\u003e from \u003cstrong\u003eGitHub\u003c\/strong\u003e and flags disposable domains.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eInterprets DNS\/RDAP outcomes\u003c\/strong\u003e to detect conditions such as \u003cem\u003eNXDOMAIN\u003c\/em\u003e, \u003cem\u003enull MX\u003c\/em\u003e (RFC 7505), mail-to-A fallback, mail provider hints, and domain age.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eGenerates typo suggestions\u003c\/strong\u003e for common mistyped domains (e.g., \u003cem\u003egmial.com → gmail.com\u003c\/em\u003e) using an edit-distance approach.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eChecks prior activity\u003c\/strong\u003e by counting how many times the canonicalized address was checked using the n8n Data Table, then combines this with role-address and policy checks.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eReturns a JSON response\u003c\/strong\u003e with verdict, reasons, key signals, and inserts a log row into the Data Table.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eUse cases\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003eSaaS signup throttling: reduce fake accounts by rejecting disposable or non-routable domains.\u003c\/li\u003e\n  \u003cli\u003eRisk-based onboarding: send suspicious emails to a “review” queue instead of hard-blocking.\u003c\/li\u003e\n  \u003cli\u003eData-driven fraud prevention: keep an audit trail of validation outcomes in an n8n Data Table.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eTechnical details\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eWebhook\u003c\/strong\u003e endpoint (POST) for email validation requests.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eCloudflare DNS-over-HTTPS\u003c\/strong\u003e for MX, A, DMARC (TXT), SPF (TXT).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003erdap.org\u003c\/strong\u003e RDAP lookups for domain registration\/expiry signals.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eGitHub\u003c\/strong\u003e source for disposable-domain blocklist.\u003c\/li\u003e\n  \u003cli\u003en8n nodes: \u003cstrong\u003eset\u003c\/strong\u003e, \u003cstrong\u003ecode\u003c\/strong\u003e, \u003cstrong\u003emerge\u003c\/strong\u003e, \u003cstrong\u003ewebhook\u003c\/strong\u003e, \u003cstrong\u003edata table\u003c\/strong\u003e, and \u003cstrong\u003esticky note\u003c\/strong\u003e.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eData Table setup:\u003c\/strong\u003e create an n8n Data Table named \u003ccode\u003eemail_checks\u003c\/code\u003e with columns \u003ccode\u003eaddress_key\u003c\/code\u003e, \u003ccode\u003eemail\u003c\/code\u003e, \u003ccode\u003edomain\u003c\/code\u003e, \u003ccode\u003everdict\u003c\/code\u003e, \u003ccode\u003ereasons\u003c\/code\u003e, and \u003ccode\u003echecked_on\u003c\/code\u003e.\u003c\/p\u003e","brand":"N8N Commerce","offers":[{"title":"Default Title","offer_id":45931010425011,"sku":"N8N-18978","price":77.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/6279\/6723\/files\/5YGVZoJGtuHQmQk93seDU_EchWOx28.png?v=1788253670","url":"https:\/\/buyflowscripts.com\/products\/email-signup-validation-n8n-workflow-dns-data-table","provider":"N8N Commerce","version":"1.0","type":"link"}