0
GitHub APIのRateLimit
2022-08-27

GitHubのAPIを使いだすと割と早くRateLimitに引っかかる

  • rate limit
gh: API rate limit exceeded for user ID xxxxxxxx.

そしてRateLimitにあたってしまったときに、いつ使えるようになるのか?が知りたい

GitHubのCLIにずばりそのものの機能がある

$ gh api rate_limit
{
  "resources": {
    "core": {
      "limit": 5000,
      "used": 58,
      "remaining": 4942,
      "reset": 1661532628
    },
    "search": {
      "limit": 30,
      "used": 0,
      "remaining": 30,
      "reset": 1661531080
    },
    "graphql": {
      "limit": 5000,
      "used": 4888,
      "remaining": 112,
      "reset": 1661532952
    },
    "integration_manifest": {
      "limit": 5000,
      "used": 0,
      "remaining": 5000,
      "reset": 1661534620
    },
    "source_import": {
      "limit": 100,
      "used": 0,
      "remaining": 100,
      "reset": 1661531080
    },
    "code_scanning_upload": {
      "limit": 1000,
      "used": 0,
      "remaining": 1000,
      "reset": 1661534620
    },
    "actions_runner_registration": {
      "limit": 10000,
      "used": 0,
      "remaining": 10000,
      "reset": 1661534620
    },
    "scim": {
      "limit": 15000,
      "used": 0,
      "remaining": 15000,
      "reset": 1661534620
    },
    "dependency_snapshots": {
      "limit": 100,
      "used": 0,
      "remaining": 100,
      "reset": 1661531080
    }
  },
  "rate": {
    "limit": 5000,
    "used": 58,
    "remaining": 4942,
    "reset": 1661532628
  }
}

各リソースごとにどのような状況かが返ってくる

各リソース部分のresetがいつリセットされるかのエポック秒となっている

なのでdateコマンドで変換して見てあげるといつか分かる

$ date -d @1661532952 +"%Y-%m-%d %H:%M:%S"
2022-08-27 01:55:52

つなげるとこんな感じ

$ gh api rate_limit | jq '.resources.graphql.reset' | xargs -i date -d @{} +"%Y-%m-%d %H:%M:%S"
2022-08-27 01:55:52

大人しく待ちましょう

0

Profile

swfz
swfz
日々学んだことを残していく
Today I Learned
コード片置き場

Account

RSS

Powered by Pixela
© 2024. swfz