Email Verification API
Buy disposable email addresses for OTP verification over a clean REST API. Same JSON conventions and the same API key as the SMS endpoints, scoped to /v1/email-activations.
Base URL
https://smsbulk.net/api/v1/email-activationsOne API key works for both SMS and email. If you already integrated the SMS API, you are minutes away from email.
Authentication
Send your API key with every request. Two interchangeable methods are accepted:
# 1. Header (recommended)
curl https://smsbulk.net/api/v1/email-activations \
-H "x-api-key: YOUR_KEY"
# 2. Bearer token
curl https://smsbulk.net/api/v1/email-activations \
-H "Authorization: Bearer YOUR_KEY"Send the key via the header (x-api-key) or a Bearer token. Passing it as a URL query parameter is not recommended for security, because query strings are commonly recorded in server and proxy logs.
Your SMS API key is the same key used here. There is no separate email key.
Endpoints
Six routes under /api/v1/email-activations. Prices are user-facing; wholesale cost is never returned.
List the email provider domains available for a target site, with user-facing price and stock.
curl "https://smsbulk.net/api/v1/email-activations/domains?site=telegram.com" \
-H "x-api-key: YOUR_KEY"[
{ "name": "gmx.com", "price": 0.04, "count": 12, "currency": "USD" }
]Reserve an email address for a site/domain pair. Charges your wallet immediately and returns the activation in WAITING.
curl -X POST https://smsbulk.net/api/v1/email-activations \
-H "x-api-key: YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{ "site": "telegram.com", "domain": "gmx.com" }'{
"id": "cmox8h7pmicm3mkczzwhdz0yd",
"site": "telegram.com",
"domain": "gmx.com",
"emailAddress": null,
"status": "WAITING",
"otpValue": null,
"userCost": "0.04",
"currency": "USD",
"expiresAt": "2026-06-03T14:05:00Z",
"receivedAt": null,
"createdAt": "2026-06-03T13:45:00Z"
}Return your most recent email activations, newest first. Default 50, max 100, no cursor pagination.
curl "https://smsbulk.net/api/v1/email-activations?limit=50" \
-H "x-api-key: YOUR_KEY"[
{
"id": "cmox8h7pmicm3mkczzwhdz0yd",
"site": "telegram.com",
"domain": "gmx.com",
"emailAddress": "[email protected]",
"status": "RECEIVED",
"otpValue": "595348",
"userCost": "0.04",
"currency": "USD",
"expiresAt": "2026-06-03T14:05:00Z",
"receivedAt": "2026-06-03T13:47:12Z",
"createdAt": "2026-06-03T13:45:00Z"
}
]Fetch a single activation. Includes the parsed OTP and the raw HTML email body once received.
curl https://smsbulk.net/api/v1/email-activations/cmox8h7pmicm3mkczzwhdz0yd \
-H "x-api-key: YOUR_KEY"{
"id": "cmox8h7pmicm3mkczzwhdz0yd",
"site": "telegram.com",
"domain": "gmx.com",
"emailAddress": "[email protected]",
"status": "RECEIVED",
"otpValue": "595348",
"htmlMessage": "<html>Your code is 595348</html>",
"userCost": "0.04",
"currency": "USD",
"expiresAt": "2026-06-03T14:05:00Z",
"receivedAt": "2026-06-03T13:47:12Z",
"createdAt": "2026-06-03T13:45:00Z"
}Re-open the same address for another OTP. Charges the wallet again (email equivalent of SMS resend).
curl -X POST https://smsbulk.net/api/v1/email-activations/cmox8h7pmicm3mkczzwhdz0yd/reorder \
-H "x-api-key: YOUR_KEY"{
"id": "cmox8h7pmicm3mkczzwhdz0yd",
"site": "telegram.com",
"domain": "gmx.com",
"emailAddress": null,
"status": "WAITING",
"otpValue": null,
"userCost": "0.04",
"currency": "USD",
"expiresAt": "2026-06-03T14:20:00Z",
"receivedAt": null,
"createdAt": "2026-06-03T13:45:00Z"
}Cancel an activation. Refunds your wallet if no OTP was received.
curl -X DELETE https://smsbulk.net/api/v1/email-activations/cmox8h7pmicm3mkczzwhdz0yd \
-H "x-api-key: YOUR_KEY"{
"id": "cmox8h7pmicm3mkczzwhdz0yd",
"site": "telegram.com",
"domain": "gmx.com",
"emailAddress": null,
"status": "REFUNDED",
"otpValue": null,
"userCost": "0.04",
"currency": "USD",
"expiresAt": "2026-06-03T14:05:00Z",
"receivedAt": null,
"createdAt": "2026-06-03T13:45:00Z"
}Notes & limits
- Daily quota is shared across SMS and email: 10,000 requests per API key per UTC day.
- The list endpoint returns at most 100 rows (default 50) and has no cursor pagination by design.
- Loyalty discounts are applied automatically to the charged price. userCost reflects what you actually pay.
Start verifying email
Grab your API key and send your first request with a single curl command.
