> ## Documentation Index
> Fetch the complete documentation index at: https://moengage.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Setting Unique Id for SDK versions below 11.2.0

> Set a unique user ID for login and logout in React Native SDK versions below 11.2.0.

# Implementing Login/Logout

* It's important to set the User Attribute Unique ID when a user logs into your app.
* This is to merge the new user with existing user, if any exists, and will help prevent creating of unnecessary/stale users.
* Setting the Unique ID is a critical piece to tie a user across devices and installs/uninstalls as well across all platforms (i.e. iOS, Android, Windows, The Web). Set the **USER\_ATTRIBUTE\_UNIQUE\_ID** attribute as soon as the user is **logged in**. Unique ID can be something like an email ID, a username (unique), or a database ID or any Backend generated ID.
* Do not set this for the user who not logged in.

## Login User

<CodeGroup>
  ```javascript JavaScript theme={null}
  import ReactMoE from 'react-native-moengage'
  ReactMoE.setUserUniqueID("abc@xyz.com");
  ```
</CodeGroup>

## Logout User

The application needs to notify the MoEngage SDK whenever the user is logged out of the application. To notify the SDK, call the API whenever the user is logged out of the application.

<CodeGroup>
  ```javascript JavaScript theme={null}
  import ReactMoE from 'react-native-moengage'
  ReactMoE.logout();
  ```
</CodeGroup>

## Updating User Attribute Unique Id

Use the method ***setAlias()*** to update the user attribute unique id instead of \*setUniqueId()\*with a different value. Using the method ***setUniqueId()*** with a new value creates unintended users in MoEngage.

<CodeGroup>
  ```JavaScript JavaScript theme={null}
  import ReactMoE from 'react-native-moengage'
  ReactMoE.setAlias("asd@xyz.com");
  ```
</CodeGroup>
