Geolocation, ASN, hosting provider, VPN and Tor-exit detection for every IPv4 and IPv6 address — in real time. Score the risk before you create the account. 100 free checks every month.
No credit card. No sales call. Live key in under a minute.
curl -X POST https://fishymails.com/api/public/v1/verify \
-H "Authorization: Bearer fm_live_xxx" \
-H "Content-Type: application/json" \
-d '{"kind":"ip","value":"185.220.101.1"}'
{
"kind": "ip",
"status": "risky",
"score": 15,
"reason": "Tor exit-node like ASN",
"checks": {
"version": 4,
"country": "DE",
"asn": 208294,
"org": "Tor exit relay",
"hosting_or_vpn_like": true
},
"latency_ms": 96
}One person becomes fifty accounts, free trials get farmed, and chargebacks arrive weeks later from a country you never sold into.
Automated signups pollute your database, skew activation metrics, and quietly consume the trial capacity you budgeted for real users.
Licensing limits, sanctions screening and regional pricing all fail when you have no reliable signal for where a request originates.
Sign up free, copy your key from the dashboard. No credit card, no sales call.
POST kind: 'ip' with the address from your request headers, at signup, login or checkout.
Country, city, ASN, organisation, VPN and Tor flags plus a 0-100 score in one JSON body.
// Score the IP at signup, inline in your handler
const res = await fetch("https://fishymails.com/api/public/v1/verify", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.FISHYMAILS_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({ kind: "ip", value: request.ip }),
});
const { score, checks } = await res.json();
if (checks.tor_like) return reject("blocked");
if (score < 50) return requireExtraVerification();
return allow();Every result names the network operator behind the address, not just a risk flag you have to trust blindly.
Commercial VPN ranges, cloud datacenters and Tor exit relays are detected and scored automatically.
Country-level precision suitable for fraud rules, geofencing and regional pricing logic.
Both address families validated and enriched, with the detected version returned on every check.
Send IPs together with emails and phone numbers, up to 100 items per call, processed in parallel.
One credit per lookup. 100 free every month, then $29 for 1,000. No seat fees, cancel any time.
Set up in 5 minutes. Your first 100 checks are free.
Scoring signup and checkout traffic for teams like: