Note
Du solltest in Betracht ziehen, eine GitHub App anstelle einer OAuth app zu erstellen. Das Ratenlimit für GitHub Apps, die ein Installationszugriffstoken verwenden, wird mit der Anzahl der Repositorys und der Anzahl der Organisationsbenutzer skaliert. Umgekehrt weisen OAuth apps niedrigere Ratenlimits auf und sind nicht skalierbar. Weitere Informationen finden Sie unter Unterschiede zwischen GitHub-Apps und OAuth-Apps und unter Informationen zum Erstellen von GitHub-Apps.
Informationen zu Ratenbegrenzungen für OAuth apps
OAuth apps handeln im Namen der Benutzerinnen, indem sie Anforderungen nach der Autorisierung der App durch die Benutzerinnen mit einem Benutzerzugriffstoken senden. Weitere Informationen findest du unter Autorisieren von OAuth-Apps.
Die Generierung dieser Benutzerzugriffstoken unterliegt einer Ratenbegrenzung. Darüber hinaus unterliegen die mit diesen Benutzerzugriffstoken vorgenommenen API-Anforderungen Ratenbegrenzungen.
Ratenbegrenzungen für Benutzeranmeldungen
OAuth apps sollten Ihre Token immer zwischenspeichern, und es sollte sich nur selten ein Benutzer anmelden müssen. Die wiederholte Anmeldung eines Benutzers kann ein Anzeichen für einen Fehler sein, der sich zumeist in Form einer Endlosschleife zwischen der App und GitHub äußert. Wenn eine App den Benutzer innerhalb einer Stunde zehnmal anmeldet, wird bei der nächsten Anmeldung innerhalb derselben Stunde eine erneute Autorisierung der Anwendung verlangt. Dadurch wird sichergestellt, dass der Benutzer weiß, dass die App so viele Token ausstellt, und den Vorgang unterbricht, der sonst zu einer Endlosschleife werden könnte. Diese Ratenbegrenzung auf zehn Anmeldungen unterscheidet sich von der Begrenzung auf zehn Token, die für OAuth apps ebenfalls durchgesetzt wird. Informationen zur Begrenzung auf zehn Token sind unter „Autorisieren von OAuth-Apps“ zu finden.
Ratenbegrenzungen für die API
GitHub legt ein Limit für die Anzahl von Anforderungen fest, die eine OAuth app innerhalb eines bestimmten Zeitraums der REST-API stellen kann. Außerdem wird ein Grenzwert für den Punktwert von Abfragen festgelegt, die eine OAuth app innerhalb eines bestimmten Zeitraums an der GraphQL-API vornehmen kann. Zusätzlich zu diesen Primärratengrenzwerten können GitHub auch Sekundärratengrenzwerte anwenden. Diese Limits tragen dazu bei, Missbrauch und Denial-of-Service-Angriffe zu verhindern, und stellen sicher, dass das System für alle Benutzer*innen verfügbar bleibt.
Weitere Informationen findest du unter Ratenbegrenzungen für die REST-API und unter Ratenbegrenzungen und Knotengrenzwerte für die GraphQL-API.