Skip to main content

GitHub 应用的速率限制

速率限制将流量速率限制为 GitHub.com,以帮助确保所有用户的一致访问。

关于 GitHub Apps 的速率限制

GitHub 对 GitHub App 在特定时间段内可以发送到服务器的请求数设置限制。 此限制有助于防止滥用和拒绝服务攻击,并确保系统仍可供所有用户使用。

GitHub 可能会向某些操作应用其他辅助速率限制来确保 API 可用性。 可以遵循最佳做法并遵守下面列出的速率限制准则来避免辅助速率限制。 有关辅助速率限制的详细信息,请参阅“使用 REST API 的最佳做法”和“REST API 中的资源”。

确定 GitHub App 的速率限制

你可以在任何时候使用 REST API 确认你当前的速率限制状态。 有关详细信息,请参阅“REST API 中的资源”。

GitHub App 发出的请求的速率限制取决于应用的安装位置。 如果应用安装在 GitHub.com 上企业拥有的组织或存储库上,则速率限制将高于企业外部安装的应用的速率限制。 有关详细信息,请参阅“GitHub 的计划”和“GitHub 帐户类型”。

速率限制也取决于 GitHub App 是使用用户访问令牌还是使用安装访问令牌进行身份验证。 用户访问令牌允许应用在用户授权后代表特定用户执行操作。 安装访问令牌允许应用将操作分配给应用本身。 有关用户和安装访问令牌的详细信息,请参阅“关于使用 GitHub 应用进行身份验证”。

在 GitHub.com上安装访问令牌

使用安装访问令牌进行身份验证的 GitHub Apps 使用安装的最低速率限制(每小时 5,000 个请求)。 如果应用程序安装在具有 20 个以上用户的组织中,则该应用程序每小时为每个用户再接收 50 个请求。 具有 20 个以上仓库的安装每小时会为每个仓库再接收 50 个请求。 安装的最大速率限制为每小时 12,500 个请求。

在 GitHub Enterprise Cloud 上安装访问令牌

安装在 GitHub.com 上企业内的组织上的 GitHub Apps 对于安装应用的每个组织,每小时有 15,000 个请求的限制。

GitHub.com 上的用户访问令牌

用户访问令牌请求的速率限制为每个经验证的用户每小时最多发送 5,000 个请求。

GitHub Enterprise Cloud 上的用户访问令牌

当请求来自 GitHub Enterprise Cloud 组织拥有的 GitHub App 时,用户访问令牌请求限制为每小时每个经身份验证的用户最多发送 15,000 个请求。

延伸阅读