Zeno
Anmelden
Kostenlos … Identifizierungen pro Monat · Danach zahlen Sie nach Nutzung

Geräteidentifikation
für jede(n) Registrieren

Erkennen Sie einen wiederkehrenden Browser selbst im Inkognitomodus oder bei gelöschten Cookies, erkennen Sie Bots und gefälschte Geräte, und bestätigen Sie jedes Ergebnis auf Ihrem Server, bevor Sie handeln.

Sehen Sie, was wir über diesen Browser herausfinden können. Die Demo sendet seine Signale an uns und speichert eine ID darin.

Was jede Identifizierung verrät

In der API für deinen Code und im Dashboard für die prüfende Person.

Jede Identifizierung, live

Neue Ereignisse erscheinen in Sekunden, mit Besucher, externer ID und Zeitpunkt.

Bots und Spoofing erkannt

Automatisierung, Headless-Browser, Software-Rendering, ersetzte Natives und abweichende Zeitzonen.

Geteilte Geräte werden sichtbar

Ein Gerät listet jede external ID auf, die darauf gesehen wurde, damit Mehrfachkonten auffallen.

Im Backend verifizieren

Der Browser erhält nur eine request ID. Dein Server holt das Event mit seinem secret key ab und entscheidet.

External ID mit einem Aufruf vergessen

Lösche eine external ID, dann sind alle Events und Geräteverknüpfungen weg.

Pay as you go

Keine Tarife oder Verpflichtungen. Nach jedem Abrechnungszyklus zahlst du für die genutzten Identifikationen, jeweils mit allen Signalen, der Server-API und dem Dashboard.

Pläne und alle Preise ansehen →

Angezeigte Preise enthalten keine anwendbaren Steuern oder Gebühren (z. B. MwSt.).

Von der Installation zur Verifizierung in drei Schritten

Der Browser erhält eine Request-ID, dein Server erhält das vollständige Bild.

  1. 1

    Agent hinzufügen

    Ein Script-Tag von der API oder ein typisiertes ES-Modul von 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

    Im Browser identifizieren

    Starte es beim Öffnen des Formulars und erhalte eine request ID, sobald sich der Nutzer anmeldet.

    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

    Auf deinem Server prüfen

    Lies das Event mit dem secret key und entscheide. Der Browser sieht nie ein 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, kein SDK-Lock-in

    GET, PATCH und DELETE auf /events, /visitors und /external-ids, mit einem Header.

  • Schlüssel, die schwer zu leaken sind

    pk_- und sk_-Präfixe mit Prüfsumme; Secret Keys werden als Hash gespeichert und nur einmal angezeigt.

  • Jedes Event durchsuchen

    Filtern nach Besucher, external ID, IP, Flag, Bot-Urteil, Risikoscore und Datum.

  • External ID in einem einzigen Aufruf löschen

    DELETE /external-ids/{id} entfernt alle Ereignisse und Geräteverknüpfungen dieser ID.

Fragen

Funktioniert es mit meinem Framework? +

Ja. Der Agent ist ein einfaches ES-Modul ohne Abhängigkeiten und läuft in React, Svelte, Vue oder ganz ohne Framework. Ohne Bundler lade /agent.js und nutze das globale FingerprintAgent.

Ist eine gemeinsame visitor ID ein Beweis für mehrere Konten? +

Nein. Identische Geräte, etwa dasselbe Handymodell mit demselben OS, haben denselben Fingerprint, daher kann ein Browser ohne gespeicherte ID einer visitor ID eines anderen zugeordnet werden. Behandle das als Hinweis, den du zusammen mit external IDs, flags und der Verbindung prüfst.

Was sammelt der Agent? +

Über 100 Gerätesignale: Canvas, WebGL, Audio, Schriften, Bildschirm, Hardware, Gebietsschema, Plugins und Automatisierungsspuren. WebRTC-Netzwerkadressen liest er nie.

Was passiert bei Budget- oder Nutzungslimit? +

Identifizierung pausiert leise: Der Agent liefert capped statt einer Request ID, sodass Nutzer keine Fehler sehen und dein Login weiterhin funktioniert. Lege Budgets pro Tag, Woche oder Monat fest sowie ein Ausgabenlimit pro Key. Sonst gibt es kein Rate Limit.

Passt das nicht zu mir? +

Sie erhalten Ihr Geld zurück. Nicht zufrieden in den ersten drei Monaten nach Ihrer ersten bezahlten Rechnung? Wir erstatten alles, was Sie in dieser Zeit bezahlt haben, ohne Fragen.

Wo werden die Daten gespeichert? +

In der EU, in AWS eu-west-1. Ereignisse werden gespeichert, bis du sie löschst, oder 1, 3 oder 5 Jahre, wenn du das wählst. Mit einem API-Aufruf werden alle gespeicherten Daten eines deiner Nutzer gelöscht.

Deine erste Identifizierung, in Minuten

Zahlung nach Verbrauch, alle Signale inklusive.