RocketShield
Protect your web forms from invalid, disposable, and fake emails in real-time. RocketShield verifies emails as users type and blocks bad submissions automatically.
Real-time Protection
Validates as users type
Fully Configurable
Choose what to block
Domain-Restricted
Secure by design
What RocketShield Blocks
Undeliverable Emails
Emails that don't exist or bounce
Disposable Emails
Temporary emails from services like Mailinator
DNS Errors
Domains that don't have valid email servers
Unavailable SMTP
Servers that aren't accepting emails
Free Providers
Optionally block Gmail, Yahoo, etc.
Role-Based Emails
Optionally block info@, admin@, etc.
Catch-All Domains
Domains that accept any email address
Abusive IPs
Block submissions from known bad actors
Quick Start
Create a Shield
Go to your RocketShield dashboard and create a new shield. Configure which email types to block and customize the error message.
Add the Script
Copy the embed code from your shield and paste it into your website, just before the closing </body> tag:
<script type="text/javascript">
var rocketShieldConfig = {
apikey: "rs_xxxxxxxxxxxxxxxxxxxxxxxx",
};
</script>
<script type="text/javascript"
src="https://rocketverifier.com/widget/v2.js"
></script>That's It!
RocketShield will automatically detect all email inputs on your page and protect them. Invalid emails will be blocked from form submission.
Configuration Options
| Option | Description | Default |
|---|---|---|
| blockUndeliverable | Block invalid/undeliverable emails | true |
| blockDisposable | Block disposable email addresses | true |
| blockFreeProvider | Block free email providers (Gmail, Yahoo) | false |
| blockCatchAll | Block catch-all domains | false |
| blockRoleBased | Block role-based emails (info@, admin@) | false |
| preventFormSubmit | Prevent form submission when blocked | true |
| showBranding | Show "Powered by RocketVerifier" | true |
| rateLimit | Max verifications per hour per IP (1-100) | 25 |
All options are configured in your RocketShield dashboard. The widget automatically fetches the configuration.
JavaScript API
RocketShield exposes a global RocketShield object for programmatic control:
// Manually verify an email
const result = await RocketShield.verify('user@example.com');
// Check if an email passed verification
if (RocketShield.isValid('user@example.com')) {
console.log('Email is valid!');
}
// Get the verification result for an email
const cachedResult = RocketShield.getResult('user@example.com');
// Clear the verification cache
RocketShield.clearCache();
// Reinitialize (useful for SPAs)
RocketShield.init();Events
Listen for verification events on email inputs:
// Listen for successful verification
document.addEventListener('rocketshield:verified', (e) => {
console.log('Email verified:', e.detail.email);
console.log('Result:', e.detail.result);
});
// Listen for blocked emails
document.addEventListener('rocketshield:blocked', (e) => {
console.log('Email blocked:', e.detail.email);
console.log('Reason:', e.detail.result);
});Targeting Specific Fields
By default, RocketShield protects all input[type="email"] fields. To target specific fields, use a custom CSS selector in your shield settings or add the data attribute:
<!-- This field will be protected -->
<input type="text" data-rocketshield placeholder="Enter email" />
<!-- Or target by CSS selector in dashboard -->
<!-- Field selector: #signup-email, .contact-form input -->
<input type="email" id="signup-email" placeholder="Email" />Credit Usage
Each email verification uses 1 credit from your account. Cached results (within the same session) don't use additional credits. Monitor your usage in the dashboard.
Need help? Check out our documentation or contact support.
