Quickstart
Get up and running with VerifNow in under 2 minutes. This guide walks you through getting an API key and making your first validation request.
Create your account
Go to app.verifnow.io and sign up for a free account. No credit card required.
Get your API key
Once logged in:
- Click API Keys in the left sidebar
- Click Create new key
- Give your key a name (e.g.,
development) - In the Expires section, choose a duration or select Never for a key that does not expire
- Confirm and copy your key
Your API key will only be shown once. Store it securely in a .env file or a secrets manager.
Store it in your environment:
export VERIFNOW_API_KEY=your_api_key_hereOr in a .env file:
.env.local
VERIFNOW_API_KEY=your_api_key_hereMake your first API call
Choose your preferred tool:
cURL
curl -X POST https://api.verifnow.io/api/v1/validate/email \
-H "X-API-KEY: $VERIFNOW_API_KEY" \
-H "Content-Type: application/json" \
-d '{"value": "user@example.com"}'Read the response
A successful response looks like this:
{
"valid": true,
"message": "Email address is valid but has risk factors",
"normalizedValue": "user@example.com",
"originalValue": "user@example.com",
"validationLevel": "PREMIUM",
"emailDetails": {
"signals": {
"syntax_valid": true,
"mx_valid": true,
"typo_detected": false,
"suggested_domain": null,
"disposable": false,
"role_based": false,
"free_provider": false,
"domain_age_days": 11554,
"mx_provider": "google",
"mx_quality_score": 0.9
},
"risk_score": 30,
"risk_level": "MEDIUM",
"deliverability": "RISKY",
"applied_level": "PREMIUM"
}
}Key fields to check:
| Field | What to look for |
|---|---|
valid | Use true to accept the email |
emailDetails.risk_level | LOW is the safest; HIGH warrants caution |
emailDetails.deliverability | DELIVERABLE means you can safely send to this address |
emailDetails.signals.disposable | Reject if true for your use case |
emailDetails.signals.typo_detected | If true, suggest suggested_domain to the user |
What’s next?
Now that you’ve made your first request, explore the rest of the documentation:
- 📖 Validate Email Guide — Best practices for email validation
- ⚠️ Error Handling — How to handle API errors gracefully
- 🚦 Rate Limits — Understand your usage quotas
- 📚 API Reference — Full API specification
Tip: Use valid === true as the primary acceptance criteria, and check emailDetails.signals.disposable === false to block throwaway addresses.
Last updated on