Valdiklio galiniai taškai

Šiuos galinius taškus kviečia SilentShield valdiklis. Paprastai jų patys nekviečiate — jie aprašyti, kad galėtumėte sekti, kas vyksta jūsų puslapyje.

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

POST/api/v1/telemetry/behavior

Siunčia dabartinės sąveikos elgsenos duomenis (pelė, klaviatūra, slinkimas) ir grąžina nonce kartu su verdiktu. Jūsų forma šį nonce siunčia kaip lauką `behavior_nonce`.

Auth: API raktas (X-Api-Key antraštė)

Request Body:

{"ts": 1767225600000, "nonce": "bh_abc123", "event": "submit", "form_key": "contact", "feature_hash": "...", "metrics": {...}, "signature": "..."}

Response:

{"id": "...", "nonce": "bh_abc123", "status": "queued", "verdict": "human", "score": 0.87, "captcha_solved": false, "challenge_required": false, "difficulty": "pass", "reason_codes": [], "action": "allow"}

Įskaičiuojama į jūsų kvotą, kai tik įvykis `submit` atvyksta su nonce — lygiai vieną kartą per pateikimą. `init`, `telemetry` ir `form_detected` neskaičiuojami.

POST/api/v1/captcha/challenge

Paprašo skaičiavimo užduoties, kai verdiktas buvo neaiškus. Valdiklis tai daro pats; užduotis vienkartinė ir susieta su nonce.

Auth: API raktas (X-Api-Key antraštė)

Request Body:

{"nonce": "bh_abc123", "difficulty": "medium"}

Response:

{"ok": true, "challenge_id": "ch_xyz789", "a": 7, "op": "+", "b": 5}

Reikalinga tik tada, kai telemetrijos atsakymas pranešė `challenge_required: true`.

POST/api/v1/captcha/verified

Pateikia išspręstą užduotį. Nonce pažymimas kaip žmogus tik tada, kai atsakymas atitinka užduotį, kurią serveris išdavė šiam raktui.

Auth: API raktas (X-Api-Key antraštė)

Request Body:

{"challenge_id": "ch_xyz789", "answer": 12}

Response:

{"ok": true}   //  403: {"ok": false, "reason": "invalid_solution"}

Fail-closed: neteisingas ar pasibaigęs atsakymas grąžina 403 su `reason: "invalid_solution"`. Užduotis vienkartinė.

POST/api/v1/captcha/verify-nonce

Patikrina valdiklio sugeneruotą nonce. Iškvieskite tai iš savo serverio, kad patvirtintumėte formos pateikimo teisėtumą.

Auth: API raktas (X-Api-Key antraštė)

Request Body:

{"nonce": "nonce_xyz789"}

Response:

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

Šis galinis taškas skaičiuojamas kvotai. Nonce yra vienkartiniai ir galioja 5 minutes.