Dokumentacja

Właściwości kontaktu

Definiuj niestandardowe pola dla kontaktów — takie jak typ konta, region czy poziom umowy — i przekazuj je przez widget. Właściwości są pokazywane na profilu kontaktu, mogą być edytowane przez operatorów i służyć jako filtr w skrzynce.

Przegląd#

Właściwości kontaktu pozwalają dołączać do rozmów uporządkowane dane wykraczające poza wbudowane pola (email, imię, userId). W przeciwieństwie do dowolnych metadata, właściwości mają zdefiniowany schemat z typami, etykietami i walidacją — podobnie jak niestandardowe pola w HubSpot czy Salesforce.

Zdefiniuj schemat

Utwórz definicje właściwości w Ustawieniach agenta z typami takimi jak string, number, enum, boolean, date, url

Przekaż z widgetu

Wyślij wartości właściwości przez Respondo.identify() — są one zapisywane i wyświetlane automatycznie

Filtruj i edytuj

Filtruj rozmowy według wartości właściwości w skrzynce. Operatorzy mogą przeglądać i edytować atrybuty kontaktu na jego profilu.

Definiowanie właściwości#

Właściwości definiuje się dla każdego agenta w Ustawienia agenta → Właściwości kontaktu. Każda właściwość ma:

PoleOpis
keyUnikalny identyfikator używany w kodzie. Generowany automatycznie z etykiety (edytowalny). Małe litery, cyfry i podkreślenia; musi zaczynać się od litery; 2-63 znaki. Klucze systemowe (user_id, visitor_id, timezone, page_url, …) są zarezerwowane. Przykład: account_type
labelCzytelna dla człowieka nazwa wyświetlana w panelu. Przykład: "Account Type"
typeTyp wartości: string, number, boolean, enum, date, url
enum_valuesDla typu enum — lista dozwolonych wartości. Przykład: ["starter", "pro", "enterprise"]
is_filterableZarezerwowane pod przyszłą kontrolę filtrowania; zapisywane wraz z definicją, ale selektor filtrów w skrzynce obecnie pokazuje wszystkie zdefiniowane właściwości (domyślnie: true)
is_visibleZarezerwowane pod przyszłą kontrolę wyświetlania; zapisywane wraz z definicją, ale jeszcze nieegzekwowane w interfejsie (domyślnie: true)
Do 50 właściwości na agenta. Właściwości można zmieniać kolejność metodą przeciągnij i upuść w interfejsie ustawień.

Przekazywanie z widgetu#

Przekaż wartości właściwości w polu properties wywołania Respondo.identify(). Klucze muszą pasować do definicji właściwości z Ustawień agenta.

Integracja z widgetemjavascript
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 (przekazany jako string)
    is_partner: 'true',           // boolean (przekazany jako string)
    contract_end: '2026-12-31',   // date
    dashboard_url: 'https://app.example.com/org/123'  // url
  }
});
Wszystkie wartości właściwości przekazywane są jako łańcuchy znaków (string). Panel obsługuje wyświetlanie zależne od typu (np. boolean → Tak/Nie, url → klikalny link, enum → odznaka).

Fragment integracyjny#

Fragment integracyjny pojawia się automatycznie w Ustawienia agenta → Właściwości kontaktu, gdy tylko zdefiniujesz co najmniej jedną właściwość, z wypełnionymi wszystkimi kluczami właściwości. Kliknij Kopiuj, aby go pobrać i wkleić do swojej aplikacji. Wygenerowany fragment zawiera również placeholder userHash do weryfikacji tożsamości (HMAC-SHA256).

Jak przechowywane są wartości#

Wartości właściwości przechowywane są w polu JSONB metadata rozmowy z prefiksem cp_. Na przykład właściwość o kluczu account_type jest zapisywana jako cp_account_type.

Właściwości są aktualizowane przy każdej wiadomości — jeśli widget wyśle nowe wartości, nadpisują one istniejące. Oznacza to, że wartości właściwości zawsze odzwierciedlają najnowsze dane z Twojej aplikacji.

Filtrowanie w skrzynce#

Filtruj rozmowy według wartości właściwości za pomocą paska filtrów skrzynki lub zapisanego Widoku. Dodaj warunek Właściwość, wybierz właściwość po nazwie — selektor pokazuje każdą definicję ze wszystkich Twoich agentów i akceptuje też surowy klucz bez definicji — a następnie wybierz wartość. Pole wartości podpowiada w miarę wpisywania wartości zaobserwowane oraz wartości enum.

Przez API endpointy listy rozmów przyjmują parametr zapytania cp.<key>=<value> (dokładny alias attr.<key>). Nie ma tekstowej składni zapytań:

GET /api/v1/conversations?cp.account_type=enterprise

Edycja wartości#

Wartości właściwości ustawia Twoja aplikacja — przez integrację widgetu lub API — i w panelu szczegółów rozmowy są tylko do odczytu. Panel linkuje do profilu kontaktu, gdzie operatorzy mogą przeglądać i edytować atrybuty kontaktu (Kontakty → kontakt → Atrybuty).

Właściwości a metadata

Cechapropertiesmetadata
SchematZdefiniowany w Ustawieniach agenta z typamiDowolne pary klucz-wartość
FiltrowalneTak, przez pasek filtrów / zapisane Widoki (API: parametr cp.<key>)Nie
Edytowalne przez operatorówNie — wartości pochodzą z Twojej aplikacji; atrybuty kontaktu edytuje się na profilu kontaktuNie
Wyświetlanie zależne od typuTak (odznaki, linki, daty, wartości logiczne)Tylko zwykły tekst
AutouzupełnianieTak, podpowiedzi wartości w polu wartości filtraNie
Używaj metadata dla doraźnych pól, które nie wymagają filtrowania ani wyświetlania zależnego od typu. Używaj properties dla uporządkowanych danych, których Twój zespół będzie aktywnie używał do segmentacji i w procesach pracy.