Table of Contents

Class User

Namespace
SEBT.Portal.Core.Models.Auth
Assembly
SEBT.Portal.Core.dll

Represents a user in the system with ID proofing status.

public class User
Inheritance
object
User

Properties

CoLoadedLastUpdated

The date and time when the co-loaded status was last updated from the source system.

public DateTime? CoLoadedLastUpdated { get; set; }

Property Value

DateTime?

CreatedAt

The date and time when the user was first created.

public DateTime CreatedAt { get; init; }

Property Value

DateTime

DateOfBirth

The user's date of birth (calendar date), when collected for household matching or verification.

public DateOnly? DateOfBirth { get; set; }

Property Value

DateOnly?

Email

The user's email address, used as a unique identifier.

public string? Email { get; set; }

Property Value

string

ExternalProviderId

The subject identifier from the external identity provider (e.g., PingOne sub claim). Set for OIDC users; null for OTP-authenticated users.

public string? ExternalProviderId { get; set; }

Property Value

string

IalLevel

The Identity Assurance Level (IAL) this user has achieved through ID proofing.

public UserIalLevel IalLevel { get; set; }

Property Value

UserIalLevel

Id

The unique identifier for the user (database primary key).

public Guid Id { get; init; }

Property Value

Guid

IdProofingAttemptCount

Number of times this user has submitted ID proofing to Socure. Used to enforce the retry cap (max 3 attempts).

public int IdProofingAttemptCount { get; set; }

Property Value

int

IdProofingCompletedAt

The date and time when ID proofing was completed.

public DateTime? IdProofingCompletedAt { get; set; }

Property Value

DateTime?

IdProofingSessionId

The session ID from the ID proofing provider (e.g., Socure).

public string? IdProofingSessionId { get; set; }

Property Value

string

IdProofingStatus

Workflow state of the ID proofing process (NotStarted, InProgress, Completed, Failed, Expired).

public IdProofingStatus IdProofingStatus { get; set; }

Property Value

IdProofingStatus

IsCoLoaded

Indicates whether the user's record was co-loaded from an external system. This value is populated from external systems via batch processes or database queries.

public bool IsCoLoaded { get; set; }

Property Value

bool

Phone

Phone number when used as household identifier for a state.

public string? Phone { get; set; }

Property Value

string

SnapId

SNAP case/client ID when used as household identifier for a state.

public string? SnapId { get; set; }

Property Value

string

Ssn

SSN or last-4 when used as household identifier for a state (per state policy).

public string? Ssn { get; set; }

Property Value

string

TanfId

TANF case/client ID when used as household identifier for a state.

public string? TanfId { get; set; }

Property Value

string

UpdatedAt

The date and time when the user record was last updated.

public DateTime UpdatedAt { get; set; }

Property Value

DateTime