Remarque : envisagez de créer une GitHub App à la place d’une OAuth app. La limite de débit pour les GitHub Apps utilisant un jeton d’accès d’installation s’adapte au nombre de référentiels et au nombre d’utilisateurs dans l’organisation. À l’inverse, les OAuth apps ont des limites de débit inférieures et ne sont pas évolutives. Pour plus d’informations, consultez « Différences entre les applications GitHub et les applications OAuth » et « À propos de la création d’applications GitHub ».
À propos des limites de débit pour OAuth apps
OAuth apps agissent pour le compte d’un utilisateur, en effectuant des requêtes avec un jeton d’accès utilisateur après que l’utilisateur a autorisé l’application. Pour plus d’informations, consultez « Autorisation des applications OAuth ».
La génération de ces jetons d’accès utilisateur est soumise à une limitation de débit. En outre, les requêtes d’API effectuées avec ces jetons d’accès utilisateur sont soumises à des limitations de débit.
Limitations de débit pour la connexion des utilisateurs
OAuth apps doivent toujours mettre en cache leurs jetons et n’ont que rarement besoin de se connecter à un utilisateur. La connexion répétée d’un utilisateur peut indiquer un bogue, le plus fréquemment considéré comme une boucle infinie entre l’application et GitHub. Si une application signe l’utilisateur en dix fois dans un délai d’une heure, la prochaine connexion dans la même heure nécessite une nouvelle autorisation de l’application. Cela garantit à l’utilisateur que l’application frappe tant de jetons et fournit une pause dans ce qui peut être une boucle infinie sinon. Cette limite de dix taux de connexion est différente de la limite de dix jeton également appliquée pour OAuth apps. Pour plus d’informations sur la limite de dix jetons, consultez « Autorisation des applications OAuth ».
Limitations de débit pour l'API
GitHub définit une limite concernant le nombre de requêtes qu’une OAuth app peut envoyer à l’API REST au cours d’une période spécifique. Il limite également la valeur de point des requêtes qu’une OAuth app peut effectuer sur l’API GraphQL au cours d’une période spécifique. En plus de ces limites de taux principales, GitHub peut également appliquer des limites de taux secondaires. Ces limites permettent d’éviter les mauvaises utilisations et les attaques par déni de service et garantissent que le système reste disponible pour tous les utilisateurs.
Pour plus d’informations, consultez « Limites de débit pour l'API REST » et « Limites de débit et limites de Node pour l’API GraphQL ».