🎬 Introducing BillionVerify Video Tutorials: short guides to verifying emails, free tools, and cleaning leads.Watch videos
Videos

Chapter 1 of 6 · Check on the server

About this video

Responses in this video are real API responses. API keys need a paid account.

Video transcript

  1. Check on the server

    Check the address on your server when the signup form is submitted, and turn away the ones that can't receive mail. When the signup form is submitted, your server sends the address to /verify/single, reads the status, and decides. The browser never talks to the API. Here's a simple rule. Reject invalid, because that mailbox doesn't exist. Reject disposable, because it's a throwaway inbox. Let role, catch-all and unknown through. Those can belong to real people. Why the server? A key in browser code ships to every visitor, and anyone could spend your credits with it. Keys come with a paid account, so keep yours private.

  2. Next.js

    In Next.js, put the check in a route handler. It reads the key from the server environment, posts the email, and returns a 422 with a message when the status is invalid or disposable. Look at the catch. If the call fails or times out, status is empty, and this code lets the signup through. That's a choice made in this example. If you'd rather block, return an error there instead.

  3. React

    React runs in the browser, so it never holds the key. The form posts to your own route, and shows the message when a 422 comes back. In Django, call the Python SDK from clean_email on your form. Raise a validation error for invalid or disposable, and Django shows it next to the field.

  4. Laravel

    In Laravel, write a validation rule. The HTTP client posts the address with the key from your config, and the rule fails for the same two statuses. A connection error just returns, so the form still goes through.

  5. Go

    In Go, the standard library is enough. This handler calls the API, logs the result, and answers 422 for invalid or disposable. Let's run it. Four signups go in. The support and Leo addresses get a welcome. The made-up Gmail address and the Mailinator one get the 422 message. The server log shows why: role, catch-all, invalid and disposable. And every line says credits_used zero. We'd checked these four addresses on this account earlier today. If the same address comes in again within 24 hours, you aren't charged twice. A user who fixes a typo in the password field and resubmits costs nothing extra.

  6. Next steps

    All five use one endpoint. The fields and statuses are documented at billionverify.com/docs. 20 free credits every day you use your account, up to 600 a month. No credit card required. Start at billionverify.com.

Featured in this video

More in API for Developers

All email verification videos

BillionVerify pricing

Start free, then pay for what you verify. Pick a plan or buy credits once.

$8/ month

billed yearly $96

Save 60%$0.0004 / per credit

All 240,000 credits arrive at once. Use them anytime.

Choose your credits

Get 240,000 credits

Included in every paid plan

  • 240,000 credits / year
  • Single email verification
  • Bulk email verification
  • Email Finder
  • Bulk Email Finder
  • Company Search
  • Live SMTP mailbox check
  • Real-time API + batch processing
  • CSV & Excel upload support
  • Comprehensive verification reports
  • Workspaces and teams with spend limits
  • Credits never expire
Features

Try the AI email verification features

20 free credits every day you log in, up to 600 a month. Free AI first email verification across every feature, no credit card.

Native MCP Server integration · Catch-all reported separately · Free tier, no credit card

0
Credits for Unknown Results
Real-time
API Speed
$0.00014
Per Email
600/mo
Free Forever