OAuth 1.0a
Purpose | Method |
3-legged OAuth フローのステップ 1 および Sign in with X Consumer アプリケーションがユーザー承認をリクエストするための OAuth Request Token を取得できるようにします。 | POST oauth/request_token |
3-legged OAuth フローのステップ 2 および Sign in with X Consumer アプリケーションが OAuth Request Token を使用してユーザー承認をリクエストできるようにします。 | GET oauth/authenticate |
3-legged OAuth フローのステップ 2 および Sign in with X Consumer アプリケーションが OAuth Request Token を使用してユーザー承認をリクエストできるようにします。 | GET oauth/authorize |
3-legged OAuth フローのステップ 3 および Sign in with X Consumer アプリケーションが OAuth Request Token を OAuth Access Token に交換できるようにします。 | POST oauth/access_token |
登録済みアプリケーションが発行済みの OAuth Access Token を失効させることができます。 | POST oauth/invalidate_token |
OAuth 2.0 Bearer Token
目的 | メソッド |
登録済みの App が、ユーザーのコンテキストなしで App を代表して API リクエストを行うために使用できる、OAuth 2 のアプリ専用の OAuth 2.0 Bearer Token を生成できるようにします。 | POST oauth2/token |
登録済みの App が発行済みの OAuth 2 のアプリ専用の OAuth 2.0 Bearer Token を失効(取り消し)できるようにします。 | POST oauth2/invalidate_token |
POST oauth/request_token
Consumer アプリケーションがユーザー認可を要求するための OAuth Request Token を取得できます。このメソッドは OAuth 1.0 authentication flow の Section 6.1 に準拠します。 すべての OAuth 認可手順で HTTPS の使用が必須です。 使用上の注意:oauth_nonce
には ASCII 値のみが受け付けられます
Resource URL
https://api.x.com/oauth/request_token
Resource Information
Response formats | JSON |
Requires authentication? | No |
Rate limited? | Yes |
Name | Required | Description | Example |
---|---|---|---|
oauth_callback | required | OAuth 1.0a に準拠するため、このパラメータは必須です。ここで指定した値は、ユーザーがあなたのアプリケーションによるアカウントへのアクセスを承認した場合にリダイレクトされる URL として使用されます。バンド外の PIN モードには oob を設定してください。これはデスクトップ/モバイルアプリケーションで使用するカスタムコールバックを指定する方法でもあります。事前登録済みのコールバックがあるかどうかに関わらず、このステップでは常に oauth_callback を送信してください。この endpoint で使用されるコールバック URL は、developer.x.com 上の App の設定内で事前に構成されている必要があります* | http://themattharris.local/auth.php twitterclient://callback |
x_auth_access_type | optional | アプリケーションがユーザーのアカウントに要求するアクセスレベルを上書きします。サポートされる値は read または write です。このパラメータは、開発者が読み取り/書き込みアプリケーションを登録しつつ、必要に応じて読み取り専用アクセスのみを要求できるようにするためのものです。 |
POST https://api.x.com/oauth/request_token
Request POST Body: N/A
Authorization Header: OAuth oauth_nonce="K7ny27JTpKVsTgdyLdDfmQQWVLERj2zAK5BslRsqyw", oauth_callback="http%3A%2F%2Fmyapp.com%3A3005%2Ftwitter%2Fprocess_callback", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1300228849", oauth_consumer_key="OqEqJeafRSF11jBMStrZz", oauth_signature="Pc%2BMLdv028fxCErFyi8KXFM%2BddU%3D", oauth_version="1.0"
Response: oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik&oauth_token_secret=Kd75W4OQfb2oJTV0vzGzeXftVAwgMnEK9MumzYcM&oauth_callback_confirmed=true
Consumer アプリケーションが OAuth Request Token を使用してユーザー認可を要求できるようにします。このメソッドは、OAuth 1.0 authentication flow の Section 6.2 に対応します。デスクトップアプリケーションは、このメソッドの使用が必須であり(GET oauth / authenticate は使用できません)。
使用上の注意: oauth_callback
はこのメソッドには送信しません。代わりに POST oauth / request_token に指定してください。
Resource URL
https://api.x.com/oauth/authorize
Resource Information
Response formats | JSON |
Requires authentication? | Yes |
Rate limited? | Yes |
Name | Required | Description | Default Value | Example |
force_login | optional | 正しいユーザーアカウントが認可されるよう、ユーザーに資格情報の再入力を強制します。 | ||
screen_name | optional | OAuth ログイン画面のユーザー名入力欄を、指定した値であらかじめ入力します。 |
oauth/authorize
のステップに遷移させます:
https://api.x.com/oauth/authorize?oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik
GET oauth/authenticate
request_token
を使用してユーザーの認可を要求できるようにします。
このメソッドは、コールバック認証フローを使用するアプリケーション向けに、OAuth 1.0 authentication flow の Section 6.2 を置き換えるものです。force_login
パラメータが true
に設定されていない限り、このメソッドは現在ログインしているユーザーをアクセス認可の対象アカウントとして使用します。
このメソッドは、ユーザーがすでにアプリケーションに許可を付与している場合、ユーザーがアプリケーションを再承認することなくリダイレクトが行われる点で、GET oauth/authorize と異なります。この動作を実現するには、application record で「Use Sign in with X」設定を有効にする必要があります。
Resource URL
https://api.x.com/oauth/authenticate
Resource Information
Response formats | JSON |
Requires authentication? | Yes |
Rate limited? | Yes |
Name | Required | Description | Default Value | Example |
force_login | optional | 正しいユーザーアカウントが認可されるように、ユーザーに認証情報の入力を強制します。 | true | |
screen_name | optional | OAuth ログイン画面のユーザー名入力欄に指定した値をあらかじめ入力します。 |
oauth/authenticate
ステップにユーザーを誘導し、oauth_token パラメータを付与します:
https://api.x.com/oauth/authenticate?oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik
POST oauth/access_token
Consumer アプリケーションが OAuth Request Token を OAuth Access Token に交換できるようにします。このメソッドは OAuth 1.0 認証フローのセクション 6.3に対応します。 Resource URLhttps://api.x.com/oauth/access_token
Resource Information
Response formats | JSON |
Requires authentication? | Yes |
Rate limited? | Yes |
Name | Required | Description | Default Value | Example |
oauth_token | required | ここで指定する oauth_token は、request_token ステップで返された oauth_token と同一である必要があります。 | ||
oauth_verifier | required | OAuth の Web フローを使用している場合、このパラメータにコールバック URL で返された oauth_verifier の値を設定します。アウトオブバンドの OAuth を使用している場合は、この値に PIN コードを設定します。OAuth 1.0a に準拠するため、このパラメータは必須です。OAuth 1.0a は厳格に適用され、oauth_verifier を使用しないアプリケーションは OAuth フローを完了できません。 |
POST https://api.x.com/oauth/access_token?oauth_token=qLBVyoAAAAAAx72QAAATZxQWU6P&oauth_verifier=ghLM8lYmAxDbaqL912RZSRjCCEXKDIzx
PIN ベースの場合: POST https://api.x.com/oauth/access_token?oauth_token=9Npq8AAAAAAAx72QBRABZ4DAfY9&oauth_verifier=4868795
Example response
oauth_token=6253282-eWudHldSbIaelX7swmsiHImEL4KinwaGloHANdrY&oauth_token_secret=2EEfA6BG5ly3sR3XjE0IBSnlQu4ZrUzPiYTmrkVU&user_id=6253282&screen_name=xapi
POST oauth/invalidate_token
登録済みのアプリケーションがクライアント認証情報を提示することで、発行済みの OAuth access_token を失効できます。access_token が無効化されると、新たに作成されるトークンは別の Access Token となり、無効化されたトークンは以後使用できません。 Resource URLhttps://api.x.com/1.1/oauth/invalidate_token
Resource Information
Response formats | JSON |
Requires authentication? | はい - 無効化したい access tokens を持つユーザー context |
Rate limited? | はい |
POST oauth2/token
https://api.x.com/oauth2/token
Resource Information
Response formats | JSON |
Requires authentication? | Yes - Basic auth with your API key as your username and API key secret as your password |
Rate limited? | Yes |
Name | Required | Description | Default Value | Example |
grant_type | required | アプリケーションが要求するグラントの種類を指定します。現時点では client_credentials のみが許可されています。詳細は Application-Only Authentication を参照してください。 | client_credentials |
POST oauth2/invalidate_token
登録済みのアプリケーションが、クライアント認証情報を提示することで発行済みの OAuth 2.0 Bearer Token を失効(取り消し)できます。Bearer Token が無効化されると、新たに作成されるトークンは別の値になり、無効化されたトークンは以後使用できません。 成功したレスポンスには、失効した Bearer Token を示す JSON 構造体が含まれます。 Resource URLhttps://api.x.com/oauth2/invalidate_token
Resource Information
Response formats | JSON |
Requires authentication? | Yes - OAuth 1.0a with the application’s consumer API keys and the application owner’s access token & access token secret |
Rate limited? | Yes |
Name | Required | Description |
---|---|---|
access_token | required | 失効させたい Bearer Token の値 |