Smart Signals सर्वर-साइड एनरिचमेंट सिग्नल्स हैं, जिन्हें ब्राउज़र फ़िंगरप्रिंट, IP intelligence और व्यवहार विश्लेषण से परिकलित किया जाता है। ये किसी भी व्यक्तिगत रूप से पहचान योग्य जानकारी को एकत्र किए बिना हर विज़िटर के बारे में गहरा संदर्भ प्रदान करते हैं।
Smart Signals — एनरिच किए गए decision, risk, network और bot सिग्नल्स — आपके सर्वर तक दो रास्तों से पहुँचते हैं: वे webhooks के रूप में आपको भेजे जाते हैं (देखें Webhooks) और Data API के माध्यम से माँग पर पढ़े जा सकते हैं। साथ ही ये डैशबोर्ड में भी दिखाए जाते हैं। नीचे दिए गए उदाहरण webhook payload के आकार का उपयोग करते हैं; API से session पढ़ने पर वही फ़ील्ड्स मिलते हैं।
एक विज़िट नेटवर्क, ब्राउज़र, डिवाइस और व्यवहार विश्लेषण में फैले 35+ smart signals में बदल जाती है। नीचे दिया गया संदर्भ उन्हें नाम देता है जिनका उपयोग आप सबसे अधिक करेंगे, जिनमें शामिल हैं:
| Signal | Description | Response | Platform |
|---|---|---|---|
| VPN Detection | IP intelligence से VPN उपयोग को फ़्लैग करता है | network.vpn: boolean | Web |
| Proxy Detection | Datacenter और residential proxy उपयोग की पहचान करता है | network.proxy: boolean | Web |
| Tor Detection | IP का ज्ञात Tor exit nodes से मिलान करता है | network.tor: boolean | Web |
| Datacenter | ज्ञात cloud/hosting प्रदाताओं की IPs को फ़्लैग करता है | network.datacenter: boolean | Web |
| IP Geolocation | IP पते से शहर-स्तरीय geolocation + ISP और ASN | geo.{ country, city, timezone }, network.{ isp, asn } | Web |
| Signal | Description | Response | Availability |
|---|---|---|---|
| Browser Tampering | स्पूफ़ किए गए User-Agent, संशोधित navigator, extension injection का पता लगाता है | { result: boolean, anomalyScore: number } | Web |
| Antidetect Browsers | CSS और property probes के माध्यम से फ़िंगरप्रिंट की नकल करने वाले ब्राउज़र बिल्ड्स को स्कोर करता है | bot.antidetectScore: number (0–100, Pro+) | Web |
| Privacy Settings | गोपनीयता-केंद्रित ब्राउज़र कॉन्फ़िगरेशन (Tor Browser, Brave, Firefox ETP, Safari ITP) का पता लगाता है | { result: boolean } | Web |
| Developer Tools | पता लगाता है कि ब्राउज़र DevTools कब खुला है | { result: boolean } | Web — Business & Enterprise |
| Incognito | Chromium, Firefox और Safari में प्राइवेट ब्राउज़िंग का अनुमान लगाता है | identification.incognito: boolean | Web |
| Signal | Description | Availability |
|---|---|---|
| Emulator | GPU renderer और UA markers के माध्यम से Android emulators (BlueStacks, Genymotion, Nox, Android SDK) का पता लगाता है | Web — all plans |
केवल-नेटिव पहचानें। Root, jailbreak, cloned/dual-app और Frida instrumentation की पहचान उन सिग्नल्स पर निर्भर करती है जिन्हें केवल एक native mobile SDK ही एकत्र कर सकता है। TRACIO ब्राउज़र SDK उपलब्ध कराता है, इसलिए ये वेब एजेंट में प्रभावी नहीं हैं — इसके बजाय automation, headless, antidetect, emulator और व्यवहार संबंधी verdict पर भरोसा करें।
| Signal | Description | Response | Platform |
|---|---|---|---|
| Bot Detection | automation frameworks और headless browsers की पहचान करता है | bot.result: "human"|"bot"|"uncertain", bot.type: string, bot.score: number | Web |
| Risk Score | webhook के decision ऑब्जेक्ट पर अनुरोध के लिए एकत्रित जोखिम | decision.riskScore: number, decision.suspectScore: number, decision.action: "real"|"fake"|"suspicious" | Web |
VPN, proxy, Tor और datacenter फ़्लैग विज़िटर की IP से सर्वर-साइड पर वाणिज्यिक
IP intelligence डेटाबेस (IP2Location / MaxMind) का उपयोग करके हल किए जाते हैं।
सार्वजनिक webhook payload संयुक्त परिणामों को network ऑब्जेक्ट पर booleans के रूप में
प्रस्तुत करता है — network.vpn, network.proxy, network.tor,
network.datacenter — बिना किसी प्रति-विधि विश्लेषण या confidence स्ट्रिंग के। विवरण
के लिए देखें IP Intelligence।
प्राइवेट ब्राउज़िंग का अनुमान Chromium, Firefox और Safari में लगाया जाता है और यह
आप तक identification.incognito के रूप में पहुँचता है। इसकी रिपोर्ट करने वाला कोई
ब्राउज़र API नहीं है, इसलिए यह निर्णय इस बात पर भारित मतदान से बनता है कि प्राइवेट
विंडो में स्टोरेज कैसा व्यवहार करता है — origin private file system की त्रुटियाँ,
स्टोरेज की टिकाऊपन और प्लेटफ़ॉर्म-विशिष्ट विशेषताएँ, हर एक इसमें योगदान देती है।
यह एक प्रायिकता-आधारित सिग्नल है, निश्चितता नहीं: इसे कई इनपुट्स में से एक मानें,
न कि ऐसा तथ्य जिस पर अकेले कार्रवाई की जाए। चूँकि प्राइवेट विंडो _vid_t कुकी को
भी सेट नहीं होने देती, इसलिए incognito विज़िट की पहचान केवल सिग्नल्स से होती है
और उसका identification.confidence तदनुसार कम रहता है।
टैम्परिंग डिटेक्टर उन विज़िटर्स की पहचान करता है जिन्होंने अपनी पहचान को गलत तरीके से प्रस्तुत करने के लिए अपने ब्राउज़र को संशोधित किया है:
navigator गुणों को संशोधित करने वाले extensions का पता लगाता हैPluginArray.prototype और MimeType.prototype चेन को सत्यापित करता हैFunction.prototype.toString, Object.getOwnPropertyDescriptor और अन्य महत्वपूर्ण फ़ंक्शन Proxies से प्रतिस्थापित किए गए हैं या नहींanomalyScore (0.0-1.0) असंगति की मात्रा को परिमाणित करता है। 0.5 से अधिक मान महत्वपूर्ण टैम्परिंग को इंगित करते हैं।
webhook का decision ऑब्जेक्ट किसी अनुरोध के लिए एकत्रित जोखिम वहन करता है:
decision.riskScore (पूर्णांक 0-100), decision.suspectScore (संख्या) और
decision.action (अनुशंसित कार्रवाई)। यह स्कोर smart signal आउटपुट्स को एकत्रित करता
है; नीचे दिए गए बैंड बताते हैं कि riskScore जोखिम स्तरों से कैसे मैप होता है:
| Score Range | Risk Level | Typical Indicators |
|---|---|---|
| 0-10 | Normal | साफ़ सिग्नल्स, ज्ञात विज़िटर, residential IP |
| 11-30 | Low | मामूली असंगतियाँ, datacenter IP, या पहली विज़िट |
| 31-60 | Medium | VPN का पता चला, ब्राउज़र टैम्परिंग, या असामान्य velocity |
| 61-80 | High | कई जोखिम सिग्नल्स, proxy + टैम्परिंग, उच्च गतिविधि |
| 81-100 | Critical | Bot का पता चला, Tor exit node, या गंभीर विसंगतियाँ |
यह स्कोर सक्रिय smart-signal आउटपुट्स को एकत्रित करता है — मुख्य रूप से IP intelligence (VPN/proxy/Tor/datacenter), bot verdict और ब्राउज़र टैम्परिंग। पुष्ट मानव इंटरैक्शन (माउस/कीबोर्ड) स्कोर को कम करता है।
चार गोपनीयता-केंद्रित ब्राउज़र कॉन्फ़िगरेशन का पता लगाया जाता है:
| Browser | Detection Method | Threshold |
|---|---|---|
| Tor Browser | Canvas अवरुद्ध + WebGL अवरुद्ध + UTC timezone + सीमित fonts + गोलाकार screen size | 3+ markers |
| Brave | Brave UA या navigator.brave या Client Hints "Brave" brand | 1+ marker |
| Firefox ETP (strict) | Storage विभाजित या canvas प्रतिरोधित (Firefox UA आवश्यक) | 1+ marker |
| Safari ITP | Cookies अवरुद्ध या IndexedDB प्रतिबंधित (Safari UA आवश्यक) | 1+ marker |
Smart Signals आपके सर्वर तक webhook payload के माध्यम से पहुँचते हैं (पूर्ण आकार और signature verification के लिए देखें Webhooks) और Data API से session पढ़ने पर भी मिलते हैं। नीचे दिए गए उदाहरण फ़ील्ड्स को सीधे webhook payload से पढ़ते हैं; दोनों ही स्थितियों में फ़ील्ड नाम समान हैं।
// `payload` is the webhook delivery body (/docs/webhooks)const score = payload.decision.riskScoreconst isVPN = payload.network.vpnconst isBot = payload.bot.result === "bot"
if (isBot) { return block("Automated access")}
if (score > 60) { return requireMFA()}
if (isVPN && score > 30) { return requireCaptcha()}
return allow()// `payload` is the webhook delivery body (/docs/webhooks)function computeFraudRisk(payload: WebhookPayload): string { let risk = "low"
if (payload.decision.riskScore > 60) risk = "high" else if (payload.decision.riskScore > 30) risk = "medium"
// Escalate when multiple network signals agree if (payload.network.vpn && payload.network.proxy) risk = "high" if (payload.network.tor) risk = "high" if (payload.bot.result === "bot") risk = "high"
return risk}