ウィジェットエンドポイント

これらのエンドポイントはSilentShieldクライアントサイドウィジェットによって使用されます。通常、直接呼び出す必要はありません。ウィジェットが自動的に処理します。

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

POST/api/v1/captcha/init

現在のページの新しい保護セッションを初期化します。セッションIDと設定を返します。

Auth: APIキー(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}}

このエンドポイントはクォータにカウントされません。

POST/api/v1/captcha/telemetry

行動テレメトリーデータ(マウスの動き、タイピングパターン、スクロール行動)を分析のために送信します。

Auth: APIキー(X-Api-Keyヘッダー)

Request Body:

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

Response:

{"received": true}

このエンドポイントはクォータにカウントされません。データはリアルタイムで分析されます。

POST/api/v1/captcha/verdict

収集されたテレメトリーデータに基づいて、現在のセッションの判定結果をリクエストします。

Auth: APIキー(X-Api-Keyヘッダー)

Request Body:

{"sessionId": "sess_abc123"}

Response:

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

このエンドポイントは、チャレンジがトリガーされた場合、captcha_shownイベントとしてカウントされます。

POST/api/v1/captcha/verify-nonce

ウィジェットによって生成されたNonceを検証します。フォーム送信が正当であることを確認するために、サーバーからこのエンドポイントを呼び出してください。

Auth: APIキー(X-Api-Keyヘッダー)

Request Body:

{"nonce": "nonce_xyz789"}

Response:

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

このエンドポイントはクォータにカウントされます。Nonceは使い捨てで、5分後に期限切れになります。