Mailbeam
API · Correction

Email Typo Correction API

A single mistyped domain means a signup that never activates. Return an instant 'did you mean' suggestion so the user corrects it in one tap.

What Mailbeam checks

Every verification runs 7 checks in parallel and returns a structured result in under 100ms.

Domain suggestions in the response

When the domain is a near-miss of a known provider (gmal.com, yaho.com, hotmial.com), the response includes a corrected suggestion field.

Edit-distance matching

Suggestions are driven by proximity to a large set of common mailbox and TLD spellings, not a tiny hardcoded list, so long-tail typos are caught too.

TLD repair

Fixes truncated or wrong top-level domains — gmail.co and gmail.cm both resolve to a gmail.com suggestion.

Preserves the local-part

Only the domain is corrected; jane.doe stays jane.doe so the suggestion is safe to accept verbatim.

One-tap UX

Surface the suggestion as a clickable prompt so users fix the address without retyping the whole thing.

Conservative by design

Suggestions only fire on high-confidence near-misses, so valid uncommon domains are never second-guessed.

How it works

1

POST the typed address

Send the raw address to /v1/verify as the user submits — or on blur for inline correction.

2

Domain compared to known providers

The domain is measured against a large corpus of common providers and TLDs using edit distance.

3

High-confidence match returns a suggestion

If a close, unambiguous match exists, the response carries suggestion: 'jane.doe@gmail.com'.

4

You prompt the user

Show 'Did you mean jane.doe@gmail.com?' and let them accept it in a single tap before the account is created.

Integrate in minutes

Suggest a correctiontypescript
const res = await fetch("https://api.mailbeam.dev/v1/verify", {
  method: "POST",
  headers: { Authorization: `Bearer ${process.env.MAILBEAM_KEY}` },
  body: JSON.stringify({ email }),
});
const { suggestion } = await res.json();

if (suggestion) {
  // e.g. suggestion = "jane.doe@gmail.com"
  showPrompt(`Did you mean ${suggestion}?`, { onAccept: () => setEmail(suggestion) });
}

When to use it

Signup forms

The moment a typo does the most damage — a bad address here breaks activation and every later email.

Checkout email fields

Recover the order confirmation that would otherwise bounce because of a slipped keystroke.

Lead capture

Stop losing marketing-qualified leads to a mistyped domain on a gated form.

Account email changes

Confirm the new address is what the user meant before you switch their notifications over.

Frequently asked questions

Ready to integrate?

Free tier includes 1,000 verifications/month. No credit card required.