User attributes are specific traits of a user, like email, username, mobile, gender etc.
This is crucial and helps in targeting users based on these attributes across devices or installs.
Implementing Login / Logout Mechanism for a User
Setting Unique ID in order to Login User
warning |
Warning Setting |
- It is important to set the User Attribute Unique ID when a user logs into your app.
- This is to merge the new user with the 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. The 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 is not logged in.
var moe = new MoECordova.init();
moe.setUniqueId(uniqueID);
Note: The following values are not allowed in the UniqueID field: "unknown", "guest", "null", "0", "1", "true", "false", "user_attribute_unique_id", "(empty)", "na", "n/a", "", "dummy_seller_code", "user_id", "id", "customer_id", "uid", "userid", "none", "-2", "-1", "2"
Reset or Logout User
Consider the scenario when a user logs out of their account. They might log in from a new account, as a new user. Here you need to call logout
from MoEngage.
var moe = new MoECordova.init();
moe.logout();
info |
Note To clear out the existing user's data and his identity, call the logout method. This will clear the data for the current user and create a new one, when you re-login as explained in the above log-in scenario your user will be merged (if already exist in our system) |
Updating User Attribute Unique ID
In a scenario where you have to update the User Attribute Unique ID value for a logged-in user use setAlias:
method as shown below:
var moe = new MoECordova.init();
moe.setAlias("updatedUniqueID");
warning |
Warning Please make sure that you use |
SDK User Attributes Keys
You can also set the default user attributes like mobile number, gender, user name, birthday, etc using the below APIs
var moe = MoECordova.init()
moe.setUserName("abc");
moe.setFirstName("abc");
moe.setLastName("xyz");
moe.setEmail("abc@xyz.com");
moe.setPhoneNumber(1234567890);
moe.setGender("Male"); // OR Female
// Format - ISO-8601 String
moe.setBirthdate("1970-01-01T12:00:00Z");
Date attributes and Birthday in ISO-8601 format - yyyy-MM-dd'T'HH:mm:ss'Z'
var moe = new MoECordova.init();
moe.setUserAttributeLocation("attribute", 25.23, 73.23);
You can use following method set the timestamp user attribute :
var moe = new MoECordova.init();
moe.setUserAttributeISODateString("LastPurchaseDate", "1970-01-01T12:00:00Z");