IP Detection

IP-Lookup-API

Das vollständige Urteil zu einer IP, einem Bereich oder Hostnamen in einem Aufruf.

IP abfragen

POST/v1/ip/lookup
API-Schlüssel

Parameter

  • targetstringErforderlich

    IPv4, IPv6, CIDR-Bereich oder Hostname.

Antwortfelder

  • target.kindstring

    ipv4, ipv6, cidr oder hostname.

  • target.ipstring

    Geprüfte Adresse. Bei einem Hostnamen die aufgelöste Adresse.

  • reserved.reservedboolean

    true für private, reservierte und Dokumentationsbereiche.

  • verdict.classificationstring

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

  • verdict.anonymizedboolean

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

  • verdict.confidencenumber

    Konfidenz von 0 bis 1.

  • verdict.methodstring

    Welches Signal das Urteil entschied.

  • verdict.evidencestring[]

    Optional. Worauf die Klasse beruht, etwa vpn_server_list, relay_range oder known_infra.

  • purityobject | null

    Aufschlüsselung der Punktzahl: score, grade, verdict und deductions. Ab Starter, bei Free null.

  • purity.scoreinteger

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

  • purity.gradestring

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

  • purity.verdictstring

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

  • purity.deductionsarray

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

  • networkClassstring

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

  • isVpnboolean

    Nur für vpn, residential_proxy und tor true, nie für hosting oder relay.

  • isProxyboolean

    true für Proxys, einschließlich Residential Proxys.

  • isTorboolean

    true für Tor-Exit-Nodes.

  • providerstring | null

    Netzbetreiber, sofern bekannt. Ab Starter, bei Free null.

  • vpnProviderstring | null

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

  • riskScoreinteger

    Risiko von 0 bis 100.

  • geoobject

    Gleiche Struktur wie die Geolokalisierungs-Antwort.

  • asnobject

    Gleiche Struktur wie die Antwort der ASN-Abfrage.

  • whoisobject

    WHOIS-Eintrag, bei Hostnamen als Ziel.

  • degradedstring[]

    Teile der Abfrage, die fehlschlugen und fehlen.

  • atstring

    Zeitpunkt der Abfrage.

  • lockedstring[]

    Punktierte Pfade der Felder, die in diesem Tarif als null gesendet werden. Ab Starter nicht vorhanden.

  • planRequiredstring

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

curl -X POST https://ipscanner.io/v1/ip/lookup \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"target":"8.8.8.8"}'
Antwort
{
  "target": {
    "raw": "8.8.8.8",
    "kind": "ipv4",
    "ip": "8.8.8.8"
  },
  "reserved": {
    "reserved": false
  },
  "verdict": {
    "classification": "hosting",
    "anonymized": false,
    "confidence": 0.9,
    "method": "org:hosting",
    "evidence": [
      "known_infra",
      "datacenter_range"
    ]
  },
  "purity": {
    "score": 86,
    "grade": "S",
    "verdict": "clean",
    "deductions": [
      {
        "factor": "network_origin",
        "points": 14,
        "detail": "hosting at high confidence"
      }
    ]
  },
  "networkClass": "hosting",
  "isVpn": false,
  "isProxy": false,
  "isTor": false,
  "provider": "GOOGLE",
  "vpnProvider": null,
  "riskScore": 25,
  "geo": {
    "ip": "8.8.8.8",
    "country": "United States",
    "countryCode": "US",
    "city": "",
    "region": "",
    "postalCode": "",
    "latitude": 37.751,
    "longitude": -97.822,
    "timezone": "America/Chicago",
    "accuracyRadius": 1000
  },
  "asn": {
    "ip": "8.8.8.8",
    "asn": "AS15169",
    "name": "GOOGLE",
    "type": "unknown",
    "country": "US"
  },
  "at": "2026-10-06T17:55:29.44292148Z"
}

Ohne Schlüssel testen

GET/v1/demo/{ip}
Kein Schlüssel nötigEtwa 100 pro Tag und IP

Parameter

  • ipstringPfadErforderlich

    IPv4- oder IPv6-Adresse.

