Format webhooka

SilentShield može slati obavijesti u stvarnom vremenu na vaš poslužitelj putem webhookova. Konfigurirajte URL-ove webhookova u Nadzorna ploča → Obavijesti.

Struktura podataka

Svi podaci webhooka slijede ovu strukturu:

{"event": "bot_detected", "timestamp": "2025-01-15T10:30:00Z", "data": {"keyId": "key_abc", "domain": "example.com", "ip": "203.0.113.42", "verdict": "bot", "score": 0.15, "userAgent": "Mozilla/5.0...", "page": "/contact"}}

Vrste događaja

EventDescription
bot_detectedAktivira se kada je zahtjev klasificiran kao bot.
bot_spikeAktivira se kada otkrivanja botova premaše prag upozorenja unutar konfiguriranog prozora.
quota_warningAktivira se kada korištenje kvote dosegne 80% ili 90%.
quota_exceededAktivira se kada je vaša mjesečna kvota premašena.
domain_verification_failedAktivira se kada provjera ponovne verifikacije domene ne uspije.
key_rotatedAktivira se kada se API ključ rotira.

Verifikacija potpisa

Svaki webhook uključuje zaglavlje X-SilentShield-Signature koje sadrži HMAC-SHA256 potpis. Verificirajte ovaj potpis kako biste osigurali autentičnost webhooka.

  1. Dohvatite neobrađeno tijelo zahtjeva (kao niz znakova, prije parsiranja)
  2. Dohvatite vrijednost zaglavlja X-SilentShield-Signature
  3. Izračunajte HMAC-SHA256 tijela koristeći vašu tajnu webhooka kao ključ
  4. Usporedite izračunati potpis s vrijednošću zaglavlja
const crypto = require('crypto');

function verifyWebhook(body, signature, secret) {
  const computed = crypto
    .createHmac('sha256', secret)
    .update(body)
    .digest('hex');
  return crypto.timingSafeEqual(
    Buffer.from(computed),
    Buffer.from(signature)
  );
}

Politika ponovnog pokušaja

Ako vaša krajnja točka vrati statusni kod koji nije 2xx ili istekne vremensko ograničenje (10 sekundi), SilentShield ponavlja isporuku do 3 puta s eksponencijalnim odgađanjem (1 minuta, 5 minuta, 30 minuta). Nakon 3 neuspjela pokušaja, webhook se označava kao neuspješan i vidljiv je u Nadzorna ploča → Obavijesti → Neuspjele isporuke.

Tajna webhooka

Vaša tajna webhooka generira se pri stvaranju krajnje točke webhooka na nadzornoj ploči. Možete je pregledati ili regenerirati u Nadzorna ploča → Obavijesti → Webhookovi → Uredi.