Mettre à jour les paramètres de protection contre les attaques

PATCH /v1/attack-protection · permission attack-protection:write

Met à jour l'objet de protection contre les attaques avec un patch de fusion JSON (application/merge-patch+json, RFC 7396). If-Match est obligatoire : absent, 428 ; ETag périmé, 412. Un patch qui ne change rien n'écrit rien et conserve l'ETag.

Requête

Champ Type Obligatoire Description
If-Match en-tête oui L'ETag de l'objet tel que lu en dernier. Absent : 428 ; périmé : 412.
corps objet oui Le patch de fusion. Les champs sont listés dans Remplacer l'ensemble des paramètres de protection contre les attaques.

Comportement

Réponse

200 OK avec l'objet, comme dans Obtenir les paramètres de protection contre les attaques, et le nouvel ETag.

Erreurs

HTTP code Quand
400 unknown_field Une section ou un champ ne fait pas partie de l'objet. errors[] liste les pointeurs.
400 malformed_request Le corps n'est pas un JSON valide, ou l'en-tête If-Match est mal formé.
401 unauthenticated L'identifiant est absent, invalide ou révoqué.
403 insufficient_permissions L'identifiant n'a pas attack-protection:write.
403 plan_feature_unavailable risk_policy.mode vaut enforce et le plan ne l'inclut pas ; le corps contient feature et required_plan.
412 precondition_failed L'objet a changé depuis votre lecture. Relisez-le et réessayez.
413 payload_too_large L'objet dépasse 32 KiB.
422 validation_failed Une valeur a le mauvais type ou est hors plage, ou block_threshold n'est pas supérieur à challenge_threshold. errors[] liste les pointeurs.
422 below_security_floor Une valeur est sous le plancher de sécurité. Chaque entrée de errors[] nomme le champ et son plancher dans detail.
422 allowlist_range_too_broad Un préfixe de liste d'autorisation est plus large que /8 (IPv4) ou /32 (IPv6).
428 precondition_required If-Match est absent.
429 rate_limited La limite de débit est dépassée ; réessayez après la durée Retry-After.
503 service_unavailable Une dépendance est temporairement indisponible ; réessayez après la durée Retry-After.

Si plusieurs types d'erreur sont présents, seul le plus grave est renvoyé, dans cet ordre : unknown_field, validation_failed, below_security_floor, allowlist_range_too_broad, plan_feature_unavailable. Les valeurs écrites ne sont jamais renvoyées dans la réponse.

Exemple

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}'