smartProfile
Сервис для получения данных пользователей с их согласия.
Перед использованием сервиса, ознакомьтесь с условиями подключения сервиса SmartProfile.
caution
Сервис недоступен в проектах SmartBot. Проверить работу сервиса в тестовом виджете нельзя.
Методы
getProfileData
Возвращает данные из профиля пользователя.
Пример вызова:
script: $smartProfile.getProfileData();
chooseProfileData
Позволяет изменить адрес доставки, телефонный номер и адрес электронной почты пользователя.
Пример вызова:
script:
var payload = {
"changeAddress": true,
"changePhone": true,
"changeEmail": true,
}
$smartProfile.chooseProfileData(payload)
Параметры метода:
changeAddress
— обязательное поле. Логический тип. Может принимать значенияtrue
илиfalse
. Указывает на необходимость изменения адреса доставки.changePhone
— обязательное поле. Логический тип. Может принимать значенияtrue
илиfalse
. Указывает на необходимость изменения телефонного номера заказчика.changeEmail
— обязательное поле. Логический тип. Может принимать значенияtrue
илиfalse
. Указывает на необходимость изменения адреса электронной почты заказчика.
detailedProfileData
предлагает пользователю уточнить данные адреса. Например указать подъезд или этаж.
Пример вызова:
script: $smartProfile.detailedProfileData();
Пример ответа
note
Пример запроса данных пользователя можно посмотреть в демонстрационном приложении.
При успешном выполнении методов возвращается сообщение TAKE_PROFILE_DATA
:
{
"messageId": "1605196199186625000",
"sessionId": "0062530b-5521-42cc-90b0-a9d65dea4e98",
"messageName": "TAKE_PROFILE_DATA",
"uuid": {
"userId": "ec8a9097-1508-4bec-8d97-67f2329c03e0",
"userChannel": "B2C"
},
"payload": {
"device": {},
"profile_data": {
"customer_name": "Иван",
"surname": "Иванов",
"patronymic": "Иванович",
"birthDate": "01.01.2000",
"phone_number": "+79161234567",
"email": "ivanov@site.ru",
"address": {
"location": {
"latitude": "56.77",
"longitude": "23.88"
},
"address_string": "Кутузовский пр-т 32",
"country": "Россия",
"region": "Регион",
"city": "Москва",
"settlement": "Поселок",
"district": "Район",
"street": "Кутузовский проспект",
"house": "32",
"building": "1",
"floor": "12",
"entrance": "3",
"apartment": "134",
"door_code": "134",
"alias": "Название адреса",
"comment": "Комментарий",
"address_type": "Тип адреса"
}
},
"status_code": {
"code": 1,
"description": "success"
}
}
}
Данные сохраняются в поле data.eventData.profile_data
системной переменной $request
. Например, номер телефона сохранится в поле phone_number
:
$request.data.eventData.profile_data.phone_number;
Поле code
может содержать значения:
Код | Описание |
---|---|
1 | Данные существуют и получено согласие пользователя |
100 | Данные отсутствуют в профиле |
101 | Пользователь отклонил автозаполнение данных из профиля |
102 | У смартапа нет прав на получение данных пользователя |
103 | Пользователь отказался изменять или уточнять данные |
104 | У смартапа недостаточно прав на изменение или уточнение данных |
Заметили ошибку?
Выделите текст и нажмите Ctrl
+ Enter
, чтобы сообщить нам о ней