Передача данных с опроса в доп. поля контакта в Mindbox

Допустим, что вы создали опрос и хотите передавать уровень удовлетворенности заказом сразу в карточку клиента Mindbox для дальнейшего сегментирования.

Для этого нужно:
1. Настроить показ данной формы по сегменту Mindbox по инструкции
2. Создать в Mindbox дополнительные поля для приема данных опроса
3. Создать в Mindbox 2 операции: для поиска клиента по UUID и для записи данных опроса
4. Создать в Solutions Popmechanic запрос со всеми этими данными
5. Создать интеграцию типа HTTP-запрос для нужной формы





1) Настроить показ данной формы по сегменту Mindbox по инструкции

Поскольку в Mindbox не хранятся анонимные контакты, то чтобы передавать данные в карточку клиента у него уже должен быть заведен один из каналов ранее (email, номер телефона, пуш или id).


Как показывать всем посетителям сайта форму:
1. настроить показ по созданной заранее сегментации типа "Все клиенты"
Так форма покажется только тем, кому мы можем передать данные с ответов потом в карточку клиента.

2. вообще не использовать показ по сегменту.
В таком случае данные теста будут хранится в разделе "Лиды", но передаваться в Mindbox будут только те, у которых есть какой-либо контакт и мы нашли соответствие по DeviceUUID


2) Создать в Mindbox дополнительные поля для приема данных опроса


В аккаунте Mindbox подготовьте дополнительные поля для того, чтобы в них отправлять данные (Интеграции – Дополнительные поля).
Если вы понимаете, что данные с опроса могут пригодится в дальнейшем для сегментов или триггеров, то создавайте на каждый вопрос опроса отдельное дополнительное поле для сущности Клиент.

Опросов может быть несколько, в каждом из них по много вопросов.

Пока у нас нет общей сущности для хранения данных опросов рекомендую примерно такую логику названий доп. полей, чтобы не запутаться:
PM-опрос: УД 1 заказ.Качество. Вопрос 3
PM-опрос - сразу понятно откуда это поле взялось
УД 1 заказ - название опроса, сюда же можно добавить id формы
Вопрос 3 - номер вопроса или его название


Тип полей - определяйте сами по логике опроса.
Не выбирайте строковый, если потом по этим данным нужна сегментация;

Сохраните системные имена этих полей – они вам будут нужны на следующих шагах.




3. Создать в Mindbox 2 операции: для поиска клиента по UUID и для записи данных опроса

1. Поиск клиента по UUID
Нужно для того, чтобы Popmechanic понимал, какому клиенту данные отправлять.
Поскольку сразу по UUID изменять доп. поля контакта нельзя (это разные сущности), то для начала нужно определить, кому относится UUID, который заполнил опрос.

Имя операции: Поиск клиента по deviceUUID
Системное имя: ClientSearchBydeviceUUID
Операция требует передачи deviceUUID – да
Операция требует передачи секретного сервисного ключа – нет
Операция возвращает валидационные ошибки - нет
Шаги: Клиент – Авторизованный – Получить существующего – ищем по устройству
Добавить в ответ данные: Клиент – Идентификаторы клиента

2. Передача данных с опроса
Нужна для того, чтобы непосредственно передать данные в доп. поля.

Имя операции: Результаты опроса
Системное имя: SurveyResults
Операция требует передачи deviceUUID – нет
Операция требует передачи секретного сервисного ключа – да
Операция возвращает валидационные ошибки - нет

Шаги: Клиент – Авторизованный – Редактировать – ищем по ID в Mindbox
Добавить в ответ данные – нет

Для неавторизированных мы не можем поменять данные в карточке клиента :(


4) Создать в Solutions Popmechanic запрос со всеми этими данными

1. Заходим по ссылке https://solutions.popmechanic.ru/admin/mindbox/mindboxupdaterequest/
Если у вас нет доступа – попросите менеджера Popmechanic помочь с этим пунктом


2. Нажимаем на создание нового запроса:
3. Заполняем его таким образом:
Endpoint id: точка контакта в Mindbox
Fetch customer operation: ClientSearchBydeviceUUID
Write data operation: SurveyResults
Secret key: ключ данной точки контакта, берем в описании точки контакта в Mindbox
Additional fields: дополнительные поля, созданные на шаге 2. Через запятую

ВАЖНО!!! В json-формате при передаче в Mindbox нужно указывать доп. поля с МАЛЕНЬКОЙ буквы, даже если они названы в Mindbox с большой, иначе операция будет возвращать ошибку. Например, если вы завели доп поле PMOpros1, то во всех настройках дальше используйте pMOpros1, а лучше заводите сразу доп. поля в Mindbox с маленькой буквы (не спрашивайте почему)))


4) Создать интеграцию типа HTTP-запрос

1. Выберите форму, контакты с которой вы хотите передавать и перейдите в раздел Интеграции этой формы – HTTP-запрос:
2. Заполняем данные:
URL:
https://solutions.popmechanic.ru/mindbox/update-data/ID/?deviceUUID=%customs.mindboxDeviceUUID%
где ID = ID запроса в Solutions, который вы создали пунктом ранее (смотрите в URL)

Например, вот тут ID=1:
https://solutions.popmechanic.ru/admin/mindbox/mindboxupdaterequest/1/change/

HTTP-метод:
POST
Тип передаваемых данных: HTTP-форма

Дополнительные поля:
Тут задаем слева ваше ID поля в Mindbox, созданного ранее, а справа - нужную переменную для данного вопроса в верстке шаблона:
Где посмотреть обозначение переменной в верстке шаблона:
Создайте форму и по тестовой ссылке отправьте любые данные как ответ опроса.
Зайдите на вкладку "Лиды".
Найдите свои данные и посмотрите как обозначается каждое поле в шаблоне.
В случае на скриншоте в правую колонку дополнительных полей нам нужно будет ввести %customs.test% и %customs.comment%

ВСЕГДА ВНОСИМ ДАННЫЕ ПО ТАКОЙ СХЕМЕ:
%customs.ЗНАЧЕНИЕ ПОЛЯ%
где вместо ЗНАЧЕНИЕ ПОЛЯ то, что отображено в разделе лиды при заполнении формы.

Этот вариант подходит, когда у нас тип поля вопроса - тестовое поле, число или одно значение из списка.
Если нужно передать тип поля "список флажков"

Если у вас в форме подобный тип вопроса с несколькими ответами, как на скриншоте справа, то данные нужно вносить немного по-другому

Данные в разделе Лиды будут выглядеть примерно так как на скриншоте справа

В Popmechanic пока нет типа полей Перечисление, поэтому создается под каждый вариант свое поле со значением 1, если поле заполненно и 0, если не заполненно.



Чтобы внести все такие данные в одно доп. поле в Mindbox, а не создавать десяток под один вопрос, используйте такую конструкцию:
{"Gucci": "%customs.testm_brand.Gucci%", "Prada": "%customs.testm_brand.Prada%"}

В которой Gucci - значение, которое подставляется, если %customs.testm_brand.Gucci% = 1, то есть пользователь отметил галочкой данный пункт.


Если в разделе Лиды вообще нет данных с опросов или не хватает полей

Скорее всего в самой верстке формы они не были размечены.
Обратитесь к менеджеру Popmechanic или проверьте верстку сами.
Вам была полезна эта статья?