Closed2

GitHub API レート制限の確認

hankei6kmhankei6km

テストで使っていたら結構ひっかかったので確認方法など。

確認方法

確認の API、これは制限中でも使えるもよう。
https://docs.github.com/ja/rest/reference/rate-limit

API を実行すると以下のような JSON が返ってくる。

{
  "resources": {
    "core": {
      "limit": 5000,
      "used": 5001,
      "remaining": 0,
      "reset": 1646294116
    },

snip

}

REST API は .rerouces.core らしい。

GitHub CLI

GiitHub CLI での確認方法。

$ gh api rate_limit --jq '.resources.core'
{"limit":5000,"remaining":4999,"reset":1646298745,"used":1}

いつリセット(解除さ)れるか

https://docs.github.com/ja/rest/overview/resources-in-the-rest-api#rate-limiting

x-ratelimit-reset 現在のレート制限ウィンドウが UTC エポック秒でリセットされる時刻。

時刻に別の形式を使用する必要がある場合は、最新のプログラミング言語で作業を完了できます。 たとえば、Web ブラウザでコンソールを開くと、リセット時刻を JavaScript の Date オブジェクトとして簡単に取得できます。

new Date(1372700873 * 1000)
// => Mon Jul 01 2013 13:47:53 GMT-0400 (EDT)

GitHub CLI と Node.js の場合。

$ node -e "console.log((new Date($(gh api rate_limit --jq '.resources.core.reset') * 1000)).toString())"
Thu Mar 03 2022 18:12:00 GMT+0900 (GMT+09:00)

GitHub CLI と date コマンドの場合。

$ date -d @"$(gh api rate_limit --jq '.resources.core.reset')"
Thu Mar  3 18:12:25 JST 2022
このスクラップは2022/03/03にクローズされました