Il collegamento degli account unisce l'identificazione a livello di dispositivo di TRACIO al tuo concetto di utente. Passando l'ID interno dell'account come linkedId, indichi a TRACIO quali visitor ID appartengono alla stessa persona autenticata — tra browser, dispositivi e sessioni.
Ogni visitatore che TRACIO vede riceve un identificatore a livello di dispositivo (vedi Identificazione). Da solo, quell'identificatore non sa nulla dei tuoi utenti: riconosce soltanto i dispositivi che tornano.
linkedId colma questo divario: è l'accountId dell'utente attualmente autenticato, inviato insieme alla normale richiesta di identificazione. Quando due o più visitor ID condividono lo stesso linkedId, TRACIO li collega in un unico account, alimentando la pagina Connections della dashboard, l'identità cross-device e il rilevamento della deriva nei furti di account (ATO) — vedi Cosa ottieni.
Senza linkedId, TRACIO vede solo dispositivi anonimi: non ha modo di raggrupparli per account.
Il collegamento degli account è un parametro aggiuntivo sull'integrazione che hai già. Non serve codice lato backend.
Aggiungi lid al tag script esistente, accanto alla tua chiave pubblica:
<!-- prima --><script src="https://edge.tracio.ai/s.js?k=PUBLIC_KEY" async></script>
<!-- dopo (solo quando l'utente è autenticato) --><script src="https://edge.tracio.ai/s.js?k=PUBLIC_KEY&lid=ACCOUNT_ID" async></script>Se usi @tracio/sdk, passa linkedId nella configurazione:
import { Tracio } from "@tracio/sdk"
const tracio = Tracio.init({ publicKey: "5ca175fc...", linkedId: user.id,})linkedId viene letto una sola volta, nel momento in cui l'agent si carica. Se il tag script o la chiamata a Tracio.init() viene eseguita prima del login, devi assicurarti che linkedId sia incluso non appena lo stato di autenticazione è noto:
lid=ACCOUNT_ID.Tracio.init() con la stessa publicKey restituisce l'istanza esistente e ignora la nuova configurazione — non recepisce linkedId. Chiama prima tracio.destroy(), poi Tracio.init({ publicKey, linkedId: user.id }). In alternativa rimanda la prima chiamata a Tracio.init() finché lo stato di autenticazione dell'utente non è noto.linkedId solo dopo un login reale. Non inviarlo mai per ospiti o visitatori anonimi e non ripiegare mai su un segnaposto come "guest" o "anonymous": un valore segnaposto condiviso unisce persone estranee nello stesso account.linkedId viene troncato a 256 byte. Gli ID ordinari sono ben al di sotto; non passare token voluminosi (per esempio JWT completi).linkedId è archiviato insieme agli altri dati di evento del tuo workspace e ti viene mostrato nella dashboard come identificatore dell'account nella pagina Connections: per la visualizzazione non viene né sottoposto ad hash né anonimizzato, perché devi poter riconoscere l'account.
Internamente, la corrispondenza cross-device di TRACIO (rilevamento del fanout, baseline comportamentali ATO) usa un hash unidirezionale separato e circoscritto all'ambiente calcolato su linkedId, mai il valore grezzo: la logica di corrispondenza non dipende quindi dal valore in chiaro e non lo espone al di fuori della tua dashboard e dei tuoi webhook.
Per questo linkedId dovrebbe essere un ID interno opaco anziché un indirizzo e-mail o un nome (vedi Regole): è visibile a te come identificatore dell'account, quindi non dovrebbe contenere più informazioni personali di quelle che hai già.
s.js (o la richiesta di identificazione dell'agent) includa sia k= sia lid=.linkedId non è integrato compare un avviso di configurazione; l'avviso scompare entro pochi minuti dalla prima richiesta con lid=.Non appena linkedId inizia ad arrivare, TRACIO sblocca: