Кожная ідэнтыфікацыя, наживую
Новыя падзеі з'яўляюцца за некалькі секунд, з наведвальнікам, external ID і часам.
Распазнавайце браўзер, які вяртаецца, нават у рэжыме інкогніто або з выдаленымі cookies, выяўляйце боты і падробленыя прылады і правярайце кожны вынік на сваім серверы, перш чым дзейнічаць.
Глядзіце, што мы можам даведацца пра гэты браўзер. Запуск дэма адпраўляе нам яго сігналы і захоўвае ў ім ID.
У API для вашага кода, а ў панэлі для таго, хто правярае выпадак.
Новыя падзеі з'яўляюцца за некалькі секунд, з наведвальнікам, external ID і часам.
Аўтаматызацыя, headless-браўзеры, праграмны рэндэрынг, падменныя native-функцыі і гадзінныя паясы, што не супадаюць.
Прылада паказвае кожны external ID, які з'яўляўся на ёй, каб мультыакаунты былі бачныя.
Браўзер атрымлівае толькі request ID. Ваш сервер атрымлівае падзею праз secret key і вырашае.
Выдаленне external ID выдаляе ўсе яго падзеі і сувязі з прыладамі.
Без планаў і абавязацельстваў. Пасля кожнага цыкла аплаты вы плаціце за выкарыстаныя ідэнтыфікацыі, кожную з усімі сігналамі, server API і дашбордам.
Глядзіце планы і ўсе цэны →Паказаныя цэны не ўключаюць прымянімыя падаткі або зборы (напр. ПДВ).
Браўзер атрымлівае request ID, ваш сервер атрымлівае ўсю інфармацыю.
Адзін script-тэг ад api або тыпізаваны ES-модуль з 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_ з кантрольнай сумай; сакрэтныя ключы захоўваюцца як хэш і паказваюцца адзін раз.
Фільтр па visitor, external ID, IP, флагу, вердыкце бота, ацэнцы рызыкі і даце.
DELETE /external-ids/{id} выдаляе ўсе падзеі і сувязі прылад гэтага ID.
Так. Агент — гэта звычайны ES-модуль без залежнасцяў, таму працуе ў React, Svelte, Vue або без фрэймворка. Без bundler загрузіце /agent.js і выкарыстоўвайце глабальны FingerprintAgent.
Не. Ідэнтычныя прылады, напрыклад адна і тая ж мадэль тэлефона з адной ОС, маюць адзіны fingerprint, таму браўзер без захаванага ID можна супаставіць з visitor ID іншага. Разглядайце гэта як lead для праверкі разам з external IDs, flags і злучэннем.
Больш за 100 сігналаў прылады: canvas, WebGL, аўдыё, шрыфты, экран, абсталяванне, locale, плагіны і сляды аўтаматызацыі. Ніколі не чытае сеткавыя адрасы WebRTC.
Ідэнтыфікацыя ціха прыпыняецца: агент вяртае capped замест request ID, таму карыстальнікі не бачаць памылкі, а ўваход працягвае працаваць. Задайце бюджэты на дзень, тыдзень або месяц і ліміт выдаткаў на ключ. Нічога іншага не абмежавана па хуткасці.
Вы вернёте свои деньги. Не довольны в первые три месяца после первого оплаченного счёта? Мы вернём всё, что вы заплатили за этот период, без лишних вопросов.
У ЕС, у AWS eu-west-1. Події захоўваюцца, пакуль вы іх не выдаліце, або 1, 3 ці 5 гадоў, калі вы гэта абралі, а адзін выклік API выдаляе ўсё, што захавана для аднаго з вашых карыстальнікаў.
Аплата па факце, усе сігналы ўключаны.