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 | ||||
---|---|---|---|---|
| ||||
PersonaClick.profile(params, callback); |
Name | Type | Requirement | Description |
---|---|---|---|
params | HashMap | required | Object with request parameters. |
callback | function | optionally | The callback function to which the API response will be passed |
Main request parameters
Name | Type | Description |
---|---|---|
string | User Email. | |
first_name | string | User First Name. |
gender | string | User Gender (m – male, f – female). |
id | string | Store side user ID. |
last_name | string | User Surname. |
phone | string | User Phone. |
Additional request parameters
Name | Type | Description |
---|---|---|
age | string | User age (in years). |
auto | JSON string | List of vehicles. See description below. |
birthday | string | User birthday in the format YYYYY-MM-DD. |
bought_something | string | The user has or hasn't ever bought something in the store. "1" - if the user has made purchases, "0" - if not. |
fb_id | string | Facebook User ID. |
kids | JSON string | User's children. See description below. |
location | string | The user's current location from the list of locations in the product feed. |
loyalty_bonuses | string | The current number of store bonuses at the user. |
loyalty_bonuses_to_next_level | string | The number of store bonuses necessary for the user to reach the next loyalty level. |
loyalty_card_location | string | The location (from the list of locations in the product feed) where the user last used the loyalty card. |
loyalty_id | string | The Loyalty Program user ID (loyalty card). |
loyalty_status | string | The user's current status in the loyalty program. |
telegram_id | string | Telegram User ID. |
vk_id | string | VKontakte User ID. |
The "auto" object properties
Name | Type | Description |
---|---|---|
brand | string | Vehicle Brand. |
model | string | Vehicle Model. |
vds | string | Vehicle's VDS/VIN. |
The "kids" object properties
Name | Type | Description |
---|---|---|
gender | string | Child's age (m – male, f – female). |
birthday | string | Child's birthday in the format YYYY-MM-DD. |
Custom Properties
Name | Type | Description | ||
---|---|---|---|---|
A custom property can have any name except the reserved ones | string | The custom property must be created before it can be used. Located there: Account > Settings > Profile Property
| ||
integer | ||||
float | ||||
array of string | ||||
json | ||||
date |
date (YYYY-MM-DD hh:mm:ss) |
Examples of use
Code Block | ||||
---|---|---|---|---|
| ||||
HashMap<String, String> params = new HashMap<>();
params.put("id", "100500");
params.put("email", "john.doe@examplemail.com");
params.put("phone", "4400114527199");
params.put("first_name", "John");
params.put("last_name", "Doe");
params.put("birthday", "1990-03-11");
params.put("age", "31");
params.put("gender", "m");
params.put("location", "NY");
params.put("bought_something", "1");
params.put("loyalty_id", "000001234567");
params.put("loyalty_card_location", "NY");
params.put("loyalty_status", "5% discount");
params.put("loyalty_bonuses", "1123");
params.put("loyalty_bonuses_to_next_level", "1877");
params.put("fb_id" ,"000000000354677");
params.put("vk_id", "vk031845");
params.put("telegram_id", "0125762968357835");
params.put("kids", "[{\"gender\":\"m\",\"birthday\":\"2001-04-12\"},{\"gender\": \"f\", \"birthday\": \"2015-07-28\"}]");
params.put("auto", "[{\"brand\":\"Nissan\",\"model\":\"Qashqai\",\"vds\":\"TM7N243E4G0BJG978\"}]");
params.put("custom_string_property", "string_value");
params.put("custom_integer_property" ,"100500");
params.put("custom_float_property", "7.62");
params.put("custom_array_of_string_property", "[\"val1\",\"val2\",\"val3\"]");
params.put("custom_json_obj_property", "{\"key1\":\"val1\",\"key2\":\"val2\"},{\"key3\":\"val3\"}");
params.put("custom_date_property", "2021-12-31 23:55:00");
PersonaClick.profile(params); |
Code Block | ||||
---|---|---|---|---|
| ||||
HashMap<String, String> params = new HashMap<>(); params.put("id", "100500"); params.put("email", "john.doe@examplemail.com"); PersonaClick.profile(params, new Api.OnApiCallbackListener() { @Override public void onSuccess(JSONObject response) { // API response processing functionality } }); |
Anchor | ||||
---|---|---|---|---|
|
Method Objective
The method allows getting the Device ID of the current profile.
Syntax
Code Block | ||||
---|---|---|---|---|
| ||||
PersonaClick.getDid(); |
Example of use
Code Block | ||||
---|---|---|---|---|
| ||||
String deviceId = PersonaClick.getDid(); |
Column | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Page Navigation
Related Pages
|