Mailbeam
Benefit · Real-time

Real-Time Email Verification

Catch invalid, disposable, and mistyped emails at the point of entry — not on your next campaign. One inline API call returns a verdict in under 100ms.

What Mailbeam checks

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

Sub-100ms p99 latency

Fast enough to run synchronously on a signup form without users noticing. No spinner, no blocking the submit button.

Typo suggestions inline

When someone types 'gmal.com', return 'gmail.com' so they fix it before the account is created — recovering conversions you would otherwise lose.

Disposable detection on submit

Reject throwaway inboxes at registration instead of discovering them when your welcome email hard-bounces.

Role-account flagging

Identify info@ and admin@ shared inboxes so you can route or gate them differently from personal addresses.

Structured verdict, not a boolean

Every response carries a deliverable/risky/undeliverable status and a 0-100 score, so you decide the threshold instead of us.

Graceful timeout handling

If an unknown mail server is slow, the API returns an 'unknown' status quickly rather than hanging your form submission.

How it works

1

User submits the form

Your frontend POSTs the typed address to your backend, or calls Mailbeam directly with a publishable key.

2

Parallel checks fire

Syntax, MX, SMTP, disposable, role, and free-provider checks run concurrently — not sequentially — to hold the sub-100ms budget.

3

A verdict returns inline

You receive a status and score before the request completes, so the decision happens inside the same round-trip.

4

You act on the result

Accept the signup, show a typo suggestion, or soft-block a disposable address — all before the user leaves the page.

Integrate in minutes

Signup handlertypescript
// Verify inline on submit — fail open if the API is unreachable.
export async function verifyOnSignup(email: string) {
  try {
    const res = await fetch("https://api.mailbeam.dev/v1/verify", {
      method: "POST",
      headers: {
        Authorization: `Bearer ${process.env.MAILBEAM_KEY}`,
        "Content-Type": "application/json",
      },
      body: JSON.stringify({ email }),
      signal: AbortSignal.timeout(1000),
    });
    const { status, score, suggestion } = await res.json();

    if (suggestion) return { action: "suggest", suggestion };
    if (status === "undeliverable" || score < 40) return { action: "block" };
    return { action: "allow" };
  } catch {
    return { action: "allow" }; // fail open, re-verify via batch later
  }
}

When to use it

Signup and registration

The highest-value moment to verify: a bad email here poisons every downstream email you send that user.

Checkout email fields

A mistyped address means the order confirmation never arrives and a support ticket does.

Waitlist and lead capture

Keep launch lists clean from day one so your first send lands in the inbox, not the spam folder.

In-app email changes

Re-verify when a user updates their address to avoid silently breaking their notifications.

Frequently asked questions

Ready to integrate?

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