API du tracker JavaScript
Consentement, événements, identité et file d’envoi du navigateur.
Cette API est disponible dans window.lunetric après chargement de tracker.js. Il n’existe pas de file globale permettant d’appeler les méthodes avant le chargement du script. Installer le tracker.
Méthodes
| Méthode | Comportement |
|---|---|
grantConsent() | Active la collecte et initialise les identifiants ; les appels répétés n’ajoutent pas une nouvelle initialisation |
revokeConsent() | Arrête analytics et replay, abandonne la file et supprime le stockage du tracker |
track(name, properties) | Ajoute un objectif après une action réelle, lorsque la collecte est active |
trackPageview() | Force une page vue ; le suivi normal et les navigations SPA sont déjà automatiques |
getVisitorId() | Renvoie l’identifiant visiteur, ou null lorsque la collecte est inactive |
getSessionId() | Renvoie l’identifiant session, ou null lorsque la collecte est inactive |
flush() | Tente l’envoi de la file ; ne renvoie pas une confirmation de livraison |
reset() | Renouvelle visiteur et session si analytics était actif ; retire aussi le consentement replay |
Ces méthodes d’action ne renvoient pas de promesse de confirmation. Pour valider une intégration, contrôlez le réseau et les rapports.
Événements
window.lunetric.track('signup', { plan: 'studio', trial: true });Le nom d’un objectif contient de 1 à 64 caractères parmi a-z, 0-9, _, : et -. Les propriétés sont limitées à dix : clé de 64 caractères maximum ; valeur texte jusqu’à 255 caractères, nombre fini ou booléen. Les objets imbriqués et tableaux ne font pas partie du contrat. N’ajoutez aucun email, secret ou contenu de formulaire aux propriétés.
data-lunetric-goal="checkout_started" mesure le clic sur l’élément. Pour une inscription ou un achat, déclenchez l’objectif après confirmation de l’action, plutôt que sur le seul clic.
Identité et déconnexion
const visitorId = window.lunetric.getVisitorId();
if (visitorId) {
// Transmettre cet identifiant à votre backend authentifié existant.
// Le backend utilise /v1/identify avec sa propre clé d’écriture.
}
// Après la déconnexion effective du compte dans votre application :
window.lunetric.reset();Le reset évite de conserver la même identité analytics pour le prochain compte sur ce navigateur. Il ne déconnecte pas votre application et ne supprime pas les données déjà envoyées. Après reset, le replay exige à nouveau son consentement explicite. API serveur et confidentialité.
Stockage et livraison
Le visiteur est stocké dans localStorage ; la session et la file d’événements dans sessionStorage. Une session expire après 30 minutes sans événement. La file conserve au maximum 100 événements et chaque lot en contient au maximum 20. Les nouvelles tentatives utilisent un délai progressif plafonné à 60 secondes.
Ces limites ne garantissent pas une conservation illimitée pendant une panne. flush() et l’envoi à la fermeture restent des tentatives. Les URL transmises retirent les paramètres non marketing ; les chemins et propriétés doivent eux aussi éviter les données personnelles.
Replay
replay.grantConsent(), replay.revokeConsent() et replay.getState() concernent une capture séparée. Une collecte analytics active ne vaut pas autorisation du replay. Configuration, états et limites.