User Identifier and Property
Managing User Identifiers
User identifiers are used to uniquely identify different users.
Refer to the Managing User Identifiers document for an in-depth definition and understanding of why user identifiers are so important during experimentation.
Use SDK-managed identifiers
The React SDK includes features to automatically manage device identifiers. Therefore, the user can be automatically identified without having to manually pass the user identifier separately as a parameter.
Use custom user identifiers you manage
This is a method of directly passing a user identifier as a parameter. The identifier to be delivered can be a directly managed primary key, device identifier, member ID, email, hash value, etc.
Using User Identifiers in an SDK Initialization Example
// 1. Using SDK-managed identifiers - do not pass user identifiers in parameters
<HackleProvider hackleClient={hackleClient}>
<YourApp />
</HackleProvider>
// 2. Using user identifiers managed yourself - pass user identifiers in parameters
const user = {
id: "ae2182e0"
}
<HackleProvider hackleClient={hackleClient} user={user}>
<YourApp />
</HackleProvider>
Additional Identifiers
In addition to the default identifier, additional identifiers can be sent through the example code below.
const user = {
id: "ae2182e0", // Default identifier provided
userId: "143", // User ID (Hackle integrated identifier supported)
deviceId: "ae2182e0", // Device ID (Hackle integrated identifier supported)
identifiers: {
myCustomId: "42" // Custom ID
}
}
Property
Hackle SDK supports adding properties to a User object.
- Properties must be sent as a pair with both property name (key) and a property value (value).
- The maximum number of properties that can be added to a User object is 64.
Property Key (Name)
- The key should be set as a general name, but easily identifiable.
- The character limit is 64 characters.
- It is not case sensitive. For example, AGE and age are recognized as the same key.
Property Value
- The value supports boolean, string, and number types.
- In the case of string type, the character limit is 64 characters.
- The string type is case-sensitive. For example, APPLE and apple are recognized as different property values.
- In the case of number type, up to 15 integers and up to 6 decimal places are supported.
Example
The User object is used as a parameter when initializing the SDK.
Refer to the example code and add the desired properties to each user. In the example below, you can see that three properties (age
, grade
, is_paying_user
) have been added.
const user = {
id: "ae2182e0",
properties: {
age: 30,
grade: "GOLD",
is_paying_user: false
}
}
<HackleProvider hackleClient={hackleClient} user={user}>
<YourApp />
</HackleProvider>
Updated 4 months ago