IP Detection

Bulk-IP-Prüfungen

Eine Adressliste in einer Anfrage bewerten oder die Ergebnisse streamen, sobald sie vorliegen.

Liste prüfen

POST/v1/bulk/check
API-Schlüssel

Parameter

  • ipsstring[]

    Adressen, optional mit Port. Senden Sie dies oder input.

  • inputstring

    Eingefügter Text; der Server findet die Adressen darin.

Antwortfelder

  • submittedinteger

    Empfangene Elemente.

  • uniqueinteger

    Eindeutige geprüfte Adressen.

  • duplicatesinteger

    Mehrfach gesendete Adressen.

  • invalidstring[]

    Eingaben, die keine gültigen Adressen waren.

  • summaryobject

    Anzahl der Ergebnisse pro Note und Urteil. Ab Starter, bei Free leer.

  • planRequiredstring

    Tarif, der die gesperrten Felder enthält. Ab Starter nicht vorhanden.

  • results[].ipstring

    Geprüfte IP-Adresse.

  • results[].portinteger

    Port aus der Eingabe, falls vorhanden.

  • results[].scoreinteger | null

    Sauberkeitswert von 0 bis 100. Ab Starter, bei Free null.

  • results[].gradestring | null

    S+, S, A, B oder C. Ab Starter, bei Free null.

  • results[].verdictstring | null

    clean, suspect oder dirty. Ab Starter, bei Free null.

  • results[].classificationstring

    residential_clean, mobile, hosting, datacenter, vpn, residential_proxy, tor, relay oder unknown.

  • results[].confidencenumber

    Konfidenz von 0 bis 1.

  • results[].anonymizedboolean

    true, wenn das Netzwerk die Person dahinter verbirgt. Hosting zählt dazu, außer bekannter Infrastruktur.

  • results[].vpnProviderstring | null

    VPN-Dienst einer vpn-Adresse (NordVPN, Mullvad...), sofern bekannt. Ab Starter, bei Free null.

  • results[].isTorExitboolean

    true für Tor-Exit-Nodes.

  • results[].inVpnRangeboolean

    true, wenn die IP in einem bekannten VPN-Bereich liegt.

  • results[].inDatacenterRangeboolean

    true, wenn die IP in einem bekannten Rechenzentrumsbereich liegt.

  • results[].deductionsarray | null

    Abzüge vom Score, jeweils mit Grund. Ab Starter, bei Free null.

  • results[].lockedstring[]

    Felder dieser Zeile, die in diesem Tarif als null gesendet werden. Ab Starter nicht vorhanden.

curl -X POST https://ipscanner.io/v1/bulk/check \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"ips":["185.220.101.1","24.48.0.1:8080"]}'
Antwort
{
  "submitted": 2,
  "unique": 2,
  "duplicates": 0,
  "invalid": [],
  "summary": {
    "clean": 1,
    "dirty": 1
  },
  "results": [
    {
      "input": "185.220.101.1",
      "ip": "185.220.101.1",
      "score": 0,
      "grade": "C",
      "verdict": "dirty",
      "classification": "tor",
      "confidence": 0.95,
      "anonymized": true,
      "vpnProvider": null,
      "isTorExit": true,
      "inVpnRange": false,
      "inDatacenterRange": false,
      "asn": "AS60729",
      "asnName": "Stiftung Erneuerbare Freiheit",
      "country": "DE",
      "deductions": [
        {
          "factor": "network_origin",
          "points": 98,
          "detail": "tor at high confidence"
        }
      ]
    },
    {
      "input": "24.48.0.1:8080",
      "ip": "24.48.0.1",
      "port": 8080,
      "score": 88,
      "grade": "S",
      "verdict": "clean",
      "classification": "residential_clean",
      "confidence": 0.3,
      "anonymized": false,
      "vpnProvider": null,
      "isTorExit": false,
      "inVpnRange": false,
      "inDatacenterRange": false,
      "asn": "AS5769",
      "asnName": "VIDEOTRON",
      "country": "CA",
      "deductions": [
        {
          "factor": "no_corroboration",
          "points": 8,
          "detail": "no observation on record for this IP"
        }
      ]
    }
  ]
}

Liste streamen

POST/v1/ip/bulk
API-SchlüsselNDJSON

Parameter

  • ipsstring[]

    Adressen, optional mit Port. Senden Sie dies oder input.

  • inputstring

    Eingefügter Text; der Server findet die Adressen darin.

Antwortfelder

  • typestring

    meta, result, error oder done.

  • indexinteger

    Position der Adresse in der deduplizierten Liste, ab 0.

  • ipstring

    Geprüfte IP-Adresse.

  • verdictstring | null

    clean, suspect oder dirty. Ab Starter, bei Free null.

  • classificationstring

    residential_clean, mobile, hosting, datacenter, vpn, residential_proxy, tor, relay oder unknown.

  • scoreinteger | null

    Sauberkeitswert von 0 bis 100. Ab Starter, bei Free null.

  • gradestring | null

    S+, S, A, B oder C. Ab Starter, bei Free null.

  • vpnProviderstring | null

    VPN-Dienst einer vpn-Adresse, fehlt wenn unbekannt. Ab Starter, bei Free null.

  • lockedstring[]

    Ergebniszeilen: Felder, die in diesem Tarif als null gesendet werden. Ab Starter nicht vorhanden.

  • planRequiredstring

    Meta-Zeile: Tarif, der die gesperrten Felder enthält. Ab Starter nicht vorhanden.

  • reasonstring

    Bei error: invalid_ip oder reserved. Bei done: complete oder quota_exceeded.

  • processedinteger

    Bei done: geprüfte Adressen.

  • failedinteger

    Bei done: Adressen, die nicht geprüft werden konnten.

  • totalinteger

    Bei meta und done: eindeutige Adressen in der Anfrage.

curl -X POST -N https://ipscanner.io/v1/ip/bulk \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"ips":["185.220.101.1","24.48.0.1","10.0.0.1"]}'
Antwort, ein JSON-Objekt pro Zeile
{"type":"meta","total":3,"metered":3}
{"type":"result","ip":"185.220.101.1","verdict":"dirty","classification":"tor","confidence":0.95,"anonymized":true,"score":0,"grade":"C","isTorExit":true,"asn":"AS60729","country":"DE"}
{"type":"result","index":1,"ip":"24.48.0.1","verdict":"clean","classification":"residential_clean","confidence":0.3,"score":88,"grade":"S","asn":"AS5769","country":"CA"}
{"type":"error","index":2,"input":"10.0.0.1","reason":"reserved","message":"private address"}
{"type":"done","reason":"complete","total":3,"processed":2,"failed":1}