Twitter API v1.1でのAPI利用ルールの変更について

投稿者
金曜日, 2012年8月17日金曜日

6月末、Twitterの開発者向けブログでTwitter APIの利用方法が変わる予定であるとお知らせしました。この件に関し、こちらにあらためて概要をご案内させていただきます。

これから数週間のうちにTwitter API Version 1.1 (以下v1.1) の提供が開始されます。大きなポイントは以下の3点です。

  • すべてのAPIエンドポイントの承認
  • エンドポイントごとのレートリミット方式を採用
  • 特にTwitterクライアントに関連する今後の開発者ルールの予定

現在利用されているTwitter API Version 1.0 (以下v1.0) からv1.1への移行期間は、v1.1の提供開始より6ヶ月を予定しています。

承認の必要
現在利用されているv1.0では、一定のAPIエンドポイントまでであれば承認をとる必要なく利用可能です。今日現在、Twitterが認識しているのはアプリケーションのIPアドレスのみで、botなどを含むいくつかのアプリケーションがかなり高いレートでデータを利用しています。一般のアプリケーションがデータをよりスムースに利用いただけるように悪意のある利用を防ぐためとともに、開発者のニーズを理解するために、どのようなアプリケーションがAPIにアクセスしているのかを知ることが大切だと考えました。

新しく提供されるv1.1ではエンドポイントを問わず、すべてのAPI利用に対し承認が必要になります。現在すでにOAuthを利用されている場合は、v1.0の認証トークンがそのままv1.1に引き継がれます。OAuthなしでTwitter APIを利用されている場合は2013年3月までにアプリケーションの更新が必要となります。

エンドポイントごとのレートリミット
Twitter APIのv1.0では、アプリケーションが利用する情報のタイプを問わず、リクエストの限度を1時間に350コールとしています。この「すべて一緒」という考え方だと、Twitterのリソースを悪用されることが多い一方、開発者の方々によりスムースなアクセスを提供することが難しくなります。

そこで、v1.1ではAPIのエンドポイントごとにレートを使うことにしました。

  • 1時間に60コール以内を基本のAPIエンドポイントとします。現在のAPIの利用によると、ほとんどのアプリケーションは60コール以内の利用です。これを一定エンドポイントとすることで、多くのアプリケーションに支障をきたすことなく、悪意のあるアプリケーションを排除しやすくなります。
  • ツイートの表示やユーザーの検索など、より大きなボリュームのエンドポイントを必要とするアプリケーションには1時間に720コールまでを提供できるようにします。

開発者ルールの変更
v.1.1では以下の点を含め、開発者ルールにも変更を予定しています。

ディスプレイガイドラインをディスプレイに対する必要条件に変更
例えば、@ユーザー名やリツイート、返信、お気に入りなどのアクションを始め、アプリケーション上にツイートを正しく表示する必要があります。これはTwitterを利用される方々に同じ体験を提供することが大切だと考えているためです。これに沿わない表示方法をされた場合、アプリケーションキーを無効にすることがあります。

プレインストールクライアントの承認の必要
モバイルデバイスやSIMカード、チップセットなどにプレインストールするクライアントアプリケーションの場合は、Twitterの承認が必要となります。

大容量のトークンが必要な開発者はTwitterに連絡を
アプリケーションに100万以上のトークンが必要なアプリケーションはTwitterにご連絡下さい。

なお、v.1.1にともなう変更の詳細はこちらの開発者向けブログ(英語)でご確認下さい。