いけむランド

はてダからやってきました

rate_limit_status.xml の読み方

Twitter API の残使用可能回数ですね、わかります。


Twitter API の残使用可能回数を取得することができる。

上記の URL にアクセスすると、以下のような XML が得られる。

<hash>
  <hourly-limit type="integer">20</hourly-limit>
  <remaining-hits type="integer">16</remaining-hits>
  <reset-time type="datetime">2008-07-05T16:05:08+00:00</reset-time>
  <reset-time-in-seconds type="integer">1215273908</reset-time-in-seconds>
</hash>


それぞれの値の説明を以下に示す。*1

hourly-limit

  • 1 時間あたりの使用可能回数を示す。
  • 最近は 20 回/h らしい。

remaining-hits

  • 残使用可能回数を示す。
  • 現在時刻が reset-time になると hourly-limit まで回復する。
  • 使用するごとに減り、0 になると使用不可能になる。(´・ω・`)
  • 使用不可能でもカウントはされる。その場合、値は負になる。
    • 使用不可能なのに API を使おうとしまくって、どんなに値が大きくなっても reset-time が延期されるなどのペナルティはないと思われる。

reset-time(-in-seconds)

  • 残使用回数が全快する時刻。(`・ω・´)
    • UTC っぽいので、実際の時刻は +09:00 した時刻になる。
  • reset-time になって、使用可能回数が全快した後に初めて API を使用した時刻から 1h 後の時刻が次の reset-time となる。
    • 例えば、15:00:00 から使用を開始したら、16:00:00 で使用可能回数が全快するが、全快後に初めて API を使用したのが 16:05:00 だったとしたら、次の reset-time は 17:05:00 となる。


まあ、ぶっちゃけ、これくらいは説明無くても、単語の意味を考えれば、すぐわかるよね...。

*1:Sabotter をリロードするなどして、何度も見ているうちにこういうことを意味するのかなと思った程度なので、もしかしたら誤っているかもしれない。