Узнайте всё про любой IP-адрес

Провайдер, ASN, страна и город, принадлежность к датацентру, VPN, Tor или прокси — одним запросом

О нашей базе

Собственная база данных, охватывающая провайдеров, ASN, proxy-серверы и датацентры по всему миру. Актуальные данные — всегда.

Обновляется ежедневно

Данные синхронизируются каждые 24 часа из открытых источников, BGP-таблиц и собственных сенсоров.

AI Классификация организаций нейросетевой анализ 171 446 проанализировано
  • Telecom 36 443 21.3%
  • IT 25 777 15.0%
  • Corporate 20 310 11.8%
  • Hosting 19 670 11.5%
  • Education 12 261 7.2%
  • Government 8 364 4.9%
  • Finance 7 888 4.6%
  • Logistics 1 726 1.0%
  • Cloud 1 451 0.8%
  • Entertainment 1 442 0.8%
  • News 834 0.5%
  • Ecom 784 0.5%
  • Messaging 744 0.4%
  • CDN 602 0.4%
  • Games 520 0.3%
  • Gambling 488 0.3%
  • Satellite 477 0.3%
  • AI 188 0.1%
  • Military 180 0.1%
  • Other 31 297 18.3%

REST API

Один эндпоинт, JSON-ответ. Без авторизации, 60 req/min

GET https://api.geoipboss.net/api/v1/ip/{ip|domain|random}/full 60 req/min: *
# проверка конкретного IP
curl "https://api.geoipboss.net/api/v1/ip/8.8.8.8/full"

# по доменному имени
curl "https://api.geoipboss.net/api/v1/ip/example.com/full"

# случайный публичный IP — удобно для тестов
curl "https://api.geoipboss.net/api/v1/ip/random/full"
import httpx

r = httpx.get("https://api.geoipboss.net/api/v1/ip/8.8.8.8/full")
data = r.json()["data"]

if data["threat"] and data["threat"].get("is_tor"):
    print("TOR exit node")
elif data["threat"] and data["threat"].get("is_datacenter"):
    print("Datacenter:", data["threat"]["cloud_provider"])
else:
    print("Clean:", data["isp"]["isp"])
package main

import (
    "encoding/json"
    "fmt"
    "net/http"
)

func main() {
    resp, _ := http.Get("https://api.geoipboss.net/api/v1/ip/8.8.8.8/full")
    defer resp.Body.Close()

    var out struct {
        Success bool                   `json:"success"`
        Data    map[string]interface{} `json:"data"`
    }
    json.NewDecoder(resp.Body).Decode(&out)
    fmt.Printf("%+v\n", out.Data["threat"])
}
const r = await fetch('https://api.geoipboss.net/api/v1/ip/8.8.8.8/full');
const { data } = await r.json();

if (data.threat?.is_vpn) {
  console.warn('VPN exit:', data.threat.proxy_type, data.isp?.org);
}
// также поддерживается домен
const byDomain = await fetch('https://api.geoipboss.net/api/v1/ip/example.com/full');
{
  "success": true,
  "data": {
    "ip_address": "185.220.101.1",
    "country": {
      "ccode": "de", "country": "ФРГ",
      "location": "Бранденбург, Бранденбург",
      "latitude": 52.6171, "longitude": 13.1207,
      "isproxy": true, "issatellite": false
    },
    "isp": {
      "isp": "Stiftung Erneuerbare Freiheit",
      "org": "Stiftung Erneuerbare Freiheit",
      "ismobile": false
    },
    "threat": {
      "is_proxy": true, "is_vpn": true, "is_tor": true,
      "is_datacenter": false,
      "proxy_type": "TOR", "usage_type": "anonymous",
      "confidence_weight": 1.0,
      "asn": 60729, "org": "Stiftung Erneuerbare Freiheit"
    }
  }
}