Comprendre la limitation du taux de l'API Cato

Les limites de taux pour l'API Cato sont appliquées par requête, par compte. Cela signifie que pour chaque requête, il y a un compteur individuel, mais il s'applique à toutes les clés API (pour différents utilisateurs) interrogeant ce compte. Ainsi, deux utilisateurs différents appelant deux requêtes distinctes n'ont pas d'impact l'un sur l'autre. Cependant, si deux utilisateurs différents appellent la même requête, alors ces requêtes sont soumises au même compteur (pour les besoins de la limitation de taux) et il est possible que la requête d'un utilisateur impacte l'autre utilisateur.

Le back-end de l'API Cato est hautement disponible et élastique, donc les limites de taux sont un minimum garanti plutôt qu'un maximum absolu. Par exemple, la requête auditFeed a une limite de taux de 5 par minute, ce qui signifie qu'un compte peut appeler auditFeed au moins cinq fois toutes les 60 secondes sans être limité par le taux. En réalité, il est possible pour les clients d'appeler cette requête plus fréquemment, mais le taux minimum garanti d'appels illimités est de 5 par minute. Néanmoins, il existe également un compteur au niveau du compte, donc si cinq utilisateurs différents interrogent tous auditFeed en même temps, pour garantir qu'ils ne soient pas impactés par la limitation de taux, chaque utilisateur pourrait alors appeler la requête une fois toutes les 60 secondes.

Le compte GitHub de Cato contient des scripts Python d'exemple qui gèrent élégamment la limitation de taux en attendant cinq secondes avant de réessayer. Les clients peuvent adopter des stratégies similaires dans leurs propres scripts API.

Si votre requête rencontre des problèmes liés à la limitation de taux, nous vous recommandons d'attendre quelques minutes, puis de reprendre l'envoi de requêtes API supplémentaires.

Limitation de taux API générale

Les appels API sont limités à une limite de taux de 120/minute, sauf pour les requêtes et mutations suivantes :

Exceptions aux requêtes

Les API de requêtes suivantes sont des exceptions et n'ont pas de limites de taux à 120/minute :

  • accountMetrics : 15/minute

  • accountSnapshot : 1/seconde (30/minute)

  • appStatsTimeSeries : 80/minute

  • auditFeed : 5/minute

  • entityLookup : 30/minute (1500/5 heures)

  • eventsFeed : 100/minute

Exceptions aux mutations

Les API de mutations suivantes sont des exceptions et n'ont pas de limites de taux à 120/minute :

  • accountManagement.addAccount : 10/minute

  • accountManagement.removeAccount : 5/minute

  • policy.appTenantRestriction.publishPolicyRevision : 3/minute (20/heure)

  • policy.dynamicIpAllocation.publishPolicyRevision : 3/minute (20/heure)

  • policy.internetFirewall.publishPolicyRevision : 3/minute (20/heure)

  • policy.pacFile.publishPolicyRevision : 3/minute (20/heure)

  • policy.remotePortFwd.publishPolicyRevision : 3/minute (20/heure)

  • policy.socketLanFirewall.publishPolicyRevision : 3/minute (20/heure)

  • policy.socketLanNetwork.publishPolicyRevision : 3/minute (20/heure)

  • policy.wanFirewall.publishPolicyRevision : 3/minute (20/heure)

  • policy.wanNetwork.publishPolicyRevision : 3/minute (20/heure)

  • policy.ztnaAlwaysOn.publishPolicyRevision : 3/minute (20/heure)

  • sandbox.uploadFile : 5/5 minutes

Cet article vous a-t-il été utile ?

Utilisateurs qui ont trouvé cela utile : 2 sur 2

0 commentaire