User

Interfaces

UserTokens

interface UserTokens {
    accessToken: string, 
    refreshToken: string, 
    idToken: string,
    tokenType: string,
    expiresAt: number
}

Members

api : BaseAuth

The BaseAuth implementation that was used to create this object.

accessToken : string?

This user's OpenID access token.

refreshToken : string?

This user's OpenID refresh token.

idToken : string?

This user's OpenID identification token.

tokenType : string?

The type of the access token.

expiresAt : number?

The time when the access token expires.

organizationApi : OrganizationApi

The OrganizationApi object that is associated with this user.

profileApi : ProfileApi

The ProfileApi object that is associated with this user.

Methods

constructor(api,tokens)

Create a user object that interacts with the Vulos Identity API on behalf of a user.

  • The api argument should be a BaseAuth implementation;

  • The tokens argument should be a token set that implements the UserTokens interface.

const user = new User(auth, preservedTokenSet)

// ... or

const user = await auth.processCallback(verifier, req.query)

See BaseAuth for more information.

save()

Save the token set user to a serializable object that implements the UserTokens interface.

This function can be used if you want to store the user tokens in a database.

The tokens might update on any API call, so make sure you call this if you want to preserve the tokens.

const tokenSet = user.save()

async reference()

Create a UserReference object that is associated with this user.

const ref = await user.reference()

async info()

Get the UserInfo object for this user.

const userInfo = await user.info()

async getOrganizationMemberships()

Get all the OrganizationMembership objects for this user's organizations.

for (const membership of await user.getOrganizationMemberships()) {
    // do something with the membership object
}

async createOrganization(details)

Create a new organization with a details object that implements the OrganizationCreateDetails interface.

const membership = await user.createOrganization({
    name: 'My Organization',
    website: 'https://example.com',
    address: 'Example St. 1234',
    uniqueId: '1234-567-89',
    city: 'Example City',
    countryCode: 'AQ',
    zipCode: '1234',
    // state: 'Optional State'
})

async organizationSearch(search, amount, offset)

This function is an alias to User.profileApi.organizationSearch().

The only difference is that this function doesn't throw, but returns false on failure.

async getAccessToken()

Get the access token of the user.

This function will automatically attempt to refresh the access token if it is expired.

const accessToken = await getAccessToken()

Last updated