Endpoints del Widget

Estos endpoints son utilizados por el widget del lado del cliente de SilentShield. Normalmente no necesita llamarlos directamente — el widget lo gestiona automáticamente.

Base URL: https://api.silentshield.io

POST/api/v1/captcha/init

Inicializa una nueva sesión de protección para la página actual. Devuelve un ID de sesión y la configuración.

Auth: API Key (encabezado X-Api-Key)

Request Body:

{"domain": "example.com", "page": "/contact"}

Response:

{"sessionId": "sess_abc123", "features": {"telemetry": true, "pow": true, "honeypot": true}, "threshold": {"suspicious": 0.6, "block": 0.3}}

Este endpoint no cuenta para su cuota.

POST/api/v1/captcha/telemetry

Envía datos de telemetría de comportamiento (movimientos del ratón, patrones de escritura, comportamiento de desplazamiento) para su análisis.

Auth: API Key (encabezado X-Api-Key)

Request Body:

{"sessionId": "sess_abc123", "events": [{"type": "mousemove", "ts": 1234567890, "data": {...}}]}

Response:

{"received": true}

Este endpoint no cuenta para su cuota. Los datos se analizan en tiempo real.

POST/api/v1/captcha/verdict

Solicita un veredicto para la sesión actual basado en los datos de telemetría recopilados.

Auth: API Key (encabezado X-Api-Key)

Request Body:

{"sessionId": "sess_abc123"}

Response:

{"verdict": "human", "score": 0.92, "nonce": "nonce_xyz789", "challengeRequired": false}

Este endpoint cuenta como un evento captcha_shown si se activa un desafío.

POST/api/v1/captcha/verify-nonce

Verifica un nonce generado por el widget. Llame a este endpoint desde su servidor para confirmar que el envío del formulario es legítimo.

Auth: API Key (encabezado X-Api-Key)

Request Body:

{"nonce": "nonce_xyz789"}

Response:

{"valid": true, "verdict": "human", "score": 0.92, "timestamp": "2025-01-15T10:30:00Z"}

Este endpoint cuenta para su cuota. Los nonces son de un solo uso y caducan después de 5 minutos.