Stop burning money sending SMS OTP codes to disposable VoIP numbers. Detect virtual burner carriers, classify line types (Mobile vs. Landline vs. VoIP), and prevent trial abuse in sub-30ms.
Get Free API Key on RapidAPI β’ API Documentation β’ Pricing Plans
Sending an SMS verification code costs between $0.02 and $0.08 per message. When fraudsters and bot farms use free virtual numbers (Google Voice, Twilio, TextNow, Skype) to mass-create fake accounts, SaaS founders lose thousands of dollars in wasted SMS fees and bogus trial databases.
NumGuard is a high-throughput phone intelligence engine engineered for sign-up forms, fintech onboarding, and fraud mitigation. In under 25 milliseconds, NumGuard verifies validity, resolves carrier and line type, flags virtual/VoIP ranges, and returns an automated recommendation (ALLOW, FLAG, or BLOCK).
- Strict International E.164 Parsing: Validates numbers across 240+ countries and territories.
- Line Type Classification: Accurately separates
MOBILE(can receive SMS) fromFIXED_LINE(landlines) andVOIP(virtual burners). - Virtual Carrier Blacklist: Flags Twilio, Bandwidth, Google Voice, TextNow, Telnyx, Sinch, Plivo, Skype, and 15+ other virtual providers.
- Full Format Conversion: Generates E.164, National, International, and RFC 3966 formats on every response.
- Location & Timezone Resolution: Extracts country name, state/region, and local timezones to prevent spamming users at 3:00 AM.
- Composite Fraud Risk Score (0β100): Deterministic action recommendations (
ALLOW,FLAG,BLOCK).
Subscribe to the Free Basic Tier (50 free requests/month) on RapidAPI.
import requests
url = "https://numguard-phone-and-voip-fraud-detection.p.rapidapi.com/v1/validate"
querystring = {"phone": "+14155552671", "country_code": "US"}
headers = {
"x-rapidapi-key": "YOUR_RAPIDAPI_KEY",
"x-rapidapi-host": "numguard-phone-and-voip-fraud-detection.p.rapidapi.com"
}
response = requests.get(url, headers=headers, params=querystring)
print(response.json())const url = 'https://numguard-phone-and-voip-fraud-detection.p.rapidapi.com/v1/validate?phone=+14155552671&country_code=US';
const options = {
method: 'GET',
headers: {
'x-rapidapi-key': 'YOUR_RAPIDAPI_KEY',
'x-rapidapi-host': 'numguard-phone-and-voip-fraud-detection.p.rapidapi.com'
}
};
const response = await fetch(url, options);
const data = await response.json();
console.log(data);curl --request GET \
--url 'https://numguard-phone-and-voip-fraud-detection.p.rapidapi.com/v1/validate?phone=+14155552671&country_code=US' \
--header 'x-rapidapi-host: numguard-phone-and-voip-fraud-detection.p.rapidapi.com' \
--header 'x-rapidapi-key: YOUR_RAPIDAPI_KEY'{
"phone_input": "+12025550143",
"is_valid": true,
"is_possible": true,
"formats": {
"e164": "+12025550143",
"international": "+1 202-555-0143",
"national": "(202) 555-0143",
"rfc3966": "tel:+1-202-555-0143"
},
"location": {
"country_code": "US",
"country_name": "United States",
"region": "District of Columbia",
"timezones": ["America/New_York"]
},
"carrier": {
"name": "Verizon Wireless",
"line_type": "MOBILE",
"is_mobile": true,
"is_landline": false,
"is_virtual": false
},
"risk_score": 0,
"risk_level": "LOW",
"recommended_action": "ALLOW",
"reasons": [
"Verified mobile carrier (optimal for SMS verification)"
]
}{
"phone_input": "+14155550199",
"is_valid": true,
"is_possible": true,
"formats": {
"e164": "+14155550199",
"international": "+1 415-555-0199",
"national": "(415) 555-0199",
"rfc3966": "tel:+1-415-555-0199"
},
"location": {
"country_code": "US",
"country_name": "United States",
"region": "California",
"timezones": ["America/Los_Angeles"]
},
"carrier": {
"name": "Google Voice / Bandwidth.com",
"line_type": "VOIP",
"is_mobile": false,
"is_landline": false,
"is_virtual": true
},
"risk_score": 90,
"risk_level": "HIGH",
"recommended_action": "BLOCK",
"reasons": [
"Virtual/VoIP phone number detected (high risk for automated trial fraud / disposable inboxes)"
]
}NumGuard is available on RapidAPI with tiers structured for bootstrapped indie hackers up to growth platforms:
| Tier | Price | Monthly Quota | Overage Rate | Ideal For |
|---|---|---|---|---|
| Basic | $0.00 / mo | 50 requests | None (Hard Cap) | Prototyping & testing |
| Pro | $19.99 / mo | 5,000 requests | $0.004 / request | SaaS startups & signup forms |
| Ultra | $59.00 / mo | 25,000 requests | $0.003 / request | High-volume mobile apps & fintech |
π Subscribe and Start Building
# Clone the repository
git clone https://github.com/jasdebarreau3-cell/numguard.git
cd numguard
# Build the Docker image
docker build -t numguard-api .
# Run container on port 8000
docker run -p 8000:8000 numguard-apiThis repository is licensed under the MIT License.
Developed and maintained by VeriPulse Labs.