認可 (Authorization)

ユーザーの情報へアクセスするには、そのユーザーからアクセスの認可を得る必要があります。

サポートする認可方式
API OAuth Basic認証
Search API※1 × ×
REST API ×
Streaming API
※1 認可は不要

ここではOAuthによる方法について解説します。

アプリケーションの登録

Create an applicationでアプリケーションを登録します。登録したアプリケーションは、My applicationsで管理できます。

すでに使用されているアプリケーション名では登録できず、アプリケーションの説明は10文字以上である必要があります。

Consumer key、Consumer secretの取得

アプリケーションの登録に成功すると、アプリケーション管理ページのDetailsが表示されます。ここのOAuth settingsの項目で、Consumer keyConsumer secretを取得できます。

Application typeの設定

アプリケーションを動作させるためには、Application typeの設定を確実に行う必要があります。これはアプリケーション管理ページの[Settings]タブにあります。

access (Permission level)

アプリケーションが必要とするアクセスの種類を指定します。Permission levelには、

  1. Read only
  2. Read and Write
  3. Read, Write and Access direct messages

の3レベルがあり、それぞれ次のようにアクセスできる情報が異なります。

許可内容 Read only Read and Write Read, Write and
Access direct messages
タイムラインのツイートを見る
フォローしている人を見る
新しくフォローする ×
プロフィールを更新する ×
ツイートする ×
ダイレクトメッセージを見る × ×
Twitterのパスワードを見る × × ×
The Application Permission Model | Twitter Developers

Callback URL

アプリケーションを登録するときには、不要であっても必ずCallback URLに値を設定しておきます。さもなくばリクエスト トークンの取得時に、

<error>Desktop applications only support the oauth_callback value 'oob'</error>

と返されます。

Callback URLは、Application Typeの[Callback URL]で設定します。実際にCallbackさせるURLはアプリケーション上で指定できるため、ここのURLは任意で構いません。たとえばhttp://example.com/でも問題ありません。

アプリケーションの削除

My applicationsで削除対象のアプリケーションを開き、上部の[Delete]をクリックします。

ユーザーによるアプリケーションの認可

次の手順によりアクセス トークンを取得します。

  1. リクエスト トークンの取得
  2. Twitterの認可ページへのリダイレクト
  3. リクエスト トークンからアクセス トークンへの変換
Implementing Sign in with Twitter | Twitter Developers

現状ではアクセストークンに有効期限はありません。OAuth FAQ | Twitter Developers

OAuthライブラリ (OAuth libraries)

認可の処理は煩雑であるため、これを簡単に行うためのライブラリが提供されています。