Integración con JavaScript

Integre SilentShield en cualquier sitio web usando JavaScript puro, o utilice nuestras guías específicas para React, Vue y Angular.

1. Agregue la Etiqueta Script

Agregue esta etiqueta script a su HTML, idealmente antes de la etiqueta de cierre </body>:

HTMLhtml
<script src="https://api.silentshield.io/client.js?key=YOUR_API_KEY" defer></script>

2. Inicialice el Widget

Llame a SilentShield.init() después de que el DOM se haya cargado:

JavaScriptjavascript
document.addEventListener('DOMContentLoaded', function() {
  SilentShield.init({
    apiKey: 'YOUR_API_KEY',
    lang: 'auto',
    features: {
      telemetry: true,
      captchaUI: true,
      fallbackCaptcha: true,
      showBrandingBadge: true,
    },
    onVerdict: function(response) {
      console.log('SilentShield verdict:', response);
    }
  });
});

Opciones de Configuración

apiKey
API Key (requerida)
lang
Código de idioma o 'auto' para detección del navegador (predeterminado: 'auto'). Soporta 25 idiomas.
thresholdSuspicious
Una puntuación por debajo de este valor activa un desafío (predeterminado: 0.6)
thresholdBlock
Una puntuación por debajo de este valor bloquea la solicitud (predeterminado: 0.3)
telemetry
Habilitar seguimiento de comportamiento (predeterminado: true)
captchaUI
Mostrar interfaz de CAPTCHA cuando sea necesario (predeterminado: true)
fallbackCaptcha
Habilitar CAPTCHA matemático como respaldo (predeterminado: true)
showBrandingBadge
Mostrar insignia 'Protegido por SilentShield' (predeterminado: true)
zeroPii
Disable browser fingerprinting for maximum privacy (default: false). See Features → Zero-PII Mode.
debugOverlay
Mostrar superposición de depuración (predeterminado: false)
onVerdict
Función de callback que se ejecuta cuando se recibe un veredicto

Aplicaciones de Página Única (SPA)

Para SPA que usan enrutamiento del lado del cliente (React Router, Vue Router, etc.), SilentShield observa automáticamente los cambios en el DOM y detecta nuevos formularios. No es necesario reinicializar después de la navegación.

Lectura del Nonce

Después del envío del formulario, el Nonce está disponible como un campo oculto:

HTMLhtml
const nonce = document.querySelector('input[name="ss_nonce"]')?.value;