À propos des limites de débit pour les GitHub Apps
GitHub définit une limite sur le nombre de requêtes qu’une GitHub App peut envoyer au serveur au cours d’une période spécifique. Cette limite permet d’éviter les abus et les attaques par déni de service et garantit que le système reste disponible pour tous les utilisateurs.
GitHub peut utiliser des limites de débit secondaires pour certaines actions afin de garantir la disponibilité de l’API. Vous pouvez éviter les limites de débit secondaires en suivant les bonnes pratiques et en respectant les instructions de limite de débit répertoriées ci-dessous. Pour plus d’informations sur les limites de débit secondaires, consultez « Meilleures pratiques pour utiliser l'API REST » et « Ressources disponibles dans l’API REST ».
Déterminer des limites de débit pour une GitHub App
Vous pouvez confirmer l’état actuel de votre limite de débit à tout moment à l’aide de l’API REST. Pour plus d’informations, consultez « Ressources disponibles dans l’API REST ».
Les limites de débit des requêtes effectuées par une GitHub App dépendent de l’emplacement où l’application est installée. Si l’application est installée sur une organisation ou un dépôt appartenant à une entreprise sur GitHub.com, la limite de débit est supérieure à celle d’une application installée en dehors d’une entreprise. Pour plus d’informations, consultez « Plans de GitHub » et « Types de comptes GitHub ».
Les limites de débit aussi varient selon que l’GitHub App s’authentifie avec un jeton d’accès utilisateur ou avec un jeton d’accès d’installation. Un jeton d’accès utilisateur permet à une application d’agir pour le compte d’un utilisateur spécifique, une fois que l’utilisateur a autorisé l’application. Un jeton d’accès d’installation permet à une application d’attribuer des actions à l’application elle-même. Pour plus d’informations sur les jetons d’accès utilisateur et d’installation, consultez « À propos de l’authentification avec une application GitHub ».
Jetons d’accès d’installation sur GitHub.com
Les GitHub Apps qui s’authentifient avec un jeton d’accès d’installation utilisent la limite de débit minimale de l’installation, soit 5 000 requêtes par heure. Si une application est installée dans une organisation comptant plus de 20 utilisateurs, l’application reçoit 50 requêtes supplémentaires par heure pour chaque utilisateur. Les installations qui ont plus de 20 dépôts reçoivent 50 requêtes supplémentaires par heure pour chaque dépôt. La limite de débit maximale d’une installation est de 12 500 requêtes par heure.
Jetons d’accès d’installation sur GitHub Enterprise Cloud
Les GitHub Apps installées sur une organisation au sein d’une entreprise sur GitHub.com sont limitées à 15 000 requêtes par heure et par organisation qui a installé l’application.
Jetons d’accès utilisateur sur GitHub.com
Les requêtes de jeton d’accès utilisateur sont limitées à 5 000 requêtes par heure et par utilisateur authentifié.
Jetons d’accès utilisateur sur GitHub Enterprise Cloud
Les requêtes de jeton d’accès utilisateur sont soumises à une limite supérieure de 15 000 requêtes par heure et par utilisateur authentifié lorsque la requête provient d’une GitHub App appartenant à une organisation GitHub Enterprise Cloud.
Pour aller plus loin
- « Ressources disponibles dans l’API REST » dans la documentation de l’API REST
- « Rate limits and node limits for the GraphQL API » dans la documentation de l’API GraphQL