Skip to main content
O que o cside detecta
Language

Detecção de agentes de IA

Detecte agentes de IA, bots e navegadores automatizados acessando seu site com cside fingerprinting.

Agentes de IA e navegadores autônomos criam sessões reais em navegadores reais. Checagens tradicionais de User-Agent não bastam. cside fingerprinting expõe esses visitantes pelo campo bot retornado pela Events API.

O que o cside detecta

A Events API retorna um campo bot para cada chamada de identificação. Ele combina sinais de automação, checagens de ambiente e fingerprints comportamentais para identificar:

  • Agentes de navegador com IA - agentes autônomos controlando um navegador real
  • Navegadores headless - Puppeteer, Playwright, Selenium e outros frameworks de automação
  • Runtimes instrumentados - navegadores controlados por WebDriver, CDP ou protocolos similares
  • Bots e scrapers clássicos - crawlers, scrapers e tráfego automatizado que mascara o User-Agent

A detecção roda server-side depois que o script client-side envia um fingerprint, então não pode ser evitada apenas alterando headers do navegador.

Ler o sinal de bot

Cada resposta da Events API contém um campo bot. Para decisões básicas, derive botOrNot de bot.result:

{
  "bot": {
    "result": "not_detected",
    "score": 0,
    "signal": []
  },
  "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) ..."
}
CampoSignificado
bot.resultStatus de detecção. Use "detected" ou "not_detected".
bot.scorePontuação numérica de bot para esta resposta.
bot.signalArray de sinais que contribuíram para a decisão de bot.

O cside detecta cerca de 95% dos bots básicos com esse sinal. Para detecção e enforcement mais precisos, use smart detections e combine vários sinais de fingerprint antes de bloquear.

const botOrNot = identification.bot.result !== "not_detected";

Combine bot com outros sinais para maior confiança:

  • tampering: true - atributos do navegador foram modificados
  • developer_tools: true - developer tools estão abertos
  • virtual_machine: true - sessão rodando em VM ou sandbox
  • high_activity_device: true - muitas identificações no mesmo dispositivo
Confiança por combinação

Nenhum sinal isolado é definitivo. Trate bot como indicador principal e use outros sinais como reforço antes de agir.

Exemplo de integração

No seu JavaScript do lado do cliente, solicite o token de sessão de fingerprint. O campo de resposta continua se chamando token:

const fingerprintResponse = await sendClientTelemetry({
  accountId: "1234567890",
});

if (!fingerprintResponse?.ok) {
  throw new Error("A requisição de telemetria de fingerprint falhou.");
}

const { token: sessionToken } = await fingerprintResponse.json();

No seu backend, troque o token de sessão com https://api.cside.com/token/v1/client e então avalie o campo 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();
}

Próximos passos

Was this page helpful?