属性取得API(UserInfoAPI)
2021年8月3日をもちましてYahoo! ID連携 v1の新規の登録を終了いたしました。
2022年5月31日にYahoo! ID連携 v1の利用を終了いたしますのでv2への移行が必要です。
v2の移行方法はこちらよりご確認ください。
属性取得API(UserInfoAPI)
UserInfo APIは、Yahoo! JAPAN ID に登録されているユーザーの属性情報を取得できる属性情報取得APIです。レスポンスはAuthorizationエンドポイントにて指定したscopeパラメータによって変化します。事前に必要な属性に対応するscopeを指定して、ユーザーに同意をとるようにしてください。
ウェブAPI共通で利用するアクセストークンのリクエスト方法およびエラーレスポンスの仕様については、APIアクセス実装方法を参照してください。
2022年3月31日より、属性取得API(UserInfoAPI)から一部情報を取得する場合、アプリケーション詳細画面より開発するWebサイトまたはアプリケーションのプライバシーポリシーURL、利用規約URLの登録が必須となります。
対象の属性情報は、レスポンスパラメーターの概要欄に「※」の記載がある情報です。
アプリケーション詳細画面より「属性取得APIで追加して取得する情報」から追加で取得する情報を選択のうえ、プライバシーポリシーURL、利用規約URLを登録してください。
登録されたプライバシーポリシーURL、利用規約URLは、利用者同意画面に表示されます。
リクエスト
URL: https://userinfo.yahooapis.jp/yconnect/v1/attribute
サポートするHTTPメソッド: GET
リクエストパラメーター
パラメーター | 必須 | 値の例 | 説明 |
---|---|---|---|
schema | ○ | openid | openid を指定してください。 |
サンプルリクエスト
GET /yconnect/v1/attribute?schema=openid HTTP/1.1
Host: userinfo.yahooapis.jp
Authorization: Bearer 2OBRckZjTT5a3aKD......(中略).........mT1oULUNOuUlw3
レスポンス
HTTPコード
200
レスポンスパラメーター
※概要欄に「※」の記載がある情報を取得する場合、別途アプリケーション詳細画面にて、「属性取得APIで追加して取得する情報」とプライバシーポリシーURL、利用規約URLを登録が必要です。
パラメーター | 返却する属性 | 対応するScope | 備考 |
---|---|---|---|
user_id | ユーザー識別子 | openid | ユーザー識別子を返却します。26文字の固定長です。 ※本項目以外のパラメータをユーザ識別に利用しないでください。 |
name | 姓名※ | profile | ユーザーが登録している姓名を返却します。最大200文字の可変長です。 |
given_name | 名※ | profile | ユーザーが登録している名のみを返却します。最大100文字の可変長です。 |
given_name#ja-Kana-JP | カナ名※ | profile | ユーザーが登録している名のヨミガナを返却します。最大100文字の可変長です。 |
given_name#ja-Hani-JP | 漢字名※ | profile | ユーザーが登録している名の漢字を返却します。最大100文字の可変長です。 |
family_name | 姓※ | profile | ユーザーが登録している姓のみを返却します。最大100文字の可変長です。 |
family_name#ja-Kana-JP | カナ姓※ | profile | ユーザーが登録している姓のヨミガナを返却します。最大100文字の可変長です。 |
family_name#ja-Hani-JP | 漢字姓※ | profile | ユーザーが登録している姓の漢字を返却します。最大100文字の可変長です。 |
gender | 性別 | profile | ユーザーが登録している性別を返却します。 男性はmale、女性はfemaleを返却します。 |
birthday | 生年 | profile | ユーザーが登録している生年月日の生年のみを4桁で返却します。 |
locale | ロケール情報 | profile | ja-JPの固定値を返却します。 |
登録メールアドレス※ | メインに設定しているメールアドレスを返却します。最大64文字の可変長です。 ※本項目はユニークではありません。異なるユーザーで同一のメールアドレスを登録されている場合もあるため、ユーザー識別子としては利用できません。 | ||
email_verified | 登録メールアドレスのステータス※ | emailで返却したメールアドレスが登録メールアドレスである場合は、確認済かどうかをtrue/falseで返却します。 Yahoo!メールアドレス(@yahoo.co.jp)の場合は、受信できる状態かどうかをtrue/falseで返却します。 |
|
address | 住所情報セット | address | お客様登録済みの住所情報のセットを返却します。 |
address/country | 国コード | 2文字の国コードを返却します。 | |
address/postal_code | 郵便番号 | ユーザーが登録している郵便番号を返却します。最大28文字の可変長です。 | |
address/region | 都道府県 | ユーザーが登録している都道府県を返却します。最大40文字の可変長です。 | |
address/locality | 市区町村 | ユーザーが登録している市区町村を返却します。最大40文字の可変長です。 |
サンプルレスポンス
HTTP/1.1 200 OK
Content-Type: application/json
{
"user_id": "43M63NAGMHBAYMXRMY3WODOWS4",
"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",
"birthday": "2000",
"locale": "ja-JP",
"email": "your_email@example.com",
"email_verified": true,
"address": {
"locality": "港区",
"region": "東京都",
"postal_code": "1076211",
"country": "jp"
}
}
エラーレスポンス
必須パラメーターがない場合は以下のレスポンスを返します。
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"error" : "invalid_request"
}
弊社サーバーが障害等により、データを返せない場合は以下のレスポンスを返します。
HTTP/1.1 503 Service Unavailable
Content-Type: application/json;charset=UTF-8
Cache-Control: no-store
Pragma: no-cache
{
"error": "server_error",
"error_description": ""
}
よくある質問(FAQ)
insufficient_scope エラーが返却されます。
下記いずれかの場合、エラーが返却されます。
(1)アプリケーションIDの設定状況により、属性取得APIが利用できない状態となっている場合
下記アプリケーションの詳細画面より設定内容をご確認ください。
https://e.developer.yahoo.co.jp/dashboard/
▼属性取得APIを利用できる条件
・ID連携利用有無:「ID連携を利用する」
・属性取得APIを利用しますか?:「属性取得APIを利用する」
※ID連携利用有無の選択は一度ご登録すると変更できません。
(2)アクセストークンを取得する前段階にてお客様の同意を得ていない場合
Authorization エンドポイントにscope パラメータに含めて同意をとったときに取得できるAccess Tokenをご利用ください。
属性情報が空で返却されます。
ユーザーが未登録のデータについては空文字列として返却されます。
Yahoo! ID連携 v1
- Yahoo! ID連携とは
- ガイドラインを確認する
- Yahoo! JAPAN IDを取得する
- アプリケーションIDを登録する
- WEBへの導入(利用言語を決める)
- iOS/Androidへの導入(OSを選択する)
- 属性取得API(UserInfoAPI)について
- 請求先住所参照API(BillingAddressAPI)について
- IDトークンについて
- APIアクセス実装方法
- Yahoo! ID連携用語集
- FAQ