Appearance
User Logout 
Properly handle user logout to maintain data integrity and privacy.
Basic Logout 
objective-c
@import Upshot;
- (void)handleUserLogout {
    // Clear the user identity by setting appuID to empty
    BKUserInfo *userInfo = [[BKUserInfo alloc] init];
    BKExternalId *externalId = [[BKExternalId alloc] init];
    externalId.appuID = @"";
    userInfo.externalId = externalId;
    [userInfo buildUserInfoWithCompletionBlock:^(BOOL success, NSError * _Nullable error) {
    }];
}swift
import Upshot
func handleUserLogout() {
    // Logout by clearing appuID
    let userInfo = BKUserInfo()
    let externalId = BKExternalId()
    externalId.appuID = ""
    userInfo.externalId = externalId
    userInfo.build { (status, error) in
    }
}Complete Profile Cleanup 
For more thorough logout, you might want to clear specific user data:
objective-c
- (void)handleCompleteLogout {
    BKUserInfo *userInfo = [[BKUserInfo alloc] init];
    userInfo.email = @"";
    userInfo.userName = @"";
    userInfo.phone = @"";
    BKExternalId *externalId = [[BKExternalId alloc] init];
    externalId.appuID = @"";
    userInfo.externalId = externalId;
    [userInfo buildUserInfoWithCompletionBlock:^(BOOL success, NSError * _Nullable error) {
    }];
}swift
func handleCompleteLogout() {
    let userInfo = BKUserInfo()
    userInfo.email = ""
    userInfo.userName = ""
    let externalId = BKExternalId()
    externalId.appuID = ""
    userInfo.externalId = externalId
    userInfo.build { (status, error) in
    }
}