Antwortfelder

  • target.kindstring

    ipv4, ipv6, cidr oder hostname.

  • target.ipstring

    Geprüfte Adresse. Bei einem Hostnamen die aufgelöste Adresse.

  • reserved.reservedboolean

    true für private, reservierte und Dokumentationsbereiche.

  • verdict.classificationstring

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

  • verdict.anonymizedboolean

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

  • verdict.confidencenumber

    Konfidenz von 0 bis 1.

  • verdict.methodstring

    Welches Signal das Urteil entschied.

  • verdict.evidencestring[]

    Optional. Worauf die Klasse beruht, etwa vpn_server_list, relay_range oder known_infra.

  • purityobject | null

    Aufschlüsselung der Punktzahl: score, grade, verdict und deductions. Ab Starter, bei Free null.

  • purity.scoreinteger

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

  • purity.gradestring

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

  • purity.verdictstring

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

  • purity.deductionsarray

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

  • networkClassstring

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

  • isVpnboolean

    Nur für vpn, residential_proxy und tor true, nie für hosting oder relay.

  • isProxyboolean

    true für Proxys, einschließlich Residential Proxys.

  • isTorboolean

    true für Tor-Exit-Nodes.

  • providerstring | null

    Netzbetreiber, sofern bekannt. Ab Starter, bei Free null.

  • vpnProviderstring | null

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

  • riskScoreinteger

    Risiko von 0 bis 100.

  • geoobject

    Gleiche Struktur wie die Geolokalisierungs-Antwort.

  • asnobject

    Gleiche Struktur wie die Antwort der ASN-Abfrage.

  • whoisobject

    WHOIS-Eintrag, bei Hostnamen als Ziel.

  • degradedstring[]

    Teile der Abfrage, die fehlschlugen und fehlen.

  • atstring

    Zeitpunkt der Abfrage.

  • lockedstring[]

    Punktierte Pfade der Felder, die in diesem Tarif als null gesendet werden. Ab Starter nicht vorhanden.

  • planRequiredstring

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

curl https://ipscanner.io/v1/demo/185.220.101.1
Antwort
{
  "target": {
    "raw": "185.220.101.1",
    "kind": "ipv4",
    "ip": "185.220.101.1"
  },
  "reserved": {
    "reserved": false
  },
  "verdict": {
    "classification": "tor",
    "anonymized": true,
    "confidence": 0.95,
    "method": "tor_set",
    "evidence": [
      "tor_exit_list"
    ]
  },
  "networkClass": "tor",
  "isVpn": true,
  "isProxy": true,
  "isTor": true,
  "riskScore": 100,
  "asn": {
    "ip": "185.220.101.1",
    "asn": "AS60729",
    "name": "Stiftung Erneuerbare Freiheit",
    "type": "unknown",
    "country": "DE"
  },
  "at": "2026-10-08T21:55:08.590700162Z",
  "purity": null,
  "provider": null,
  "vpnProvider": null,
  "geo": {
    "ip": "185.220.101.1",
    "country": "Germany",
    "countryCode": "DE",
    "city": "Brandenburg",
    "region": "Brandenburg",
    "timezone": "Europe/Berlin",
    "latitude": null,
    "longitude": null,
    "postalCode": null,
    "accuracyRadius": null
  },
  "locked": [
    "purity",
    "provider",
    "vpnProvider",
    "geo.latitude",
    "geo.longitude",
    "geo.postalCode",
    "geo.accuracyRadius"
  ],
  "planRequired": "Starter"
}

Ihre eigene IP

GET/v1/myip
Kein Schlüssel nötig

Antwortfelder

  • ipv4string

    Ihre IPv4-Adresse, wenn Sie über IPv4 verbunden sind.

  • ipv6string

    Ihre IPv6-Adresse, wenn Sie über IPv6 verbunden sind.

  • countrystring

    Name des Landes.

  • countryCodestring

    Zweistelliger ISO-Ländercode.

  • citystring

    Name der Stadt.

  • regionstring

    Region oder Bundesland.

  • latitudenumber

    Breitengrad.

  • longitudenumber

    Längengrad.

  • timezonestring

    IANA-Zeitzone.

  • asnstring

    Nummer des autonomen Systems, etwa AS15169.

  • asnNamestring

    Name der Organisation, die das Netzwerk betreibt.

  • asnTypestring

    hosting, isp, vpn, education, government, mobile oder unknown.

curl https://ipscanner.io/v1/myip
Antwort
{
  "ipv4": "203.0.113.42",
  "country": "Canada",
  "countryCode": "CA",
  "city": "Montreal",
  "region": "Quebec",
  "postalCode": "H1K",
  "latitude": 45.6085,
  "longitude": -73.5493,
  "timezone": "America/Toronto",
  "accuracyRadius": 5,
  "asn": "AS5769",
  "asnName": "VIDEOTRON",
  "asnType": "isp",
  "asnCountry": "CA"
}