Table of Contents

Interface IUser

Namespace
BiExcellence.OpenBi.Api.Users
Assembly
BiExcellence.OpenBi.Api.Client.dll

A user account. Its rights come from the usergroups it belongs to, the data it sees from its organisations and the content it may open from its roles. The password is not part of it - see SetUserPasswordAsync(IOpenBiApiClient, string, string, CancellationToken).

public interface IUser

Properties

ActivationId

The one-time id in an account activation or password reset link, set by the self-registration and forgotten-password flows and cleared once it has been used. null otherwise.

string? ActivationId { get; init; }

Property Value

string

Birthdate

The user's date of birth.

DateTimeOffset? Birthdate { get; init; }

Property Value

DateTimeOffset?

City

The city of the user's postal address.

string? City { get; init; }

Property Value

string

Company

The user's company, free text.

string? Company { get; init; }

Property Value

string

Country

The country of the user's postal address.

string? Country { get; init; }

Property Value

string

CustomAttributes

Additional attributes stored with the user, keyed by attribute name, beyond the fixed fields.

Dictionary<string, JsonElement>? CustomAttributes { get; init; }

Property Value

Dictionary<string, JsonElement>

Department

The user's department, free text.

string? Department { get; init; }

Property Value

string

Email

The user's email address.

string? Email { get; init; }

Property Value

string

Fax

The user's fax number.

string? Fax { get; init; }

Property Value

string

Firstname

The user's first (given) name.

string? Firstname { get; init; }

Property Value

string

Function

The user's job title or function, free text.

string? Function { get; init; }

Property Value

string

Group

A free-text group label. Not a usergroup - membership in those is GetUserUsergroupsAsync(IOpenBiApiClient, string, OpenBiListRequest?, CancellationToken).

string? Group { get; init; }

Property Value

string

Id

The username the user logs in with, which is also its id. Required on create.

string? Id { get; init; }

Property Value

string

InitialPassword

Whether the user is still on a password an administrator set (see SetUserPasswordAsync(IOpenBiApiClient, string, string, CancellationToken)) and has to set one of its own at the next login. Cleared when the user changes its password.

bool InitialPassword { get; init; }

Property Value

bool

InvalidLoginAttempts

Failed password logins since the last successful one. Counted by the server and reset by a successful login; where the server limits them, a user that has reached the limit cannot log in.

int? InvalidLoginAttempts { get; init; }

Property Value

int?

IsActive

Whether the user may log in. An inactive user is refused at login, and an API key belonging to it gets no access token. false unless set, so a user created without it cannot log in.

bool IsActive { get; init; }

Property Value

bool

LastInvalidLogin

When a password login last failed for this user. Set by the server.

DateTimeOffset? LastInvalidLogin { get; init; }

Property Value

DateTimeOffset?

LastLogin

When the user last logged in successfully. Set by the server.

DateTimeOffset? LastLogin { get; init; }

Property Value

DateTimeOffset?

LastPasswordChange

When the password was last set. Set by the server; where passwords expire, it is what the expiry is counted from.

DateTimeOffset? LastPasswordChange { get; init; }

Property Value

DateTimeOffset?

Lastname

The user's last (family) name.

string? Lastname { get; init; }

Property Value

string

Location

The user's office location, free text.

string? Location { get; init; }

Property Value

string

Mobile

The user's mobile phone number.

string? Mobile { get; init; }

Property Value

string

Phone

The user's phone number.

string? Phone { get; init; }

Property Value

string

PostalCode

The postal code of the user's postal address.

string? PostalCode { get; init; }

Property Value

string

ProfilePicture

The user's profile picture as raw image bytes, base64 encoded in JSON.

byte[]? ProfilePicture { get; init; }

Property Value

byte[]

RegistrationDate

When the user registered or was created.

DateTimeOffset RegistrationDate { get; init; }

Property Value

DateTimeOffset

Room

The user's room, free text.

string? Room { get; init; }

Property Value

string

Salutation

The form of address, free text.

string? Salutation { get; init; }

Property Value

string

Street

The street of the user's postal address.

string? Street { get; init; }

Property Value

string

Superior

The username of the user's superior. Cleared when that user is deleted.

string? Superior { get; init; }

Property Value

string