Détection d'agents IA
Détectez les agents IA, bots et navigateurs automatisés qui atteignent votre site avec cside fingerprinting.
Les agents IA et navigateurs autonomes créent de vraies sessions dans de vrais navigateurs. Les contrôles User-Agent traditionnels ne suffisent pas. cside fingerprinting expose ces visiteurs via le champ bot renvoyé par l’Events API.
Ce que cside détecte
L’Events API renvoie un champ bot pour chaque appel d’identification. Il combine signaux d’automatisation, contrôles d’environnement et fingerprints comportementaux pour identifier :
- Agents navigateur IA - agents autonomes pilotant un vrai navigateur
- Navigateurs headless - Puppeteer, Playwright, Selenium et autres frameworks d’automatisation
- Runtimes instrumentés - navigateurs contrôlés par WebDriver, CDP ou protocoles similaires
- Bots et scrapers classiques - crawlers, scrapers et trafic automatisé qui masque le User-Agent
La détection s’exécute server-side après l’envoi du fingerprint par le script client-side, elle ne peut donc pas être évitée seulement en modifiant les headers navigateur.
Lire le signal bot
Chaque réponse de l’Events API contient un champ bot. Pour les décisions de base, dérivez botOrNot depuis bot.result :
{
"bot": {
"result": "not_detected",
"score": 0,
"signal": []
},
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) ..."
}
| Champ | Signification |
|---|---|
bot.result | Statut de détection. Utilisez "detected" ou "not_detected". |
bot.score | Score bot numérique pour cette réponse. |
bot.signal | Tableau des signaux qui ont contribué à la décision bot. |
cside détecte environ 95% des bots basiques avec ce signal. Pour une détection et un enforcement plus précis, utilisez smart detections et combinez plusieurs signaux de fingerprint avant de bloquer.
const botOrNot = identification.bot.result !== "not_detected";
Combinez bot avec d’autres signaux pour plus de confiance :
tampering: true- attributs navigateur modifiésdeveloper_tools: true- outils développeur ouvertsvirtual_machine: true- session dans une VM ou sandboxhigh_activity_device: true- nombreuses identifications depuis le même appareil
Aucun signal seul n’est définitif. Traitez bot comme indicateur principal et utilisez les autres signaux comme renfort avant d’agir.
Exemple d’intégration
Dans votre JavaScript côté client, demandez le token de session de fingerprint. Le champ de réponse s’appelle toujours token :
const fingerprintResponse = await sendClientTelemetry({
accountId: "1234567890",
});
if (!fingerprintResponse?.ok) {
throw new Error("La requête de télémétrie fingerprint a échoué.");
}
const { token: sessionToken } = await fingerprintResponse.json();
Dans votre backend, échangez le token de session avec https://api.cside.com/token/v1/client, puis évaluez le champ bot :
const response = await fetch("https://api.cside.com/token/v1/client", {
method: "POST",
headers: { "Content-Type": "text/plain" },
body: sessionToken,
});
const identification = await response.json();
const botOrNot = identification.bot.result !== "not_detected";
if (botOrNot) {
return respondWithChallenge();
}
Étapes suivantes
- Lisez la référence Events API
- Consultez Récupérer les datapoints
- Contactez l’équipe commerciale pour activer fingerprinting
Thanks for your feedback!