UserInfo
Members
response : any
response : any
The OpenID userinfo endpoint response that this object was created with.
Methods
constructor(response)
constructor(response)
Create an object that contains user information
const response = await fetch(/* arguments to fetch the OpenID userinfo endpoint */)
.then(data => data.json())
const userInfo = new UserInfo(response)
// ... or
const userInfo = user.info()
This probably shouldn't get called directly, use User.info()
instead.
id()
id()
Get an unique identifier about the user.
This function requires the openid
scope.
const identifier = userInfo.id()
sub()
sub()
Get an unique identifier about the user.
This function requires the openid
scope.
const identifier = userInfo.sub()
firstName()
firstName()
Get the user's first name.
This function requires the profile
scope.
const firstName = userInfo.firstName()
lastName()
lastName()
Get the user's last name.
This function requires the profile
scope.
const lastName = userInfo.lastName()
birthDate()
birthDate()
Get the user's birth date.
This function requires the profile
scope.
const birthDate = userInfo.birthDate()
// birthDate is a JavaScript Date object
nationalId()
nationalId()
Get the user's unique national identifier (for example their SSN in the US).
This function requires the private
scope.
const nationalId = userInfo.nationalId()
trustLevel()
trustLevel()
Get the user's Vulos Identity trust level.
1
indicates that the user has done no KYC verification but has provided basic details.2
indicates that the user has successfully KYC verification.Anything other than that indicates that the user has done some action to reduce or increase their trust level that hasn't been specified in this document.
This function requires the public
scope.
if (userInfo.trustLevel() >= 2) {
// allow the user to preform some action limited
// to users that have confirmed their identity
}
isEmailVerified()
isEmailVerified()
Get the user's email verification status.
This function requires the email
scope.
if (userInfo.isEmailVerified()) {
// allow the user to use that email for some action
}
isKycVerified()
isKycVerified()
Get the user's KYC verification status.
This function requires the public
scope.
if (userInfo.isKycVerified()) {
// allow the user to do some action that requires
// KYC verification or a confirmed identity
}
address()
address()
Get the user's address.
This function requires the address
scope.
const addressObj = userInfo.address()
email()
email()
Get the user's email address.
This function requires the email
scope.
const email = userInfo.email()
hasRole(role)
hasRole(role)
Check if the user has a specific role in the associated organization to the application.
This function requires the organization:roles
scope.
if (userInfo.hasRole('SuperAdmin')) {
// allow the user to have elevated access
}
isInOrganizationWithName(name)
isInOrganizationWithName(name)
Check if the user is in a specific organization by name.
This function requires the organization:read
scope.
if (userInfo.isInOrganizationWithName('My Organization')) {
// the user is in an organization with name 'My Organization'
}
It is recommended to use isInOrganizationWithId()
instead.
isInOrganizationWithId(id)
isInOrganizationWithId(id)
Check if the user is in a specific organization by id.
This function requires the organization:read
scope.
const organizationId = 100;
if (userInfo.isInOrganizationWithId(organizationId)) {
// the user is in the organization with ID 100
}
wallets()
wallets()
Get the user's Ethereum wallet addresses.
This function requires the wallet
scope.
for (const walletAddress of userInfo.wallets()) {
// do something with the wallet address
}
picture()
picture()
Get the user's profile picture.
This function requires the profile
scope.
const profilePictureUrl = userInfo.picture()
Last updated