DBTEAMMemberProfile

Objective-C

@interface DBTEAMMemberProfile : NSObject <DBSerializable, NSCopying>

Swift

class DBTEAMMemberProfile : NSObject, DBSerializable, NSCopying

The MemberProfile struct.

Basic member profile.

This class implements the DBSerializable protocol (serialize and deserialize instance methods), which is required for all Obj-C SDK API route objects.

Instance fields

  • ID of user as a member of a team.

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull teamMemberId;

    Swift

    var teamMemberId: String { get }
  • External ID that a team can attach to the user. An application using the API may find it easier to use their own IDs instead of Dropbox IDs like account_id or team_member_id.

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly, nullable) NSString *externalId;

    Swift

    var externalId: String? { get }
  • A user’s account identifier.

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly, nullable) NSString *accountId;

    Swift

    var accountId: String? { get }
  • Email address of user.

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull email;

    Swift

    var email: String { get }
  • Is true if the user’s email is verified to be owned by the user.

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSNumber *_Nonnull emailVerified;

    Swift

    var emailVerified: NSNumber { get }
  • Secondary emails of a user.

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSArray<DBSECONDARYEMAILSSecondaryEmail *> *secondaryEmails;

    Swift

    var secondaryEmails: [DBSECONDARYEMAILSSecondaryEmail]? { get }
  • The user’s status as a member of a specific team.

    Declaration

    Objective-C

    @property (nonatomic, readonly) DBTEAMTeamMemberStatus *_Nonnull status;

    Swift

    var status: DBTEAMTeamMemberStatus { get }
  • Representations for a person’s name.

    Declaration

    Objective-C

    @property (nonatomic, readonly) DBUSERSName *_Nonnull name;

    Swift

    var name: DBUSERSName { get }
  • The user’s membership type: full (normal team member) vs limited (does not use a license; no access to the team’s shared quota).

    Declaration

    Objective-C

    @property (nonatomic, readonly) DBTEAMTeamMembershipType *_Nonnull membershipType;

    Swift

    var membershipType: DBTEAMTeamMembershipType { get }
  • The date and time the user was invited to the team (contains value only when the member’s status matches invited in DBTEAMTeamMemberStatus).

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSDate *invitedOn;

    Swift

    var invitedOn: Date? { get }
  • The date and time the user joined as a member of a specific team.

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSDate *joinedOn;

    Swift

    var joinedOn: Date? { get }
  • The date and time the user was suspended from the team (contains value only when the member’s status matches suspended in DBTEAMTeamMemberStatus).

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSDate *suspendedOn;

    Swift

    var suspendedOn: Date? { get }
  • Persistent ID that a team can attach to the user. The persistent ID is unique ID to be used for SAML authentication.

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly, nullable) NSString *persistentId;

    Swift

    var persistentId: String? { get }
  • Whether the user is a directory restricted user.

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSNumber *isDirectoryRestricted;

    Swift

    var isDirectoryRestricted: NSNumber? { get }
  • URL for the photo representing the user, if one is set.

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly, nullable) NSString *profilePhotoUrl;

    Swift

    var profilePhotoUrl: String? { get }

Constructors

  • Full constructor for the struct (exposes all instance variables).

    Declaration

    Objective-C

    - (nonnull instancetype)
         initWithTeamMemberId:(nonnull NSString *)teamMemberId
                        email:(nonnull NSString *)email
                emailVerified:(nonnull NSNumber *)emailVerified
                       status:(nonnull DBTEAMTeamMemberStatus *)status
                         name:(nonnull DBUSERSName *)name
               membershipType:(nonnull DBTEAMTeamMembershipType *)membershipType
                   externalId:(nullable NSString *)externalId
                    accountId:(nullable NSString *)accountId
              secondaryEmails:
                  (nullable NSArray<DBSECONDARYEMAILSSecondaryEmail *> *)
                      secondaryEmails
                    invitedOn:(nullable NSDate *)invitedOn
                     joinedOn:(nullable NSDate *)joinedOn
                  suspendedOn:(nullable NSDate *)suspendedOn
                 persistentId:(nullable NSString *)persistentId
        isDirectoryRestricted:(nullable NSNumber *)isDirectoryRestricted
              profilePhotoUrl:(nullable NSString *)profilePhotoUrl;

    Swift

    init(teamMemberId: String, email: String, emailVerified: NSNumber, status: DBTEAMTeamMemberStatus, name: DBUSERSName, membershipType: DBTEAMTeamMembershipType, externalId: String?, accountId: String?, secondaryEmails: [DBSECONDARYEMAILSSecondaryEmail]?, invitedOn: Date?, joinedOn: Date?, suspendedOn: Date?, persistentId: String?, isDirectoryRestricted: NSNumber?, profilePhotoUrl: String?)

    Parameters

    teamMemberId

    ID of user as a member of a team.

    email

    Email address of user.

    emailVerified

    Is true if the user’s email is verified to be owned by the user.

    status

    The user’s status as a member of a specific team.

    name

    Representations for a person’s name.

    membershipType

    The user’s membership type: full (normal team member) vs limited (does not use a license; no access to the team’s shared quota).

    externalId

    External ID that a team can attach to the user. An application using the API may find it easier to use their own IDs instead of Dropbox IDs like account_id or team_member_id.

    accountId

    A user’s account identifier.

    secondaryEmails

    Secondary emails of a user.

    invitedOn

    The date and time the user was invited to the team (contains value only when the member’s status matches invited in DBTEAMTeamMemberStatus).

    joinedOn

    The date and time the user joined as a member of a specific team.

    suspendedOn

    The date and time the user was suspended from the team (contains value only when the member’s status matches suspended in DBTEAMTeamMemberStatus).

    persistentId

    Persistent ID that a team can attach to the user. The persistent ID is unique ID to be used for SAML authentication.

    isDirectoryRestricted

    Whether the user is a directory restricted user.

    profilePhotoUrl

    URL for the photo representing the user, if one is set.

    Return Value

    An initialized instance.

  • Convenience constructor (exposes only non-nullable instance variables with no default value).

    Declaration

    Objective-C

    - (nonnull instancetype)
        initWithTeamMemberId:(nonnull NSString *)teamMemberId
                       email:(nonnull NSString *)email
               emailVerified:(nonnull NSNumber *)emailVerified
                      status:(nonnull DBTEAMTeamMemberStatus *)status
                        name:(nonnull DBUSERSName *)name
              membershipType:(nonnull DBTEAMTeamMembershipType *)membershipType;

    Swift

    init(teamMemberId: String, email: String, emailVerified: NSNumber, status: DBTEAMTeamMemberStatus, name: DBUSERSName, membershipType: DBTEAMTeamMembershipType)

    Parameters

    teamMemberId

    ID of user as a member of a team.

    email

    Email address of user.

    emailVerified

    Is true if the user’s email is verified to be owned by the user.

    status

    The user’s status as a member of a specific team.

    name

    Representations for a person’s name.

    membershipType

    The user’s membership type: full (normal team member) vs limited (does not use a license; no access to the team’s shared quota).

    Return Value

    An initialized instance.