攻撃保護の設定を更新

PATCH /v1/attack-protection · 権限 attack-protection:write

JSON マージパッチ(application/merge-patch+json、RFC 7396)で攻撃保護オブジェクトを更新します。If-Match は必須です。ない場合は 428、古い ETag の場合は 412 が返されます。何も変更しないパッチは何も書き込まず、ETag も変わりません。

リクエスト

フィールド 型 必須 説明
If-Match ヘッダー はい 最後に読み取ったオブジェクトの ETag。ない場合は 428、古い場合は 412。
ボディ オブジェクト はい マージパッチ。フィールドは 攻撃保護の設定を置き換え に一覧があります。

動作

レスポンス

攻撃保護の設定を取得 と同じオブジェクトと新しい ETag を含む 200 OK です。

エラー

HTTP コード 発生条件
400 unknown_field セクションまたはフィールドがオブジェクトに含まれていない。errors[] にポインターが一覧表示されます。
400 malformed_request ボディが有効な JSON ではない、または If-Match ヘッダーの形式が不正。
401 unauthenticated 認証情報がない、無効、または失効している。
403 insufficient_permissions 認証情報に attack-protection:write がない。
403 plan_feature_unavailable risk_policy.mode が enforce だが、プランに含まれていない。ボディには feature と required_plan が含まれます。
412 precondition_failed 読み取り後にオブジェクトが変更されています。もう一度読み取ってから再試行してください。
413 payload_too_large オブジェクトが 32 KiB を超えている。
422 validation_failed 値の型が誤っているか範囲外である、または block_threshold が challenge_threshold より大きくない。errors[] にポインターが一覧表示されます。
422 below_security_floor 値がセキュリティの下限を下回っている。errors[] の各項目は、detail でフィールドと下限を示します。
422 allowlist_range_too_broad 許可リストのプレフィックスが、IPv4 では /8、IPv6 では /32 より広い。
428 precondition_required If-Match がない。
429 rate_limited レート制限を超えました。Retry-After の時間が経過してから再試行してください。
503 service_unavailable 依存先が一時的に利用できません。Retry-After の時間が経過してから再試行してください。

複数の種類のエラーがある場合は、最も重大なものだけが次の順序で返されます: unknown_field、validation_failed、below_security_floor、allowlist_range_too_broad、plan_feature_unavailable。書き込んだ値がレスポンスに戻されることはありません。

例

curl -X PATCH https://api.eu.keenauth.com/v1/attack-protection \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Content-Type: application/merge-patch+json" \
  -H 'If-Match: "3f1c9a0b5d7e2a4c6b8d0e1f2a3b4c5d"' \
  -d '{"risk_policy": {"block_threshold": 9}, "sms_protection": null}'