Base Identity class to allow "trimmed" identity class in the GetConnectionData API Makes sure that on-the-wire representations of the derived classes are compatible with each other (e.g. Server responds with PublicIdentity object while client deserializes it as Identity object) Derived classes should not have additional [DataMember] properties

interface IdentityBase {
    customDisplayName?: string;
    descriptor?: IdentityDescriptor;
    id?: string;
    isActive?: boolean;
    isContainer?: boolean;
    masterId?: string;
    memberIds?: string[];
    memberOf?: IdentityDescriptor[];
    members?: IdentityDescriptor[];
    metaTypeId?: number;
    properties?: any;
    providerDisplayName?: string;
    resourceVersion?: number;
    socialDescriptor?: string;
    subjectDescriptor?: string;
    uniqueUserId?: number;
}

Hierarchy (View Summary)

Properties

customDisplayName?: string

The custom display name for the identity (if any). Setting this property to an empty string will clear the existing custom display name. Setting this property to null will not affect the existing persisted value (since null values do not get sent over the wire or to the database)

descriptor?: IdentityDescriptor
id?: string

Identity Identifier. Also called Storage Key, or VSID

isActive?: boolean

True if the identity has a membership in any Azure Devops group in the organization.

isContainer?: boolean

True if the identity is a group.

masterId?: string
memberIds?: string[]

Id of the members of the identity (groups only).

memberOf?: IdentityDescriptor[]
members?: IdentityDescriptor[]
metaTypeId?: number
properties?: any
providerDisplayName?: string

The display name for the identity as specified by the source identity provider.

resourceVersion?: number
socialDescriptor?: string
subjectDescriptor?: string

Subject descriptor of a Graph entity.

uniqueUserId?: number