Querying DNSBLs by hand means reversing the IP, appending each blacklist's zone, doing a DNS query per list, and interpreting the return codes — times seven if you want decent coverage. It's a lot of boilerplate for "is this IP a known spam/abuse source?".
One GET checks an IP against Spamhaus, Barracuda, SORBS, SpamCop, UCEPROTECT and more, and tells you which lists flagged it:
curl --request GET \
--url 'https://ip-reputation-blacklist-checker-api.p.rapidapi.com/api/v1/check?ip=1.2.3.4' \
--header 'x-rapidapi-key: YOUR_RAPIDAPI_KEY' \
--header 'x-rapidapi-host: ip-reputation-blacklist-checker-api.p.rapidapi.com'
You get a per-list breakdown plus an overall verdict. GET /api/v1/lists shows the active blacklists, and POST /api/v1/check/batch checks up to 10 IPs at once — good for scoring signups or filtering a request log.
Free tier on RapidAPI: https://rapidapi.com/danieligel/api/ip-reputation-blacklist-checker-api
I built this to gate form submissions without standing up my own DNSBL resolver. How do you currently screen inbound IPs?
Top comments (0)