SilentShield

Instalacja widgetu

SilentShield dodaje się do witryny jedną linijką kodu. Widżet automatycznie wykrywa formularze i od razu je chroni.

Podstawowa integracja

Ten fragment kodu należy dodać przed zamykającym tagiem </body> na swojej stronie:

<script src="https://api.silentshield.io/client.js?k=YOUR_API_KEY" crossorigin="anonymous" defer></script>

Co dzieje się automatycznie

  • Widget wykrywa wszystkie formularze na stronie
  • Analiza zachowań działa w tle (niewidoczna dla użytkowników)
  • CAPTCHA pojawia się tylko wtedy, gdy wykryto podejrzane zachowanie
  • Przed wysłaniem formularza wstrzykiwany jest nonce weryfikacyjny

Weryfikacja po stronie serwera (zalecana)

Po przesłaniu formularza należy zweryfikować nonce na swoim serwerze, aby potwierdzić, że formularz został przesłany przez człowieka.

POST https://api.silentshield.io/api/v1/captcha/verify-nonce

X-Api-Key: YOUR_API_KEY

PHPphp
<?php
$nonce = $_POST['behavior_nonce'] ?? '';
$ch = curl_init('https://api.silentshield.io/api/v1/captcha/verify-nonce');
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => [
        'Content-Type: application/json',
        'X-Api-Key: ' . $apiKey,
    ],
    CURLOPT_POSTFIELDS => json_encode(['nonce' => $nonce]),
    CURLOPT_RETURNTRANSFER => true,
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);

if (($result['ok'] ?? false) !== true || ($result['verdict'] ?? '') !== 'human') {
    http_response_code(403);
    die('Bot detected');
}
Node.jsjavascript
const response = await fetch('https://api.silentshield.io/api/v1/captcha/verify-nonce', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-Api-Key': process.env.SILENTSHIELD_API_KEY,
  },
  body: JSON.stringify({ nonce: req.body.behavior_nonce }),
});
const data = await response.json();
if (!data.ok || data.verdict !== 'human') {
  return res.status(403).json({ error: 'Bot detected' });
}

Testowanie

Dopisanie ?silentshield-debug do adresu URL aktywuje nakładkę debugowania. Wyświetla ona w czasie rzeczywistym aktualny wynik zachowania, werdykt i aktywne funkcje.

Następny krok: weryfikacja domeny