Zeno
Autentificare
Gratuit … identificări pe lună · Apoi plată pe măsură ce folosești

Identificarea dispozitivelor
pentru fiecare Înregistrare

Recunoaște un browser care revine chiar în incognito sau cu cookie-urile șterse, detectează boții și dispozitivele falsificate și confirmă fiecare rezultat pe serverul tău înainte să acționezi.

Vezi ce putem afla despre acest browser. Rularea demo-ului trimite semnalele sale către noi și stochează un ID în el.

Ce îți spune fiecare identificare

În API-ul pentru codul tău și în dashboard pentru cel care analizează cazul.

Fiecare identificare, live

Evenimentele noi apar în câteva secunde, cu vizitatorul, external ID și momentul.

Boți și spoofing semnalate

Automatizare, browsere headless, randare software, funcții native înlocuite și fusuri orare care nu se potrivesc.

Dispozitivele partajate apar

Un dispozitiv listează fiecare external ID văzut pe el, astfel încât conturile multiple se remarcă.

Verifică pe backend

Browserul primește doar un request ID. Serverul tău preia evenimentul cu secret key și decide.

Uitați un external ID printr-un singur apel

Ștergeți un external ID și toate evenimentele și legăturile de dispozitiv ale acestuia dispar.

Plată în funcție de utilizare

Fără planuri sau angajamente. După fiecare ciclu de facturare plătești pentru identificările folosite, fiecare cu toate semnalele, API-ul de server și dashboardul.

Vezi planurile și toate prețurile →

Prețurile afișate nu includ taxele sau comisioanele aplicabile (ex. TVA).

De la instalare la verificare în trei pași

Browserul primește un request ID, serverul tău primește toate detaliile.

  1. 1

    Adaugă agentul

    Un tag script servit de api sau un modul ES tipizat din npm.

    login.html
    <script src="https://zenocdn.net/agent.js"></script>
    <script>
    	const agent = FingerprintAgent.start({ endpoint: 'https://zenocdn.net', publicKey: 'pk_...' })
    </script>
  2. 2

    Identifică în browser

    Pornește-l când se deschide formularul, primești un request ID după autentificarea utilizatorului.

    login.js
    // After a successful login:
    const { requestId } = await agent.get({ externalId: user.id })
    
    await fetch('/api/login/verify', { method: 'POST', body: JSON.stringify({ requestId }) })
  3. 3

    Verifică pe serverul tău

    Citește evenimentul cu secret key și decide. Browserul nu vede niciodată un flag.

    login.server.ts
    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')
    }
  • REST, fără dependență de SDK

    GET, PATCH și DELETE pe /events, /visitors și /external-ids, cu un singur header.

  • Chei greu de scurs

    Prefixe pk_ și sk_ cu checksum; cheile secrete sunt stocate ca hash și afișate o singură dată.

  • Caută în fiecare eveniment

    Filtrează după visitor, external ID, IP, flag, bot verdict, risk score și dată.

  • Șterge un external ID dintr-un singur apel

    DELETE /external-ids/{id} șterge toate evenimentele și legăturile de dispozitiv ale acelui ID.

Întrebări

Funcționează cu framework-ul meu? +

Da. Agentul este un modul ES simplu, fără dependențe, deci rulează în React, Svelte, Vue sau fără framework. Fără bundler, încarcă /agent.js și folosește FingerprintAgent global.

Este un visitor ID comun dovada mai multor conturi? +

Nu. Dispozitivele identice, precum același model de telefon cu același OS, au aceeași amprentă, deci un browser fără ID-ul stocat poate fi asociat cu visitor ID-ul altuia. Tratați-l ca un lead de verificat împreună cu external IDs, flags și conexiunea.

Ce colectează agentul? +

Peste 100 de semnale de dispozitiv: canvas, WebGL, audio, fonturi, ecran, hardware, locale, pluginuri și urme de automatizare. Nu citește niciodată adresele de rețea WebRTC.

Ce se întâmplă la un buget sau la limita de utilizare? +

Identificarea se oprește discret: agentul returnează capped în loc de un request ID, astfel încât utilizatorii nu văd nicio eroare, iar autentificarea continuă să funcționeze. Setați bugete pe zi, săptămână sau lună și o limită de cheltuieli pe cheie. Nimic altceva nu are limită de rată.

Ce se întâmplă dacă nu este pentru mine? +

Îți recuperezi banii. Nu ești mulțumit în primele trei luni după prima factură plătită? Îți rambursăm tot ce ai plătit în acea perioadă, fără întrebări.

Unde sunt stocate datele? +

În UE, în AWS eu-west-1. Evenimentele sunt păstrate până le ștergeți sau timp de 1, 3 ori 5 ani, dacă alegeți asta, iar un singur apel API șterge tot ce este stocat pentru unul dintre utilizatorii dvs.

Prima ta identificare, în câteva minute

Plătești pe măsură ce folosești, toate semnalele incluse.