How do I convert anonymous user in Realm to normal user , If I have user id?

I am trying to integrate Realm Authentication with my node js REST API. I have created an API CreateAnonymousUser like this

const credentials = Realm.Credentials.anonymous();
const user = await app.logIn(credentials);
userId = user.id;
var userObj = {
id: user.id,
identities: user.identities,
state: user.state,
refreshToken: user.refreshToken,
accessToken: user.accessToken,
}
return userObj

I need one more API to convert Anonymous User To Normal User where I will pass only the userId, email, password.

This is my current code but it is giving me an invalid token error. Please help me to find a solution

if (request.body.hasOwnProperty(‘email’) && request.body.hasOwnProperty(‘password’) && request.body.hasOwnProperty(‘userId’)) { //Convert anonymous user to normal user

    try {
        var anonymousUser = await app.currentUser;// instead of this I have tried below line too
       // const anonymousUser =await app.allUsers[request.body.userId];
             
         var anonymousObj = {
         id: anonymousUser.id,
         email: anonymousUser.profile.email,
         identities: anonymousUser.identities,
         state: anonymousUser.state,
         refreshToken: anonymousUser.refreshToken
         }
        console.log("Current Anonymoususer" + anonymousObj);
        await app.emailPasswordAuth.registerUser(
            {
                email: request.body.email,
                password:request.body.password
            }
        );
        const emailPasswordUserCredentials = Realm.Credentials.emailPassword(
            request.body.email,
            request.body.password
        );
       const officialUser = await anonymousUser.linkCredentials(
            emailPasswordUserCredentials
        );
         var officialUserObj = {
           id: officialUser.id,
           email: officialUser.profile.email,
          identities: officialUser.identities,
         state: officialUser.state,
        refreshToken: officialUser.refreshToken
        }
        console.log("Successfully logged in!", officialUser.id);
         finalObj = {
        anonymousUser: anonymousObj,
        officialUser: officialUserObj
        }
        return finalObj;

    } catch (err) {
        console.log(err.message)
        res.send(err.message);
    }

}

I got “invalid session: access token expired”