酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

C#とCoreTweetを使ってAPIの残数(rate limti)を取得する

本記事ではC#とCoreTweetを使って、APIの残数(rate limti)を取得する方法を紹介します。

CoreTweetのNuGetを使った導入方法とTwitterの開発者サイトでのアプリケーション登録(アクセスキーの取得)に関しては以前紹介した「C#とCoreTweetを使って簡単にTwitterへツイートするbotを作る - 酢ろぐ!」をご覧ください。

特定のユーザーのツイートを取得する

APIの残数(rate limti)を取得するにはREST APIのapplication/rate_limit_statusを利用します。application/rate_limit_statusの詳細な仕様に関しては本記事の参考セクションでリンクを貼っていますのでご参照ください。

var screenName = "daruyanagi";

var tokens = CoreTweet.Tokens.Create("{API key}",
    "{API secret}",
    "{Access token}",
    "{Access token secret}");

var rateLimits = await tokens.Application.RateLimitStatusAsync();
foreach (var rateLimit in rateLimits["statuses"])
{
    Console.WriteLine("{0}: {1} {2}",
        rateLimit.Key, rateLimit.Value.Remaining, 
        rateLimit.Value.Limit);
    Console.WriteLine("---------");
}

下図は上記のサンプルコードを実行した結果です。少し分かりにくいかもしれませんが、user_timelineの残数が179になっています。

f:id:ch3cooh393:20150118190749p:plain

参考

APIの残数(rate limti)を取得するにはREST APIのapplication/rate_limit_statusを利用しました。詳しい仕様やパラメータについては以下のページを参考にしてください。