# OAuth アプリのレート制限

レート制限は、GitHub.com へのトラフィックのレートを制限し、すべてのユーザーに一貫したアクセスを確保するのに役立ちます。

> \[!NOTE]
> GitHub Appの代わりにOAuth appを構築することを検討してください。 インストール アクセス トークンを使用する GitHub Apps のレート制限は、リポジトリの数と組織のユーザー数に応じてスケーリングされます。 逆に、 OAuth apps はレート制限が低く、スケーリングされません。 詳細については、「[GitHub アプリと OAuth アプリの違い](/ja/enterprise-server@3.22/apps/oauth-apps/building-oauth-apps/differences-between-github-apps-and-oauth-apps)」および「[GitHub アプリの作成について](/ja/enterprise-server@3.22/apps/creating-github-apps/about-creating-github-apps/about-creating-github-apps)」を参照してください。

> \[!WARNING]
> OAuth apps は、 **1 時間あたり 2,000 件のアクセス トークン要求の**レート制限の対象となります。 アプリケーションがこの制限を超えると、新しいアクセス トークンを生成する以降の要求は一時的にブロックされ、エラー応答が返される可能性があります。 **これにより一時的な停止が発生する可能性があります**。 サービス中断の可能性を回避できるように、実装は適切に計画してください。

## OAuth apps のレート制限について

OAuth apps ユーザーがアプリを承認した後、ユーザー アクセス トークンを使用して要求を行うことで、ユーザーの代わりに動作します。 詳しくは、「[OAuth アプリの承認](/ja/enterprise-server@3.22/apps/oauth-apps/building-oauth-apps/authorizing-oauth-apps)」をご覧ください。

これらのユーザー アクセス トークンの生成は、レート制限の対象になります。 さらに、これらのユーザー アクセス トークンを使って行われた API 要求もレート制限の対象になります。

## サインイン中のユーザーのレート制限

OAuth apps は常にトークンをキャッシュする必要があり、ユーザーのサインインが必要になることはほとんどありません。 ユーザーが繰り返しサインインすると、バグを示す可能性があり、最も頻繁にアプリと GitHubの間の無限ループと見なされます。 アプリが 1 時間以内にユーザーに 10 回サインインした場合、同じ時間内の次のサインインでは、アプリケーションの再承認が必要になります。 これにより、ユーザーはアプリが非常に多くのトークンを生成していることを認識できるようになります。それ以外の場合は、無限ループになる可能性がある部分にブレークを挿入します。 この 10 *個のサインイン\_レート制限は、*\_ にも適用される 10 OAuth apps制限とは異なります。 10 トークンの制限については、「[OAuth アプリの承認](/ja/enterprise-server@3.22/apps/oauth-apps/building-oauth-apps/authorizing-oauth-apps#creating-multiple-tokens-for-oauth-apps)」を参照してください。

## API のレート制限

GitHub Enterprise Serverでは、API レート制限が既定で無効になっています。 インスタンスのレート制限を確認するには、サイト管理者にお問い合わせください。

サイト管理者の場合は、インスタンスのレート制限を設定できます。 詳しくは、「[Configuring rate limits (レート制限を構成する)](/ja/enterprise-server@3.22/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-rate-limits)」をご覧ください。

インスタンスの外部でユーザーまたは組織用のアプリを開発する場合は、標準の GitHub レート制限が適用されます。 詳細については、[](/ja/rest/using-the-rest-api/rate-limits-for-the-rest-api)ドキュメントの [GraphQL API のレート制限とクエリ制限](/ja/graphql/overview/rate-limits-and-query-limits-for-the-graphql-api) と GitHub Free を参照してください。

## 参考資料

* [REST API のレート制限](/ja/enterprise-server@3.22/rest/using-the-rest-api/rate-limits-for-the-rest-api)
* [GraphQL API のレート制限とクエリ制限](/ja/enterprise-server@3.22/graphql/overview/rate-limits-and-query-limits-for-the-graphql-api)
* [GitHub アプリのレート制限](/ja/enterprise-server@3.22/apps/creating-github-apps/registering-a-github-app/rate-limits-for-github-apps)