Содержание документации
Входящие и эл. почта
База знаний
Задачи
Файлы
Аналитика
Аккаунт и оплата
Профиль посетителя, метки и действия
Обновлено
Ваш сайт может сообщить команде, кто пишет и что он только что делал. Команда видит это во входящих рядом с диалогом и на странице контакта.

Что такое профиль посетителя
- Профиль: имя, телефон, аватар, компания, метки и до 50 своих полей с типами.
- Действия: короткая история того, что делал посетитель (
track). - Значения сессии: что важно для этого диалога, отправляется с каждым сообщением (
setContext).
Профиль принадлежит контакту и сохраняется между диалогами. Значения сессии принадлежат сообщениям. Они не смешиваются.
// После входа, с подписью, которую вычислил ваш сервер
HrcWidget('identify', {
externalId: String(customer.id),
email: customer.email,
name: customer.name,
userHash: customer.supportHash,
attributes: {
plan: 'pro',
signed_up_at: customer.createdAt,
orders: customer.orderCount,
},
tags: customer.isVip ? ['vip'] : [],
});
// Позже, на любой странице
HrcWidget('update', { attributes: { cart_items: 3, cart_total: 129.5 } });
HrcWidget('track', 'order-placed', { order_id: 'o-1042', total: 129.5 });Свои поля
| Правило | Значение |
|---|---|
| Ключ | Строчные буквы, цифры, _ и -, начинается с буквы, до 40 символов. Заглавные буквы становятся строчными. |
| Типы | Текст (от 1 до 255 символов), число, true/false, дата. |
| Дата | JS Date или строка ISO 8601 (2026-11-02) в ключе, который заканчивается на _at или _date. |
| Количество | До 50 полей на контакт. |
| Удалить | null или ''. |
| Нельзя | Объекты и массивы (компания это отдельное поле). |
Зарезервированные ключи (id, email, name, phone, company, tags, language, user_hash, всё, что начинается с hrc_, и другие) и ключи, похожие на секреты (password, secret, token, cvv, card_number, iban, api_key), отклоняются.
Имя, телефон, аватар и компания
nameдо 120 символов.phoneдо 32 символов, не меньше 5 цифр. Только показывается команде, никогда не используется для связи.avatarUrlтолькоhttps:, до 500 символов. Если не загружается, показываются инициалы.company:{ id?, name, website?, plan? }, одна компания на контакт,nullудаляет.
Метки и действия
Метки (setTags): до 20 на контакт, строчные буквы, цифры и дефис, до 32 символов.
Действия (track): название из строчных букв, цифр, _, . и -, до 64 символов. Лучше всего читается прошедшее время: plan-upgraded, checkout.failed. До 10 свойств. Хранятся последние 100 действий, не дольше 180 дней. На боковой панели видны последние 5, на странице контакта все.

Действия нужны для поддержки («что он только что делал»), а не для аналитики.
Кто что может менять
У каждого значения есть источник. Более низкий источник не перезаписывает более высокий: поле пропускается, а виджет пишет одно предупреждение в консоли.
| Источник | Кто пишет | В приложении |
|---|---|---|
| Команда | Участник в приложении, AI-агент через MCP или REST API | «задано командой» |
| Ваш сайт | SDK, когда сессия распознана с действительным userHash |
«с вашего сайта» |
| Браузер | SDK в анонимной сессии | «из браузера, не подтверждено» |
// Без входа: значения сохраняются как «из браузера, не подтверждено»
HrcWidget('update', {
attributes: { landing_page: 'pricing', utm_source: 'newsletter' },
});userHash подтверждает только ID и эл. почту. Значения, от которых что-то зависит (тариф, баланс, права), отправляйте со своего сервера через REST API: тогда их источник команда, и браузер не может их изменить.
Когда данные сохраняются
Пока посетитель не отправил сообщение, не загрузил файл и не распознан, ничего не сохраняется ни в его браузере, ни на сервере. До этого изменения профиля и до 20 действий ждут в памяти виджета и отправляются сразу, как появится сессия. При перезагрузке страницы они пропадают.
Приватность
Значения профиля, метки и действия это персональные данные контакта, а ваша компания их контролёр. Никогда не отправляйте пароли, данные платёжных карт, данные о здоровье и другие особые категории данных. При удалении контакта удаляются и его действия.
Не нашли ответа? Напишите нам