TRACIO menganalisis alamat IP setiap pengunjung di sisi server. Ia menandai VPN, proxy, node keluar Tor, dan asal datacenter, serta menyelesaikan geolokasi tingkat kota dan ASN. Semua analisis berjalan di sisi server tanpa dependensi di sisi klien.
IP intelligence sampai ke aplikasi Anda melalui payload webhook: objek
network (boolean VPN/proxy/Tor/datacenter ditambah tipe koneksi) dan objek
geo (negara, kota, koordinat, zona waktu, ISP) dikirimkan pada setiap
webhook. Lihat Webhooks untuk bentuk payload lengkap dan verifikasi
tanda tangan.
Klasifikasi VPN, proxy, Tor, dan datacenter diselesaikan dari IP yang terhubung
menggunakan basis data IP intelligence komersial (IP2Location untuk tipe VPN/proxy/Tor,
MaxMind untuk geolokasi dan ASN). Masing-masing ditampilkan sebagai satu boolean pada
objek network webhook — tidak ada perincian per-metode atau skor keyakinan dalam
payload publik.
| Flag | Field | Arti |
|---|---|---|
| VPN | network.vpn | IP milik penyedia VPN yang dikenal |
| Proxy | network.proxy | IP adalah proxy datacenter atau residensial |
| Tor | network.tor | IP adalah node keluar Tor yang dikenal |
| Datacenter | network.datacenter | IP milik penyedia cloud/hosting |
{ "network": { "vpn": true, "proxy": false, "tor": false, "datacenter": false, "connectionType": "residential" }}// `payload` is the webhook delivery body (/docs/webhooks)if (payload.network.vpn) { // visitor is connecting through a VPN}Proxy datacenter dan residensial keduanya ditampilkan sebagai network.proxy; asal
datacenter juga dilaporkan sebagai network.datacenter. Klasifikasi berasal dari
basis data proxy IP2Location, yang mencakup penyedia cloud/hosting utama (AWS,
Google Cloud, Azure, Oracle Cloud, Alibaba Cloud, DigitalOcean, Hetzner, OVH,
Linode/Akamai, Vultr, dan lainnya).
{ "network": { "vpn": false, "proxy": true, "tor": false, "datacenter": true, "connectionType": "datacenter" }}Kecocokan node keluar Tor pada IP yang terhubung ditampilkan sebagai network.tor. Secara terpisah,
Tor Browser itu sendiri dideteksi di sisi klien melalui konfigurasi anti-fingerprinting-nya
(ketahanan canvas/WebGL, zona waktu UTC, ukuran layar yang dibulatkan) — lihat
Smart Signals.
Geolokasi tingkat kota dan ASN diselesaikan di sisi server dari IP yang terhubung
(MaxMind) dan dikirimkan pada objek geo webhook.
| Field | Tipe | Deskripsi |
|---|---|---|
geo.country | string | Kode negara ISO 3166-1 alpha-2 |
geo.city | string | Nama kota |
geo.lat | number | Perkiraan lintang |
geo.lon | number | Perkiraan bujur |
geo.timezone | string | Pengidentifikasi zona waktu IANA |
geo.isp | string | Nama penyedia layanan internet |
{ "geo": { "country": "CZ", "city": "Prague", "lat": 50.05, "lon": 14.4, "timezone": "Europe/Prague", "isp": "Comcast Cable" }}Pencocokan blocklist IP dan pelacakan velocity (aktivitas lintas-IP / lintas-negara)
bukan bagian dari kontrak publik saat ini. Baik payload webhook maupun
dashboard tidak mengekspos kategori blocklist atau interval velocity. Permukaan webhook
untuk risiko jaringan terbatas pada flag boolean network dan tipe koneksi;
gunakan keduanya bersama dengan field decision dan bot (lihat
Smart Signals) untuk keputusan risiko.
Ini membaca objek network dari payload webhook secara langsung. Lihat
Webhooks untuk payload lengkap dan verifikasi tanda tangan.
// `payload` is the webhook delivery body (/docs/webhooks)function assessIPRisk(payload: WebhookPayload) { const { vpn, proxy, tor, datacenter } = payload.network
const risks: string[] = [] let riskLevel = "low"
if (tor) { risks.push("Tor exit node") riskLevel = "critical" }
if (vpn) { risks.push("VPN detected") riskLevel = riskLevel === "low" ? "medium" : riskLevel }
if (proxy) { risks.push("Proxy detected") riskLevel = riskLevel === "low" ? "medium" : riskLevel }
if (datacenter) { risks.push("Datacenter IP") riskLevel = riskLevel === "low" ? "medium" : riskLevel }
return { riskLevel, risks }}