Yahoo! ID連携

属性取得API(UserInfoAPI)

UserInfo APIは、Yahoo! JAPAN ID に登録されているユーザーの属性情報を取得できる属性情報取得APIです。レスポンスはAuthorizationエンドポイントにて指定したscopeパラメータによって変化します。事前に必要な属性に対応するscopeを指定して、ユーザーに同意をとるようにしてください。
ウェブAPI共通で利用するAccess Tokenのリクエスト方法およびエラーレスポンスの仕様については、APIアクセス実装方法を参照してください。

リクエスト

URL: https://userinfo.yahooapis.jp/yconnect/v2/attribute

サポートするHTTPメソッド: POST/GET

リクエストヘッダー

フィールド名 必須 説明 入力値(サンプル)
Authorization Access Tokenの文字列を指定してください。(Bearer Token形式)
※リクエストパラメーターのAccess Tokenを利用しない場合には必須
Bearer SlAV32hkKG

リクエストパラメーター

パラメーター 必須 説明 入力値(サンプル)
access_token Access Tokenの文字列を指定してください。(GETクエリ形式)
※Authorizationヘッダーを利用しない場合には必須
SlAV32hkKG
callback JSONPのコールバック関数
callbackが指定されている場合はレスポンスをJSONPで返却
success

サンプルリクエスト

Bearer Token形式(Authorization Header)

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

GETクエリ形式

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

レスポンス

HTTPコード

200

レスポンスパラメーター

正常系

パラメーター 概要 対応するscope 入力値(サンプル)
subユーザー識別子(GUID)openid
"FQBSQOIDGW5PV4NHAAUY7BWAMU"
name姓名profile
"矢風太郎"
given_name
"太郎"
given_name#ja-Kana-JPカナ名
"タロウ"
given_name#ja-Hani-JP漢字名
"太郎"
family_name
"矢風"
family_name#ja-Kana-JPカナ姓
"ヤフウ"
family_name#ja-Hani-JP漢字姓
"矢風"
gender性別
male / femaleのどちらかを返却
"male"
zoneinfoAsia/Tokyo固定
"Asia/Tokyo"
localeja-JP固定
"ja-JP"
birthdate生年(月日は含まない)
"1986"
nickname名前
"やふうたろう"
pictureアイコン画像URL
"https://dummy.img.yahoo.co.jp/example.png"
emailメールアドレスemail
"yconnect@example.com"
email_verifiedメールアドレス確認済みステータス
"true"
addresscountry国コードaddress
"JP"
postal_code郵便番号
"1028282"
region都道府県
"東京都"
locality市区町村
"千代田区"
formatted都道府県 + 市区町村
"東京都千代田区"

※ユーザーが未登録のデータについてはパラメーター(カラム)自体返却されません。

レスポンスサンプル

通常レスポンス

HTTP/1.1 200 OK
Content-Type: application/json
 
{
  "sub": "FQBSQOIDGW5PV4NHAAUY7BWAMU",
  "name": "矢風太郎",
  "given_name": "太郎",
  "given_name#ja-Kana-JP": "タロウ",
  "given_name#ja-Hani-JP": "太郎",
  "family_name": "矢風",
  "family_name#ja-Kana-JP": "ヤフウ",
  "family_name#ja-Hani-JP": "矢風",
  "gender": "male",
  "zoneinfo": "Asia/Tokyo",
  "locale": "ja-JP",
  "birthdate": "1986",
  "nickname": "やふうたろう",
  "picture": "https://dummy.img.yahoo.co.jp/example.png",
  "email": "yconnect@example.com",
  "email_verified": "true",
  "address": {
    "country": "JP",
    "postal_code": "1028282",
    "region": "東京都",
    "locality": "千代田区",
    "formatted": "東京都千代田区"
  }
}

JSONPレスポンス

HTTP/1.1 200 OK
Content-Type: text/javascript
 
/* Anti CVE-2014-4671 */
{
  "sub": "FQBSQOIDGW5PV4NHAAUY7BWAMU",
  "name": "矢風太郎",
  "given_name": "太郎",
  "given_name#ja-Kana-JP": "タロウ",
  "given_name#ja-Hani-JP": "太郎",
  "family_name": "矢風",
  "family_name#ja-Kana-JP": "ヤフウ",
  "family_name#ja-Hani-JP": "矢風",
  "gender": "male",
  "zoneinfo": "Asia/Tokyo",
  "locale": "ja-JP",
  "birthdate": "1986",
  "nickname": "やふうたろう",
  "picture": "https://dummy.img.yahoo.co.jp/example.png",
  "email": "yconnect@example.com",
  "email_verified": "true",
  "address": {
    "country": "JP",
    "postal_code": "1028282",
    "region": "東京都",
    "locality": "千代田区",
    "formatted": "東京都千代田区"
  }
}

エラーレスポンス

レスポンスヘッダー

フィールド名 必須 説明 入力値(サンプル)
WWW-Authenticate Access Tokenの不正な値や有効期限切れ時に返却される
errorとerror_descriptionを返却
※JSONPのときはフィールドは存在しません

パラメーター

パラメーター名 必須 説明 入力値(サンプル)
error エラーコード
"invalid_token"
error_description エラー概要
"The Access Token expired"

レスポンスサンプル

通常レスポンス

HTTP/1.1 401 Unauthorized
WWW-Authenticate: error="invalid_token", error_description="The Access Token expired"

JSONPレスポンス

HTTP/1.1 200 OK
Content-Type: text/javascript
 
/* Anti CVE-2014-4671 */
success({
    error="invalid_token",
    error_description="The Access Token expired"
})

よくある質問(FAQ)

insufficient_scope エラーが返却されます。

Access Tokenを取得する前段階にてお客様の同意を得ていないためです。Authorization エンドポイントにscope パラメータに含めて同意をとったときに取得できるAccess Tokenをご利用ください。

返却されないパラメーター(属性情報)があります。

ユーザーが未登録のデータについてはパラメーター(カラム)自体返却されません。



Yahoo!知恵袋で調べる