Limitation du débit de l’API REST entrante
Pour éviter les demandes API REST entrantes excessives, définissez des règles qui limitent le nombre de demandes API REST entrantes traitées par heure. Vous pouvez créer des règles pour limiter les demandes pour des utilisateurs spécifiques, des utilisateurs avec des rôles spécifiques ou tous les utilisateurs.
Les règles de limite de taux sont créées dans la table Règles de limite de taux [sys_rate_limit_rules].
Priorité de limitation de débit
- Règles définies pour les règles de remplacement d’un seul utilisateur pour tous les utilisateurs et les règles pour les utilisateurs dotés d’un rôle.
- Règles définies pour les utilisateurs avec un rôle Remplacez les règles pour Tous les utilisateurs.
GET /now/v2/table/incident.- L’option Limiter les incidents par utilisateur s’applique à l’utilisateur ITIL, qui peut soumettre jusqu’à 200 demandes par heure.
- L’option Limiter les incidents par administrateur d’importation s’applique à tous les utilisateurs disposant du rôle import_admin. Chaque utilisateur disposant du rôle import_admin peut soumettre jusqu’à 500 demandes par heure.
- L’option Limiter les incidents par ITIL s’applique à tous les utilisateurs disposant du rôle itil. Chaque utilisateur disposant du rôle ITIL peut soumettre jusqu’à 100 demandes par heure.
- L’option Limiter les incidents s’applique à tous les utilisateurs. Chaque utilisateur peut soumettre jusqu’à 100 demandes par heure.
Lorsque l’utilisateur ITIL effectue la demande GET /now/v2/table/incident, la demande correspond aux critères de trois règles : Limiter les incidents, Limiter les incidents par ITIL et Limiter les incidents par utilisateur. Seule la règle Limiter les incidents par utilisateur est appliquée, car elle a priorité sur les autres règles. Par conséquent, l’utilisateur ITIL peut soumettre un maximum de 200 demandes par heure.
Si un utilisateur dispose de deux rôles ou plus correspondant aux critères de plusieurs règles de limitation de débit pour une ressource d’API REST, la règle autorisant le plus petit nombre de demandes s’applique aux demandes de l’utilisateur pour la ressource. Pour les exemples de règles de la figure ci-dessus, supposons que l’utilisateur Abel Tuter a à la fois le rôle import_admin et le rôle itil. Lorsqu’Abel Tuter envoie une demande, celle-ci répond aux critères de la règle Limiter les incidents par l’administrateur et de la règle Limiter les incidents par ITIL . Seule la règle Limiter les incidents par ITIL est appliquée, car elle autorise le plus petit nombre de demandes. Par conséquent, Abel Tuter peut soumettre un maximum de 100 demandes par heure.
En-têtes de réponses API REST
- X-RateLimit-Limit affiche le nombre de demandes autorisées par heure.
- X-RateLimit-Reset affiche un UNIX horodatage pour la prochaine réinitialisation planifiée de la fenêtre de limite de taux.
- X-RateLimit-Rule affiche le sys_id de la règle de limite de taux [sys_rate_limit_rules] en cours d’application.
{
"error": {
"message": "Rate limit exceeded",
"detail": "Rate limit of 100 requests per hour for Table API exceeded"
},
"status": "failure"
}Le code d’état d’une demande refusée est 429 Trop de demandes.