Skip to main content

レート制限

Rate Limit APIを使うと、様々なREST APIの現在のレート制限のステータスをチェックできます。

REST API 概要ドキュメンテーションでは、レート制限のルールについて説明しています。 以下で説明する Rate Limit API を使用して、現在のレート制限ステータスをいつでも確認できます。

レート制限のステータスを理解する

Search APIはカスタムのレート制限を持ち、他のREST APIを管理するレート制限とは分離されています。 GraphQL APIもカスタムのレート制限を持ち、REST APIのレート制限とは分離されて別に計算されます。

そのため、Rate Limit APIのレスポンスは、レート制限を分類します。 resources の下には、4 つのオブジェクトがあります。

  • coreオブジェクトは、REST API中の検索に関連しないすべてのリソースに関するレート制限のステータスを提供します。

  • searchオブジェクトは、Search APIに対するレート制限のステータスを提供します。

  • graphqlオブジェクトは、GraphQL APIに対するレート制限のステータスを提供します。

  • integration_manifestオブジェクトは、GitHub App Manifest コード変換エンドポイントに対するレート制限のステータスを提供します。

For more information on the headers and values in the rate limit response, see "Resources in the REST API."

Get rate limit status for the authenticated user

Note: Accessing this endpoint does not count against your REST API rate limit.

Note: The rate object is deprecated. If you're writing new API client code or updating existing code, you should use the core object instead of the rate object. The core object contains the same information that is present in the rate object.

get /rate_limit

コードサンプル

Shell
curl \
  -H "Accept: application/vnd.github.v3+json" \
  https://api.github.com/rate_limit
JavaScript (@octokit/core.js)
await octokit.request('GET /rate_limit')

Response

Status: 200 OK
{
  "resources": {
    "core": {
      "limit": 5000,
      "remaining": 4999,
      "reset": 1372700873,
      "used": 1
    },
    "search": {
      "limit": 30,
      "remaining": 18,
      "reset": 1372697452,
      "used": 12
    },
    "graphql": {
      "limit": 5000,
      "remaining": 4993,
      "reset": 1372700389,
      "used": 7
    },
    "integration_manifest": {
      "limit": 5000,
      "remaining": 4999,
      "reset": 1551806725,
      "used": 1
    },
    "code_scanning_upload": {
      "limit": 500,
      "remaining": 499,
      "reset": 1551806725,
      "used": 1
    }
  },
  "rate": {
    "limit": 5000,
    "remaining": 4999,
    "reset": 1372700873,
    "used": 1
  }
}

Not modified

Status: 304 Not Modified

Resource not found

Status: 404 Not Found

Notes