Bulk Black List Checking API

We are going to provide you an API service for IP/domain black list checking to maintain and monitor your reputation across the black list monitoring services.As you have already used our black list checker so you know our reliability.

We will provide you two API endpoints to check your IPv4, IPv6 and domains/web urls for black list checking.
It gives you listing data of SpamCop,Spamhaus,Barracudacentral,senderscore,server ip address and PTR records of your given Ip addresses to check your Ip reputations and email spam reporting service.
Second end point for domains/urls checking that gives you ability to checking these data are A-records,Spamhaus,Hostkarmer,SpamCop,Stearns,Outblaze,Abusebtler,Joewein and URIBl.

PayPal Acceptance Mark

More Plans

Lookups API Calls Limit per call IPv4/IPv6 Lookup Domain lookup Pricing Monthly
10,000 1000 10 Yes Yes
30,000 1,500 20 Yes Yes
50,000 2,500 20 Yes Yes
100,000 4,000 25 Yes Yes
200,000 8,000 25 Yes Yes
300,000 10,000 30 Yes Yes
500,000 10,000 50 Yes Yes

Blacklist Checking API Package explained

Example: You have 50,000 Lookups package
So that, it will be work like this
20 X 2,500 = 50,000 Lookups
Note: Limit per call is the number of IP/domain you can send in your request if you send any number according to your package limit, it will be count as 1 API call.

IP address API response example screenshot below:

W3Schools

Domain API Response example screenshot below:

W3Schools

SenderScore lookup behavior

IP responses include a senderscore field and a senderscore_status field.

senderscoresenderscore_statusMeaning
a number (0-100)okScore fetched
"pending"queuedWe are fetching it in the background. Retrieve it later for free using the polling endpoint (see below). Usually ready in under a minute.
"pending"refresh_queuedYou asked for refresh=1. A fresh score is being fetched. Poll again for free to retrieve it.
"NA"not_listedThis IP does not have a SenderScore (not listed by senderscore.org).

Optional refresh=1 parameter

Force a fresh fetch even if a cached score exists. Example: GET /backend/ipdomain_api.php?apiKey=YOUR_KEY&ips=1.2.3.4&refresh=1
This always returns senderscore_status: "refresh_queued" first; poll the free endpoint to retrieve the new score. refresh=1 still consumes 1 credit per call (same as a normal lookup).

Free polling endpoint: /backend/senderscore_poll.php

If any IP in your response came back as "pending", your response also includes a top-level _poll block with a ready-made poll_url. Hit that URL to retrieve the score once the background fetch has finished. Polling is free — it does not consume credits.

Usage: GET /backend/senderscore_poll.php?apiKey=YOUR_KEY&ips=1.2.3.4,5.6.7.8
Limits: up to 200 IPs per poll, max 300 polls per minute per API key.
Availability: a score is pollable while it is in cache (up to 24 hours after the billed call that triggered the fetch). After that, a fresh billed call is required to trigger a new fetch.
Entitlement: you can only poll IPs that your own API key looked up via the billed ipdomain_api.php within the last 24 hours. IPs your key never queried return status: "unauthorized" with a null score — this stops the endpoint from being used as an unbilled bulk SenderScore lookup.
Returns: only senderscore for each IP — no DNSBL, PTR, or A-record data. For fresh blacklist status, use the billed ipdomain_api.php.

Per-IP status values in the poll response:

Example response with a pending IP

{
  "response": "success",
  "message": "Successfully completed request.",
  "data": [
    {
      "result": 1,
      "ip": "1.2.3.4",
      "PTR_records": "example.com",
      "spamcop": false,
      "spamhaus": false,
      "barracudacentral": false,
      "senderscore": "pending",
      "senderscore_status": "queued"
    }
  ],
  "_poll": {
    "pending_ips": ["1.2.3.4"],
    "poll_url": "/backend/senderscore_poll.php?apiKey=YOUR_KEY&ips=1.2.3.4",
    "hint": "Poll the above URL to retrieve pending SenderScores once ready. Polling does not consume credits."
  }
}

Billing summary