Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Update User Profile
Method Objective
The method updates the user's profile or creates a new profile bound to the user's current device if it was not created earlier.
Note |
---|
If you don't have user data, never send bogus data. It'll cause problems in profile handling in the future. For example, don't send a non-existent email, like |
Syntax and parameters
Code Block | ||||
---|---|---|---|---|
| ||||
sdk.setProfileData(params) { callback } |
Name | Type | Requirement | Description |
---|---|---|---|
params | HashMap | required | Object with request parameters. |
callback | function | optionally | Callback Function |
Request Parameters
Name | Type | Description | ||
---|---|---|---|---|
userEmail | string | User Email. | ||
firstName | string | User First Name. | ||
gender | string | User Gender (m – male, f – female). | ||
userLoyaltyId | string | The Loyalty Program user ID (loyalty card). | ||
lastName | string | User Surname. | ||
userPhone | string | User Phone. | ||
userId | string | Store side user ID | ||
birthday | string | User birthday in the format YYYYY-MM-DD. | ||
age | string | User age (in years). | ||
location | string | The user's current location from the list of locations in the product feed. | ||
customProperties | Dictionary [string: Any] | Dictionary of custom properties. The custom property must be created before it can be used. Located there: Account > Settings > Profile Property
|
Example of use
Code Block | ||||
---|---|---|---|---|
| ||||
# custom properties let stringArray = ["item1", "item2", "item3"] let intArray = [1, 2, 3, 4, 5] let floatArray: [Float] = [1.1, 2.2, 3.3] let boolArray = [true, false, true] let dateArray = [Date(),Date(),Date()] let object: [String: Any] = [ "stringKey": "stringValue", "intKey": 123, "floatKey": 45.67, "boolKey": true, "dateKey": Date(), "arrayKey": [1, 2, 3], "nestedObjectKey": [ "nestedStringKey": "nestedValue", "nestedIntKey": 456 ] ] let customProperties: [String: Any] = [ "string_prop": "string_value", "integer_prop": 123, "float_prop": 7.62, "date_prop": "2021-12-31 23:55:00", "stringArray": stringArray, "intArray": intArray, "floatArray": floatArray, "boolArray": boolArray, "dateArray": dateArray, "customObject": object ] sdk.setProfileData( userEmail: "john.doe@examplemail.com", userPhone: "4400114527199", userLoyaltyId: "000001234567", birthday: "1990-03-11", age: "31", firstName: "John", lastName: "Doe", userId: "extID100500", location: "NY", gender: "m", customProperties: customProperties ) { (profileDataResp) in print("Profile data callback") } |
Anchor | ||||
---|---|---|---|---|
|
Method Objective
The method allows getting the Device ID of the current profile.
Syntax
Code Block | ||||
---|---|---|---|---|
| ||||
sdk.getDeviceID() |
Example of use
Code Block | ||||
---|---|---|---|---|
| ||||
var deviceId = sdk.getDeviceID() |
Column | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Page Navigation
Related Pages
|