Властивості контакту
Визначайте власні поля для контактів — наприклад тип акаунта, регіон або рівень контракту — і передавайте їх через віджет. Властивості показуються в профілі контакту, оператори можуть їх редагувати, а у спільній скриньці за ними можна фільтрувати.
Огляд#
Властивості контакту дають змогу прикріплювати до розмов структуровані дані понад вбудовані поля (email, name, userId). На відміну від довільних metadata, властивості мають визначену схему з типами, підписами та валідацією — подібно до власних полів у HubSpot чи Salesforce.
Визначте схему
Створюйте визначення властивостей у налаштуваннях агента з типами на кшталт string, number, enum, boolean, date, url
Передавайте з віджета
Надсилайте значення властивостей через Respondo.identify() — вони зберігаються та відображаються автоматично
Фільтруйте та редагуйте
Фільтруйте розмови за значеннями властивостей у спільній скриньці. Оператори можуть переглядати й редагувати атрибути контакту в його профілі.
Визначення властивостей#
Властивості визначаються для кожного агента в Налаштування агента → Властивості контакту. Кожна властивість має:
| Поле | Опис |
|---|---|
| key | Унікальний ідентифікатор, що використовується в коді. Генерується автоматично з підпису (можна редагувати). Малі літери, цифри та підкреслення; має починатися з літери; 2–63 символи. Системні ключі (user_id, visitor_id, timezone, page_url, …) зарезервовані. Приклад: account_type |
| label | Читабельна назва, що показується в дашборді. Приклад: «Account Type» |
| type | Тип значення: string, number, boolean, enum, date, url |
| enum_values | Для типу enum — список дозволених значень. Приклад: ["starter", "pro", "enterprise"] |
| is_filterable | Зарезервовано для майбутнього керування фільтрами; зберігається разом із визначенням, але добірник фільтрів Inbox наразі показує всі визначені властивості (за замовчуванням: true) |
| is_visible | Зарезервовано для майбутнього керування відображенням; зберігається разом із визначенням, але поки не застосовується в UI (за замовчуванням: true) |
Передавання з віджета#
Передавайте значення властивостей у полі properties виклику Respondo.identify(). Ключі мають збігатися з визначеннями властивостей із налаштувань агента.
Respondo.identify({
email: 'user@example.com',
name: 'Jane Smith',
userId: 'usr_456',
properties: {
account_type: 'enterprise', // enum
region: 'eu-west', // string
monthly_spend: '15000', // number (передається рядком)
is_partner: 'true', // boolean (передається рядком)
contract_end: '2026-12-31', // date
dashboard_url: 'https://app.example.com/org/123' // url
}
});Фрагмент для інтеграції#
Фрагмент для інтеграції з’являється автоматично в Налаштування агента → Властивості контакту, щойно ви визначили принаймні одну властивість, з усіма наперед заповненими ключами властивостей. Натисніть Copy, щоб узяти його, і вставте у свій застосунок. Згенерований фрагмент також містить плейсхолдер userHash для верифікації особи (HMAC-SHA256).
Як зберігаються значення#
Значення властивостей зберігаються в полі metadata (JSONB) розмови з префіксом cp_. Наприклад, властивість із ключем account_type зберігається як cp_account_type.
Властивості оновлюються з кожним повідомленням — якщо віджет надсилає нові значення, вони перезаписують наявні. Це означає, що значення властивостей завжди відображають найсвіжіші дані з вашого застосунку.
Фільтрація у спільній скриньці#
Фільтруйте розмови за значеннями властивостей через панель фільтрів Inbox або збережене представлення (View). Додайте умову Property, виберіть властивість за назвою — добірник показує кожне визначення в усіх ваших агентах і також приймає сирий ключ без визначення — а потім виберіть значення. Поле значення підказує спостережені значення та будь-які enum-значення в міру введення.
Через API ендпоінти списку розмов приймають query-параметр cp.<key>=<value> (точний аліас attr.<key>). Вільнотекстового синтаксису запитів немає:
GET /api/v1/conversations?cp.account_type=enterpriseРедагування значень#
Значення властивостей задає ваш застосунок — через інтеграцію віджета або API — і на панелі деталей розмови вони доступні лише для читання. Панель веде до профілю контакту, де оператори можуть переглядати й редагувати атрибути контакту (Contacts → контакт → Attributes).
Властивості проти Metadata
| Можливість | properties | metadata |
|---|---|---|
| Схема | Визначається в налаштуваннях агента з типами | Довільні пари ключ-значення |
| Фільтрація | Так, через панель фільтрів / збережені View (API: параметр cp.<key>) | Ні |
| Редагування операторами | Ні — значення надходять із вашого застосунку; атрибути контакту редагуються в профілі контакту | Ні |
| Типізоване відображення | Так (бейджі, посилання, дати, булеві значення) | Лише звичайний текст |
| Автозаповнення | Так, підказки значень у полі значення фільтра | Ні |
metadata для тимчасових полів, яким не потрібні фільтрація чи типізоване відображення. Використовуйте properties для структурованих даних, які ваша команда активно використовуватиме для сегментації та в робочих процесах.