Endpoint del widget

Questi endpoint vengono utilizzati dal widget lato client di SilentShield. Normalmente non è necessario chiamarli direttamente — il widget li gestisce automaticamente.

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

POST/api/v1/captcha/init

Inizializza una nuova sessione di protezione per la pagina corrente. Restituisce un ID di sessione e la configurazione.

Auth: API Key (intestazione 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}}

Questo endpoint non conta per la quota.

POST/api/v1/captcha/telemetry

Invia i dati di telemetria comportamentale (movimenti del mouse, modelli di digitazione, comportamento di scorrimento) per l'analisi.

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

Request Body:

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

Response:

{"received": true}

Questo endpoint non conta per la quota. I dati vengono analizzati in tempo reale.

POST/api/v1/captcha/verdict

Richiede un verdetto per la sessione corrente basato sui dati di telemetria raccolti.

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

Request Body:

{"sessionId": "sess_abc123"}

Response:

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

Questo endpoint conta come evento captcha_shown se viene attivata una sfida.

POST/api/v1/captcha/verify-nonce

Verifica un nonce generato dal widget. Chiama questo endpoint dal tuo server per confermare che l'invio del modulo è legittimo.

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

Request Body:

{"nonce": "nonce_xyz789"}

Response:

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

Questo endpoint conta per la quota. I nonce sono monouso e scadono dopo 5 minuti.