/Get User Info
Get User Info
Get details about the authenticated user according to your requested claims.
Response is returned as JWT with Content-Type as application/jwt
Example
eyJraWQiOiJjNjA2YTJhNC0wZjFiLTRjMTQtYmVjNS1mZTRjYWZmNjhkZjQiLCJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIyMjkwMzMzIiwiYXVkIjoiUFNER0UtTkJHLVRCQ0JHRTIyIiwidmVyaWZpZWRfY2xhaW1zIjp7ImNsYWltcyI6eyJwbGFjZV9vZl9iaXJ0aCI6eyJjb3VudHJ5IjoiR0UiLCJsb2NhbGl0eSI6IuGDoeGDkOGDpeGDkOGDoOGDl-GDleGDlOGDmuGDnSJ9LCJiaXJ0aGRhdGUiOiIxOTkwLTEyLTAxIiwibmF0aW9uYWxpdGllcyI6WyJHRSJdLCJwZXJzb25hbF9udW1iZXIiOiJQTk9HRS0wMDAwMDAwMDAwMiIsImdpdmVuX25hbWUiOiLhg5Lhg5Dhg5siLCJtc2lzZG4iOiI1MDAxMTEyMjIiLCJmYW1pbHlfbmFtZSI6IuGDkuGDluGDkOGDleGDnOGDmOGDkOGDqOGDleGDmOGDmuGDmCAyIiwiZW1haWwiOiJnYW1nemF2bkBtYWlsLmNvbSJ9LCJ2ZXJpZmljYXRpb24iOnsiZXZpZGVuY2UiOlt7ImNoZWNrX2RldGFpbHMiOlt7ImNoZWNrX21ldGhvZCI6InZwaXAifSx7ImNoZWNrX21ldGhvZCI6InB2cCJ9XSwiZG9jdW1lbnRfZGV0YWlscyI6eyJkYXRlX29mX2lzc3VhbmNlIjoiMjAxNS0wNS0wNiIsImRvY3VtZW50X251bWJlciI6IjExSUEwMDAwMSIsImRhdGVfb2ZfZXhwaXJ5IjoiMjAyNS0wNS0wNiIsInBlcnNvbmFsX251bWJlciI6IjAwMDAwMDAwMDAyIiwidHlwZSI6ImlkY2FyZCIsImlzc3VlciI6eyJjb3VudHJ5IjoiR0UiLCJuYW1lIjoi4YOY4YOj4YOh4YOi4YOY4YOq4YOY4YOY4YOhIOGDoeGDkOGDm-GDmOGDnOGDmOGDoeGDouGDoOGDnSJ9fSwidHlwZSI6ImRvY3VtZW50In1dLCJ0cnVzdF9mcmFtZXdvcmsiOiJnZV9hbWwiLCJ0aW1lIjoiMjAyMy0wNy0yMFQxMzowNDowMSswNDowMCIsImFzc3VyYW5jZV9sZXZlbCI6ImJhc2ljIiwidmVyaWZpY2F0aW9uX3Byb2Nlc3MiOiJiMWNiZmQ0ZS1iZjY5LTQyMTYtYTExNS0wOGRiODc2NTU0MDgifX0sImlzcyI6Imh0dHBzOlwvXC90ZXN0LWFwaS50YmNiYW5rLmdlIiwiaWF0IjoxNjg5ODQzODQxLCJqdGkiOiJjOTIwMDc4MS0wZWI2LTQ2MGMtOWFiNC1kNjliNzM5MDY0ZDIifQ.GkbYtUZP77YdpzBniopAZ2VmrpvBRXq6q8T4pMRmY9Yy6IaO6H1wLEBrg9TDnN1fNcLqMDusGlC-4ymvLm8rWNKWFAkqIV19PBTRI64US8MjSUJVZBrV3Y9_w2qAEFDvldXlbnZw5AV7FGEDYlBti-EQcxoeZdxhvdgo4EQCnXakgwyB0Y-pi368hRv6mJQgQzxPPJXuE5d0SnFm_B_5psraTVcsD7xtDHXmg2PRKIcnwRw_e_yaq8x3OJC2RwoVD22fgiBF2eYefoSz2lQiqoyu1bgJ5i9l7Hqte22oyC2S9gKxk3ynR6wDwRnPPsuuZvkzVQifPFD2MF4Xq9OKCg
{ "sub": "6464383",
"aud": "PSDGE-NBG-TESTGE22",
"verified_claims": {
"verification": {
"trust_framework": "ge_aml",
"time": "2023-07-07T13:28:48+04:00",
"verification_process": "68bc6fd0-0b7b-480f-ef0b-08db793b9c28",
"evidence": [
{
"type": "document",
"check_details": [
{
"check_method": "vpip"
},
{
"check_method": "pvp"
}
],
"document_details": {
"type": "idcard",
"issuer": {
"name": "იუსტიციის სამინისტრო",
"country": "GE"
},
"personal_number": "01019049020",
"document_number": "19IC69780",
"date_of_issuance": "2020-11-16",
"date_of_expiry": "2030-11-16"
},
"time": "2018-05-21T00:00:00+04:00"
}
],
"assurance_level": "basic"
},
"claims": {
"given_name": "ნინო",
"family_name": "შაიშმელაშვილი",
"birthdate": "1989-07-20",
"place_of_birth": {
"country": "GE",
"locality": "საქართველო"
},
"personal_number": "PNOGE-01019049020",
"nationalities": [
"GE"
],
"msisdn": "555008889",
"email": "[email protected]"
}
}
}
The token does not have expiration time
let's see what is in the JWT
JWT Headers
Parameter | Type | Description |
---|---|---|
kid | guid | this is public key id, which is given by Jwk uri from the open id configuration |
typ | string | token type. The value is always JWT |
alg | string | signature algorithm. The value may be one from the userinfo_signing_alg_values_supported defined in the open id configuration |
JWT Payload
Parameter | Type | Description |
---|---|---|
sub | guid | Authenticated user's id |
aud | string | Your ID, whom is token generated for |
iss | string | TBC url, which generated token |
iat | timestamp | Issuance at |
jti | guid | JWT ID |
verified_claims | object | If you requested verified claims, JWT will contain values of verified claims. Otherwise this element will be skipped |
claims | object | If you requested standard claims, JWT will contain values of standard claims. Otherwise this element will be skipped |
Verified claims
Parameter | Type | Description |
---|---|---|
verification | object | consists of trust_framework, time, verification_process, evidence, typecheck, check_details, check_method, document_details, time, assurance_level |
claims | object | Framework of trust. the value shoud be null or one of supported values (trust_frameworks_supported in open id configuration) |
Standard Claims
Parameter | Type | Description |
---|---|---|
given_name | string | The user's first name |
family_name | string | The user's last name. |
birthdate | string | The user's birth date. |
msisdn | string | The user's contanct phone number. |
string | The user's contanct email. | |
nationalities | array of strings | Array of user's natinalities. |
address | string | The user's actual address as a string. |
gender | string | The user's gender. Male/Female. |
JWT Example
header
{
"kid": "c606a2a4-0f1b-4c14-bec5-fe4caff68df4",
"typ": "JWT",
"alg": "RS256"
}
Verified claims payload
{
"sub": "2290333",
"aud": "PSDGE-NBG-TBCBGE22",
"verified_claims": {
"claims": {
"place_of_birth": {
"country": "GE",
"locality": "საქართველო"
},
"birthdate": "1990-12-01",
"nationalities": [
"GE"
],
"personal_number": "PNOGE-00000000002",
"given_name": "გამ",
"msisdn": "500111222",
"family_name": "გზავნიაშვილი 2",
"email": "[email protected]"
},
"verification": {
"evidence": [
{
"check_details": [
{
"check_method": "vpip"
},
{
"check_method": "pvp"
}
],
"document_details": {
"date_of_issuance": "2015-05-06",
"document_number": "11IA00001",
"date_of_expiry": "2025-05-06",
"personal_number": "00000000002",
"type": "idcard",
"issuer": {
"country": "GE",
"name": "იუსტიციის სამინისტრო"
}
},
"type": "document"
}
],
"trust_framework": "ge_aml",
"time": "2023-07-20T13:04:01+04:00",
"assurance_level": "basic",
"verification_process": "b1cbfd4e-bf69-4216-a115-08db87655408"
}
},
"iss": "https://test-api.tbcbank.ge",
"iat": 1689843841,
"jti": "c9200781-0eb6-460c-9ab4-d69b739064d2"
}
Standard claims payload
{
"sub": "2290333",
"aud": "PSDGE-NBG-TBCBGE22",
"birthdate": "1990-12-01",
"gender": "Male",
"iss": "https://test-api.tbcbank.ge",
"phone_number": "500111222",
"given_name": "გამ",
"family_name": "გზავნიაშვილი 2",
"iat": 1689846765,
"email": "[email protected]",
"jti": "56b4454d-7925-484a-a19a-6d1f8252b1d6"
}
Updated 4 months ago