APIアクセス実装方法

Yahoo! ID連携ではウェブAPIアクセスにおいてOAuth2.0 Bearer Token Usageをサポートしており、以下の方法によりAccess Tokenを送信できます。

  • AuthorizationヘッダーにAccess Tokenを含めて任意のHTTPメソッドで送信【推奨】
  • URLクエリにAccess Tokenを含めてGETで送信
  • リクエスト

    Authorizationヘッダー

    Access TokenをHTTPヘッダーに含む形で送信するので、GET/POST/PUTなど任意のHTTPメソッドでもリクエストが送信でき、Access TokenとウェブAPI固有のパラメータ分離できるのが特徴です。特別な理由がないかぎりAuthorizationヘッダーを使ったウェブAPIリクエスト方式を推奨します。

    以下のように、AuthorizationヘッダーにAccess Tokenを含めてHTTPリクエストを送信します。

    POST /path/to/webEndPoint?param=var HTTP/1.1
    Host: xxxxxx.yahooapis.jp
    Authorization: Bearer [access_token]

    サンプルリクエスト

    POST /yconnect/v2/attribute HTTP/1.1
    Host: userinfo.yahooapis.jp
    Authorization: Bearer SlAV32hkKG 

    URLクエリ

    クライアントアプリがウェブブラウザー(Javascript)で動作する場合など、HTTPヘッダーにAccess Tokenを含めて送信するのが難しい場合に適したウェブAPIリクエスト方式です。

    以下のようにウェブAPIリクエストのクエリ部分にAccess Tokenを含めて、GETでHTTPリクエストを送信します。

    GET /path/to/webEndPoint?access_token=[access_token]&param=var
    Host: xxxxx.yahooapis.jp

    サンプルリクエスト

    GET /yconnect/v2/attribute?access_token=SlAV32hkKG HTTP/1.1
    Host: userinfo.yahooapis.jp

    エラーレスポンス

    ユーザー認証エラー

    ユーザー認証に関連するエラーレスポンスはWWW-Authenticateヘッダーで返却されます。

    HTTP
    ステータス
    WWW-Authenticate
    ヘッダー内のパラメータ
    説明 クライアント側のエラーハンドリング方法
    400
    error="invalid_request"
    Access Tokenが空である、不正なフォーマットである、もしくは重複しています。 クライアント側の実装方法が正しいか見直してください。
    401
    error="invalid_token"
    Access TokenAccess Tokenが有効期限切れ、もしくはその他の理由で無効になっています。 クライアント側でRefresh Tokenを保持している場合は、動的にAccess Token更新を行ってください。
    402
    error="insufficient_scope"
    ユーザーにアクセス認可されていません。スコープ外のWeb APIへのアクセスです。 アプリケーションで利用可能なスコープおよびscopeパラメーターに不足がないかご確認ください。

    ウェブAPI固有のエラー

    ウェブAPI固有のレスポンスについてはウェブAPIの仕様書を参照してください。

アプリケーションの管理

Yahoo! ID連携 v2

利用のルール

開発のヒント