Liking cljdoc? Tell your friends :D

bouncelens.email-check

Check email addresses for bad syntax, typos in the domain (gmial.com -> gmail.com), disposable domains, role addresses, duplicates and domains that do not exist or have no mail server. No API key.

The Clojure version of the free checker at https://bouncelens.com/ - same results. The only network calls are DNS-over-HTTPS lookups (Cloudflare 1.1.1.1) of each domain's MX and A records. It never connects to the recipient's mail server, so it never confirms that a mailbox exists: the best status is :unconfirmed.

(require '[bouncelens.email-check :as ec]) (ec/check-one "jane@gmial.com") ;; => {:status :risky, :did-you-mean "jane@gmail.com", :reasons [...], ...}

Check email addresses for bad syntax, typos in the domain (gmial.com -> gmail.com),
disposable domains, role addresses, duplicates and domains that do not exist or have
no mail server. No API key.

The Clojure version of the free checker at https://bouncelens.com/ - same results.
The only network calls are DNS-over-HTTPS lookups (Cloudflare 1.1.1.1) of each domain's
MX and A records. It never connects to the recipient's mail server, so it never confirms
that a mailbox exists: the best status is :unconfirmed.

  (require '[bouncelens.email-check :as ec])
  (ec/check-one "jane@gmial.com")
  ;; => {:status :risky, :did-you-mean "jane@gmail.com", :reasons [...], ...}
raw docstring

checkclj

(check emails)
(check emails {:keys [lookup disposable concurrency] :or {concurrency 8}})

Check a list of addresses. Each unique domain is looked up once. Results keep the input order. Options: :lookup (fn [domain] -> info), :disposable (set), :concurrency (default 8).

Check a list of addresses. Each unique domain is looked up once. Results keep the input order.
Options: :lookup (fn [domain] -> info), :disposable (set), :concurrency (default 8).
sourceraw docstring

check-oneclj

(check-one email)
(check-one email opts)

Check a single address.

Check a single address.
sourceraw docstring

disposable-domainsclj

Built-in set of disposable (throwaway) email domains, from github.com/disposable-email-domains (CC0).

Built-in set of disposable (throwaway) email domains, from
github.com/disposable-email-domains (CC0).
sourceraw docstring

doh-request-urlclj

(doh-request-url name type)
source

doh-urlclj

DNS-over-HTTPS JSON endpoint (Cloudflare 1.1.1.1).

DNS-over-HTTPS JSON endpoint (Cloudflare 1.1.1.1).
sourceraw docstring

evaluateclj

(evaluate parsed dns disposable)

Check one parsed address against its domain info.

Check one parsed address against its domain info.
sourceraw docstring

http-fetchclj

(http-fetch url)

Default fetch: GET url, returns {:status int :body string}.

Default fetch: GET url, returns {:status int :body string}.
sourceraw docstring

lookup-domainclj

(lookup-domain domain)
(lookup-domain domain fetch)

Look a domain up once: MX first, then A as the fallback delivery target. Returns {:exists :null-mx :mx :provider :a-fallback} or {:error msg}. fetch (optional) replaces the HTTP call, e.g. in tests.

Look a domain up once: MX first, then A as the fallback delivery target.
Returns {:exists :null-mx :mx :provider :a-fallback} or {:error msg}.
`fetch` (optional) replaces the HTTP call, e.g. in tests.
sourceraw docstring

parse-emailclj

(parse-email raw)

Normalise one address (trim, strip mailto: and <>, lower-case the domain, IDN -> punycode) and check its syntax. Returns {:input .. :error msg} or {:input :local :domain :email :unicode-local}.

Normalise one address (trim, strip mailto: and <>, lower-case the domain, IDN -> punycode)
and check its syntax. Returns {:input .. :error msg} or {:input :local :domain :email :unicode-local}.
sourceraw docstring

suggest-domainclj

(suggest-domain domain)

The popular mail domain this one is probably a typo of (gmial.com -> gmail.com), or nil.

The popular mail domain this one is probably a typo of (gmial.com -> gmail.com), or nil.
sourceraw docstring

summarizeclj

(summarize results)

Count a checked list. invalid + risky + unconfirmed + duplicates = total: a duplicate is only counted as a duplicate when it would otherwise be unconfirmed.

Count a checked list. invalid + risky + unconfirmed + duplicates = total: a duplicate is only
counted as a duplicate when it would otherwise be unconfirmed.
sourceraw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
←Move to previous article
→Move to next article
Ctrl+/Jump to the search field
× close