API · 2,800+ domains blocked

Stop fake signups.
Before they happen.

One API call. Instantly detect disposable, temporary, and burner email addresses. Protect your product from throwaway accounts.

View docs →
Loading API URL…
Free demo checks: up to 20 requests per day for your IP. Sign up for 1,000 free checks and your own key.
Your account
starter
Checks used
0
Monthly limit
1,000
Block rate
2,800+
Disposable domains blocked
99.9%
API uptime
<30ms
Avg response time
24h
Blocklist refresh cycle

Three steps.
Zero friction.

Integrate in minutes. Works with any stack that can make an HTTP request.

01 —
Get your API key

Sign up and get your key instantly. No credit card needed for the free tier.

X-API-Key: ts_live_yourkey
02 —
Call the API

Send a GET request with the email. Works in your signup form, backend, or webhook.

GET /v1/check
?email=user@example.com
03 —
Act on the result

Get a clear is_temp flag + confidence score. Block or flag as you choose.

"is_temp": true,
"score": 0.97,
"reason": "known_disposable"

Copy. Paste. Ship.

Ready-to-use snippets for the most common stacks.

// npm install node-fetch async function checkEmail(email) { const res = await fetch( `https://yourdomain.com/v1/check?email=${email}`, { headers: { 'X-API-Key': 'ts_live_yourkey' } } ); const data = await res.json(); if (data.is_temp) throw new Error('Disposable email not allowed'); }
# Single check curl "https://yourdomain.com/v1/check?email=user@example.com" \ -H "X-API-Key: ts_live_yourkey" # Bulk check curl -X POST "https://yourdomain.com/v1/check/bulk" \ -H "X-API-Key: ts_live_yourkey" \ -H "Content-Type: application/json" \ -d '{"emails":["a@temp.cc","b@gmail.com"]}'
# pip install requests import requests def check_email(email): res = requests.get( "https://yourdomain.com/v1/check", params={"email": email}, headers={"X-API-Key": "ts_live_yourkey"} ) data = res.json() if data["is_temp"]: raise ValueError("Disposable email not allowed")
// PHP 7.4+ function checkEmail($email) { $ch = curl_init(); curl_setopt_array($ch, [ CURLOPT_URL => "https://yourdomain.com/v1/check?email=".urlencode($email), CURLOPT_HTTPHEADER => ["X-API-Key: ts_live_yourkey"], CURLOPT_RETURNTRANSFER => true, ]); $data = json_decode(curl_exec($ch), true); if ($data['is_temp']) throw new Exception('Disposable email'); }

Everything you need.
Nothing you don't.

Real-time detection

Sub-30ms response times. Block disposable emails at signup before the account is ever created.

Bulk API

Check up to 100 emails in a single POST. Clean existing user lists or validate batch imports.

Custom blocklist

Add your own domains via API. Block competitors, known spammers, or internal test addresses.

Auto-updated database

Syncs from curated open-source lists every 24 hours. New disposable providers caught as they emerge.

Confidence scoring

Every response includes a 0–1 score. Soft-block borderline cases, hard-block high-confidence throwaway addresses.

Usage dashboard

See your block rate, quota usage, and API key — all in one place after you sign in.

Simple, honest pricing.

Start free. Scale as you grow.