Импорт профилей клиентов и обновление данных
Начало работы
В платформе Altcraft перейти в окно импорта данных можно несколькими способами:
1. В разделе Данные выберите Базы профилей. Нажмите на "Импорт профилей клиентов" напротив нужной вам базы профилей и выберите подходящий способ загрузки данных:
2. Выберите нужную вам Базу профилей и нажмите на Просмотр:
Нажмите на значок импорта в верхней части экрана и выберите подходящий вам способ импорта:
3. Из главного меню перейдите в раздел Данные → Импорт. В открывшемся окне выберите базу для импорта.
Способы импорта
Импорт и обновление данных клиентов в базах профилей Altcraft можно организовать различными способами в зависимости от объема клиентской базы, источников новых подписчиков (например, напрямую или через CRM), а также технических возможностей вашей компании. Доступно 4 способа загрузки данных:
-
Вручную — создание и редактирование профилей по одному.
-
Из файла — загрузка данных клиентов из файла-таблицы (например, CSV, Excel или TXT).
-
Через API — настраиваемый импорт одного или нескольких профилей с помощью API.
- Расписание — автоматический импорт данных клиентов из внешней SQL базы данных по заданному расписанию.
Помимо перечисленных способов получения клиентских данных, в Altcraft Platform есть готовые интеграции с внешними сервисами:
- Tilda — интеграция с формами сбора данных конструктора сайтов Tilda.
- LPGenerator — интеграция с формами сбора данных конструктора лэндингов LPGenerator.
- Yandex AppMetrica — интеграция с метрикой приложений от Яндекса.
Создание профиля клиента вручную
Выберите способ импорта — "Создать профиль вручную":
Откроется форма создания и редактирования профиля. На этапе создания профиля вы можете добавить личные, контактные, регистрационные и отслеженные данные. Эти данные записываются в стандартные поля базы.
Значение дополнительных (кастомных) полей указываются на вкладке "Доп. поля". Обязательные поля отмечены красной звёздочкой. Создать дополнительные поля, а также установить обязательные вы можете на странице редактирования базы данных.
Ниже на вкладке Подписки вы можете сразу при создании подписать клиента на тот или иной ресурс.
Поля Email и Телефоны на вкладке Профиль не используются для коммуникации с клиентом. В них вы можете записать базовые контакты, чтобы использовать их потом в подписках на ресурсы. Или можете оставить поля пустыми, а контактные данные записать напрямую в подписки.
Поле Email используется по умолчанию для идентификации профиля наряду с profile_id. Если при импорте профиля не передать адрес электронной почты в это поле, будет создана системная запись в виде profile_id@localhost
.
При сохранении нового профиля можно отключить отправку для него триггерных оповещений, а также включить автоматическое определение геолокации клиента по данным в полях Reg IP
(IP адрес регистрации) и IP
(последний известный IP адрес):
Импорт из файла
Для загрузки большого количества профилей, а также для обновления существующих данных используется импорт из файла. Это могут быть .csv таблицы и .txt файлы в CSV формате, .xls и .xlsx таблицы данных. Файл может быть помещён в архив .zip или .tar.gz.
Загрузка файла
Чтобы добавить новый файл, перетащите его мышью в область загрузки или кликните по ней и выберите файл. Чтобы удалить файл, нажмите на крестик напротив его названия.
Поставьте галочку в окне "Первая строка содержит название колонок", если первая строка в вашем файле с профилями служит для обозначения колонок.
Выберите режим чтения файла. Доступно два режима: автоматический и ручной.
В автоматическом режиме используется кодировка UTF-8. Если ваш файл имеет другую кодировку, то вы можете перейти в ручной режим чтения и выбрать подходящий вам вариант:
- Текстовый квалификатор — это символ, который используется для обозначения начала и конца текстовых данных внутри ячейки таблицы. Квалификаторы необходимы, когда данные внутри ячейки содержат символы, которые могут быть восприняты как разделители или другие специальные символы.
- Разделитель — это символ, который используется для разделения данных на отдельные поля (ячейки) в строке таблицы. Разделители применяются для указания границ между столбцами в таблице.
Если вы изменили настройки в ручном режиме, нажмите кнопку "Предпросмотр", чтобы проверить, что платформа корректно прочитает файл.
Идентификация профилей
Выберите способ импорта — он будет зависеть от того, добавляете вы новые записи или обновляете уже существующие в базах профилей Altcraft:
- Добавить новых и обновить существующих
- Только добавить новых, не обновлять существующих
- Только обновлять существующих, не добавлять новых
Режим поиска профиля определяет, по каким данным из вашего файла Altcraft будет искать существующие профили. Это необходимо для обновления данных клиентов и избежания дублирующихся записей. Доступны следующие режимы:
- По email адресу из профиля или подписок — по полю профиля Email или по email адресам из подписок.
- По email адресу из профиля — только по полю профиля Email.
- По телефону из полей данных или подписок — по полю профиля Телефоны или по телефонам из SMS подписок.
- По дополнительному полю — по пользовательскому полю базы данных. Например, ID клиента в CRM компании.
- По подписке — по данным подписки.
- По идентификатору профиля — по уникальному ID профиля (только при обновлении данных).
Необходимо учитывать следующие особенности матчинга:
- Значение поля для поиска должно быть уникально для каждого профиля в базе, в ином случае платформа не сможет однозначно определить искомый профиль
- Для одной базы профилей следует использовать только один режим поиска. Это необходимо для того, чтобы избежать создания дублирующихся профилей в базе.
- Если вы собираетесь пользоваться матчингом по дополнительному полю, вам нужно обратиться к администратору платформы для создания индекса этого поля. Благодаря индексу поиск профиля в базе будет занимать значительно меньше времени.
Настройка полей
Для рассылок платформа использует контактные данные, указанные в подписках профиля на ресурсы. Вы можете также записать email-адрес и номер телефона клиента в основные поля профиля, но эти данные будут использоваться только для поиска пр офиля в базе. Если идентификация клиентов в вашей базе настроена по данным CRM или другим уникальным идентификаторам, то Email и Телефоны в полях профиля можно не указывать.
Перейдите к определению соответствия колонок в базе профилей Altcraft с колонками данных в вашем файле-таблице. Altcraft определит колонки автоматически, если их названия подойдут под системные, однако, если ваши колонки не соответствуют системным, вы можете настроить их вручную. Для этого перейдите в столбец "Не определено":
- Колонка источника — выберите колонку вашего файла для получения данных. По каждой колонке будет отображаться первая запись — так вы можете точнее определить тип данных.
- Соответствует полю в базе — выберите поле профиля, в которое нужно записать данные клиента. Можно выбрать стандартные и кастомные (дополнительные) поля базы профилей.
После того как вы выберите соответствие для неопределившейся колонки, она автома тически будут перенесена в столбец "Определено". Если вы установили неправильное соответствие, то нажмите на крестик справа от нужного вам поля, тогда оно снова окажется в столбце "Не определено".
Данные из неопределенных колонок не будут импортированы в базу.
Дополнительные настройки полей:
-
Игнорировать пустые значения во всех колонках. Опция используется при обновлении данных профилей, которые уже есть в базе. Например, в поле профиля "vendor" уже записано значение "test.com", но сейчас вы импортируете файл, где поле "vendor" у этого клиента пустое. Платформа перезапишет поле, подставив пустое значение. Чтобы избежать этого, включите опцию "Игнорировать пустые" для соответствующей колонки. Тогда значение в поле профиля "vendor" останется прежним.
-
Воспринимать нулевые значения как пустые во всех колонках. Если в вашем файле-источнике неизвестные о клиенте данные записаны с помощью таких значений, как
null
,nil
,none
илиundefined
, платформа также может обработать эти значения как пустые. Для этого вам необходимо одновременно актировать поля "Воспринимать нулевые значения как пустые" и "Игнорировать пустые значения" рядом с той колонкой, где указано неизвестное значение. В таком случае платформа не обновит поле. При этом регистр null, nil, none и undefined неважен. Значения"0001-01-01 00:00:00 +0000 UTC"
и"0001-01-01T00:00:00Z"
тоже могут быть обработаны как пустые.
Опции
При настройке импорта данных из файла для каждого типа поля доступны определённые опции, которые определяют, как данные будут обрабатываться и сохраняться в системе:
Опция | Описание | Тип поля |
---|---|---|
Игнорировать пустые значения | Предотвращает перезапись данных профиля пустыми значениями при импорте, сохраняя существующую информацию, если в импортируемом файле соответствующие поля пусты. | Все |
Считать нулевые значения пустыми | Платформа будет обрабатывать значения типа null, nil, none или undefined как пустые, если активировать данную опцию. | Все |
Автоматическая коррекция регистра | Преобразовывает буквы в выбранный регистр. Например: Все буквы строчные, Каждое слово начинается с заглавной буквы или Все буквы заглавные. | Имя, Фамилия, Подписки (тип поля - Строка) |
Добавить телефонный код ко всем значениям | Позволяет добавить международный код в начало всех импортируемых номеров (например, +7). Платформа обрабатывает телефоны только в международном формате, поэтому используйте эту опцию, если в вашем файле телефоны записаны в другом формате. | Телефон |
Преобразовать локальный телефонный код | Позволяет заменить часть номера (например, преобразовать код 8 в +7) | Телефон |
Выберите формат даты из файла | Позволяет выбрать формат даты, который представлен в импортируемом файле. | Дата |
Значение по умолчанию | Предустановленное значение, которое автоматически записывается в поле, если в загружаемом файле для данного поля отсутствуют данные. | Дата |
Установи ть соответствие значений колонок и полей | Если значения в вашей колонке не соответствуют системным значениям платформы, вы можете уточнить их соответствие. | Пол (тип поля - Список) |
Увеличить значение поля на значение из колонки | Добавляет значение из импортируемого файла к уже существующему значению в указанном поле базы данных, вместо его замены. | Целое число, Число с точкой |
Уменьшить значение поля на значение из колонки | Вычитает значение, указанное в импортируемом файле, из текущего значения в выбранном поле базы, вместо его замены. | Целое число, Число с точкой |
Округлить число до указанного количества десятичных знаков | Автоматически сокращает числовое значение до заданного количества знаков после запятой во время загрузки данных, чтобы обеспечить точность или соответствие формату. Округление применяется к данным из файла, а не к итоговому значению, которое запишется в поле профиля. Это может привести к погрешностям при использовании опций "Уменьшить на значение из файла" и "Увеличить на значение из файла". Например, если значение в файле составляет 123.124, то после округления до двух знаков оно будет 123.12. При вычитании или сложении этих данных с числом из профиля может возникнуть небольшая погрешность, например, при сложении 0.1 и 0.2 вместо ожидаемого 0.3 может получиться значение 0.3000000001. | Число с точкой |
Разделитель тегов | Символ или набор символов, используемый для разделения нескольких тегов (меток) в одном поле файла, чтобы платформа могла правильно распознать и импортировать их как отдельные значения. | Теги |
Добавить или обновить данные по полю объекта | Опция, которая либо создает новое значение для указанного поля объекта, если оно отсутствует, либо обновляет уже существующее значение в базе на основе данных из импортируемого файла. | Массив объектов |
Удалить данные по полю объекта | Опция, которая удаляет объекты с одинаковым значением в указанном поле. | Массив объектов |
Импортировать в свойство | Записывает значение из колонки файла в указанное свойство объекта. | Объект |
Настройка подписок
При импорте из файла подпишите своих клиентов на необходимые ресурсы. Ресурс определяет возможность отправки сообщений профилям по различным каналам коммуникации. Без подписки на ресурс коммуникация невозможна. В блоке Настройте подписки нажмите кнопку + Добавить подписку.
Вам доступно два режима обновления статуса подписок: безопасный и небезопасный. При выборе небезопасного режима будут обновлены подписки профилей со статусами: Отписан, Жалобщик, Hardbounced, Не валиден. Если у профиля уже есть подписка на выбранный канал в ресурсе с одним из этих статусов, после импорта её статус изменится в соответствии с заданными настройками.
Для каждой подписки выберите ресурс и канал связи, после чего нажмите кнопку "Настроить". Во втором окне выберите статус и приоритет подписки, а также колонку в файле, где указаны контактные данные для рассылок по выбранному каналу:
Каждый профиль имеет ограничение — не более 20 подписок на один ресурс.
Для подписок на push-уведомления дополнительно требуется указать провайдер push-сервиса и push-токен:
После настройки подписки, вы можете отредактировать её, кликнув по ней, или удалить нажатием на значок с красным минусом.
Финал
На финальном этапе импорта вы можете проверить ваши настройки и запустить импорт, а также определить дополнит ельные действия с полями базы данных. Вы можете вернуться на один или несколько шагов назад, но при этом сбросятся настройки текущего шага.
В блоке Другие действия с полями вы можете выполнить дополнительные действия с полями базы профилей, для которых не была установлена свяpь: установить фиксированное значение для всех профилей или удалить текущее значение из поля.
Помимо этого в блоке Дополнительные настройки включаются добавочные опции:
- Пропустить запуск триггеров — не запускать сценарии и триггерные кампании, настроенные на импорт в выбранную базу данных.
- Определить геоданные по IP — при передаче данных в поля Reg IP или IP в формате IPv4 Altcraft автоматически определит геолокацию, а вы сможете выбрать такие поля профиля, как Координаты, Страна, Город — или Страна рег. и Город рег. для заполнения, также будет отмечено положение профиля на виджете карты.
-
Создать статический сегмент по результатам этого импорта — при импорте профилей платформа создаст статический сегмент, в который войдут все добавленные и обновленные профили.
-
Обновить сегмент по результатам этого импорта — при импорте профилей платформа автоматически пересчитает статический сегмент.
Передача статуса при импорте
При настройке полей и подписок можно передать глобальный статус профиля и статус его подписки, соответственно. Статус в колонке файла может быть указан как в текстовом, так и в числовом виде.
Возможные значения поля:
- 0, "subscribed" — "Подписан" (доступен для коммуникации по всем каналам связи)
- 1, "unsubscribed" — "Отписан" (отписался от получения сообщений по всем каналам)
- 2, "complained" — "Жалобщик" (пожаловался на спам, коммуникация остановлена)
- 3, "hardbounced" — "Hardbounced" (провайдер полность отказался принимать сообщения на этот адрес)
- 4, "unconfirmed" — "Не подтвержден" (подписчик зарегистрировался, но не подтвердил согласие на получение рассылок)
- 5, "suspended — "Приостановлен" (подписка приостановлена на некоторое время)
- 6, "invalid" — "Не валиден" (исключен из маркетинговых кампаний по любым другим причинам)
API импорт
API используется для интеграции с внешними системами — сайтами, приложениями, сервисами управления клиентскими данными (CRM), формами сбора данных. В конструкторе API-запроса вы можете задать определённые параметры для импорта данных и передать пример запроса вашим разработчикам.
В "Поле для поиска" выберите данные, по которым будет производиться поиск уже существующих профилей:
- Email — по полю профиля Email.
- Телефон — по полю профиля Телефоны.
- По кастомному полю — по пользовательскому полю базы данных. Например, ID клиента в CRM компании.
- Идентификатор профиля — по уникальному ID профиля (только при обновлении данных).
Также выберите ресурс для подписки.
Поставьте галочку в окне Пропустить запуск триггеров, если не хотите запускать сценарии и триггерные кампании, настроенные на импорт в выбранную базу данных.
Поставьте галочку в окне Пропустить невалидные подписки, чтобы не добавлять подписку профиля, если в запросе присутствуют невалидные данные.
Ниже вы увидите шаблон API-запроса:
- Для импорта или обновления одного профиля используйте этот запрос.
- Другие запросы к API импорта описаны в разделе Профили.
- Управление подписками профиля описано в разделе Подписки.
Импорт из внешних SQL баз данных по расписанию
Altcraft может автоматически забирать данные для импорта новых профилей клиентов и обновления существующих из внешней таблицы данных ClickHouse, MySQL, MSSQL, PostgreSQL или Oracle RDBMS.
Инструкция по настройке импорта по расписанию вынесена в отдельную статью.