Κάθε αναγνώριση, ζωντανά
Τα νέα συμβάντα εμφανίζονται σε δευτερόλεπτα, με τον επισκέπτη, το external ID και την ώρα.
Αναγνωρίστε ένα επιστρέφον πρόγραμμα περιήγησης ακόμη και σε incognito ή με διαγραμμένα cookies, εντοπίστε bots και πλαστές συσκευές και επιβεβαιώστε κάθε αποτέλεσμα στον server σας πριν ενεργήσετε.
Δείτε τι μπορούμε να μάθουμε για αυτό το πρόγραμμα περιήγησης. Η εκτέλεση της επίδειξης στέλνει τα σήματά της σε εμάς και αποθηκεύει ένα ID σε αυτό.
Στο API για τον κώδικά σας και στο dashboard για όποιον εξετάζει την περίπτωση.
Τα νέα συμβάντα εμφανίζονται σε δευτερόλεπτα, με τον επισκέπτη, το external ID και την ώρα.
Αυτοματισμός, headless browsers, software rendering, αντικατεστημένα natives και ασύμφωνες ζώνες ώρας.
Μια συσκευή εμφανίζει κάθε external ID που έχει δει, ώστε οι πολλαπλοί λογαριασμοί να ξεχωρίζουν.
Το πρόγραμμα περιήγησης λαμβάνει μόνο ένα request ID. Ο server σας ανακτά το συμβάν με το secret key και αποφασίζει.
Διαγράψτε ένα external ID και όλα τα γεγονότα και οι συνδέσεις συσκευών του θα εξαφανιστούν.
Χωρίς πλάνα ή δεσμεύσεις. Μετά από κάθε κύκλο χρέωσης πληρώνετε για τις αναγνωρίσεις που χρησιμοποιήσατε, με όλα τα σήματα, το server API και το dashboard.
Δείτε τα πλάνα και όλες τις τιμές →Οι τιμές που εμφανίζονται δεν περιλαμβάνουν τους ισχύοντες φόρους ή τέλη (π.χ. ΦΠΑ).
Ο περιηγητής λαμβάνει ένα request ID, ο διακομιστής σας λαμβάνει όλη την εικόνα.
Μια ετικέτα script από το api ή ένα τυπωμένο ES module από το npm.
<script src="https://zenocdn.net/agent.js"></script>
<script>
const agent = FingerprintAgent.start({ endpoint: 'https://zenocdn.net', publicKey: 'pk_...' })
</script>Ξεκινήστε το όταν ανοίγει η φόρμα, λάβετε request ID μόλις συνδεθεί ο χρήστης.
// After a successful login:
const { requestId } = await agent.get({ externalId: user.id })
await fetch('/api/login/verify', { method: 'POST', body: JSON.stringify({ requestId }) })Διαβάστε το συμβάν με το secret key και αποφασίστε. Το πρόγραμμα περιήγησης δεν βλέπει ποτέ σημαία.
const response = await fetch(`https://api.zeno.id/events/${requestId}`, {
headers: { 'Auth-API-Key': process.env.FP_SECRET_KEY },
})
const event = await response.json()
if (event.bot === 'bad' || event.riskScore >= 15) {
throw new Error('Review this login')
}GET, PATCH και DELETE στα /events, /visitors και /external-ids, με ένα header.
Προθέματα pk_ και sk_ με checksum· τα secret keys αποθηκεύονται ως hash και εμφανίζονται μία φορά.
Φιλτράρετε κατά visitor, external ID, IP, flag, bot verdict, risk score και ημερομηνία.
DELETE /external-ids/{id} διαγράφει όλα τα συμβάντα και τις συνδέσεις συσκευών αυτού του ID.
Ναι. Ο agent είναι μια απλή ενότητα ES χωρίς εξαρτήσεις, οπότε τρέχει σε React, Svelte, Vue ή χωρίς framework. Χωρίς bundler, φόρτωσε το /agent.js και χρησιμοποίησε το global FingerprintAgent.
Όχι. Ταυτόσημες συσκευές, όπως το ίδιο μοντέλο τηλεφώνου με το ίδιο OS, έχουν το ίδιο fingerprint, οπότε ένα πρόγραμμα περιήγησης χωρίς το αποθηκευμένο ID του μπορεί να αντιστοιχιστεί με το visitor ID άλλου. Αντιμετωπίστε το ως lead προς έλεγχο μαζί με τα external IDs, τα flags και τη σύνδεση.
Πάνω από 100 σήματα συσκευής: canvas, WebGL, ήχος, γραμματοσειρές, οθόνη, hardware, locale, plugins και υπολείμματα αυτοματισμού. Δεν διαβάζει ποτέ διευθύνσεις δικτύου WebRTC.
Η αναγνώριση σταματά αθόρυβα: ο πράκτορας επιστρέφει capped αντί για request ID, ώστε οι χρήστες σας να μην δουν ποτέ σφάλμα και η σύνδεση να συνεχίσει να λειτουργεί. Ορίστε προϋπολογισμούς ανά ημέρα, εβδομάδα ή μήνα και όριο δαπάνης ανά κλειδί. Τίποτε άλλο δεν έχει όριο ρυθμού.
Παίρνετε τα χρήματά σας πίσω. Δεν είστε ικανοποιημένοι τους πρώτους τρεις μήνες μετά τον πρώτο πληρωμένο λογαριασμό; Επιστρέφουμε όλα όσα πληρώσατε εκείνη την περίοδο, χωρίς ερωτήσεις.
Στην ΕΕ, στο AWS eu-west-1. Τα συμβάντα διατηρούνται έως ότου τα διαγράψετε, ή για 1, 3 ή 5 χρόνια αν το επιλέξετε, και μία κλήση API διαγράφει όλα όσα είναι αποθηκευμένα για έναν από τους χρήστες σας.
Πληρώνετε ανάλογα με τη χρήση, με όλα τα σήματα.