5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ChatWork API の利用制限の確認方法

Posted at

ChatWork API の利用制限の確認方法

ChatWorkを活用していると時々データがロストしていることが発覚
なんでなんで、と調べているとChatWork APIには最大コール数というものが設定されており、
特定の時間内に最大までいってしまうとコールができないようです。

5分あたり100回までが公式で発表されているので、これを超えないようにします。
公式ChatWorkAPI説明

確認方法(実際に叩いてみた)

下記のコマンドで自分自身のAPI状況がわかりました。

curl -i -X GET -H "X-ChatWorkToken: 自分のAPI-KEY" "https://api.chatwork.com/v2/me"

正常な場合

Vary: Accept-Encoding,User-Agent
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 92
X-RateLimit-Reset: 1495072244
Content-Length: 498
Connection: keep-alive

X-RateLimit-Limit: 最大コール回数
X-RateLimit-Remaining: 残りコール回数
X-RateLimit-Reset: 次に制限がリセットされる時間(Unixtime)

上記の場合だとまだまだ全然大丈夫そう!

不正常な場合

Vary: Accept-Encoding,User-Agent
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 00
X-RateLimit-Reset: 1495092244
Content-Length: 498
Connection: keep-alive

X-RateLimit-Limit: 最大コール回数
X-RateLimit-Remaining: 残りコール回数
X-RateLimit-Reset: 次に制限がリセットされる時間(Unixtime)

上記の場合だとお亡くなりになってます・・・

回避方法(他にも多分あるだろうが)

  • ChatWork APIを使うときは分間何件通知が来そうなのか予測することが必要
    • それでもって5分間に100件超えないか予測をする
  • 大量に通知を発生しうるBotがいれば、役割毎にBotを分けてAPI Key自体を分割させる
    • とくに大事な通知(障害発生通知とか)と、複数来るようなあまり見ない通知は分けておかないと、いざという時に大事な通知が来ない・・・

まとめ

ChatWork便利だけど、このAPI制限をもうちょっと引き上げてもらいたいです><

5
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?