Объект userData
userData – объект с пользовательскими данными. SDK и API Sigma целиком и полностью полагаются на предоставленные данные (методы по раздаче эксперимента, фича-флагов и т.п.).
При инициализации SDK следует предоставлять объект userData и передавать как можно больше данных, чтобы воспользоваться преимуществами расширенных условий и конфигурации (например, провер ки на уровне страны или ОС/браузера).
Sigma не собирает данные, которые хранятся в объекте userData. Исключением является IP, которое необходимо для определения гео.
Атрибуты пользователя
| Название | Тип | Описание | Пример | Значение по умолчанию | 
|---|---|---|---|---|
userId | string | number | ID анонимного пользователя. Например, clientId из счетчика google analytics. Используется для раздачи эксперимента  |  "your_user_id" | - | 
profileId | string | number | ID авторизованного пользователя. Например, ID пользователя при регистрации. Используется для раздачи эксперимента  | "your_profile_id" | - | 
deviceId | string | number | ID устройства пользователя. Полезен для экспериментов, проводимых в приложении (Android и iOS). Например, ID устройства с которого зашел пользователь  | "your_device_id" | - | 
email | string | Email пользователя | "ma@example.com" | - | 
ip | string | IP адрес пользователя. Определяется автоматически. Можно изменить, если указать в userData самому  | "192.168.1.101" | - | 
geo.code | string | Код страны(locale) пользователя | "RU" | При использовании клиентского SDK назначается автоматически  | 
geo.country | string | Название страны пользователя  | "Russian Federation" | При использовании клиентского SDK назначается автоматически  | 
geo.city | string | Название города пользователя | "Moscow" | При использовании клиентского SDK назначается автоматически  | 
geo.state | string | Область/Штат пользователя | "Moscowskaya oblast'" | При использовании клиентского SDK назначается автоматически  | 
appVersion | string | Версия приложения клиентского SDK(платформа android и ios)  | "1.0.1" | Определяется автоматически Для JS, Node.js SDK и Estimate по умолчанию   | 
os.name | string | Название операционной системы пользователя  | "Linux" | При использовании клиентского SDK назначается автоматически  | 
os.version | string | Версия операционной системы пользователя  | "x86_64" | При использовании клиентского SDK назначается автоматически  | 
browser.name | string | Название браузера пользователя  | "Chrome" | При использовании клиентского SDK назначается автоматически  | 
browser.version | string | Версия браузера пользователя  | "129.0.0" | При использовании клиентского SDK назначается автоматически  | 
custom: {} | [key: string]: string | number | boolean | Произвольный параметр пользователя  | "key": "value" | - | 
deviceCategory | string | Устройство с которого зашел пользователь (desktop, tablet, mobile) Только для платформы   | "mobile" | При использовании клиентского SDK назначается автоматически  | 
url | string | Полный URL пользователя Только для платформы   | "https://www.ya.ru/cart/?param=qwerty" | При использовании JS SDK назначается автоматически  | 
domain | string | Домен (hostname) Только для платформы   | "ya.ru" | При использовании JS SDK назначается автоматически  | 
pathname | string | Путь относительно хоста Только для платформы   | "/category/toy" | При использовании JS SDK назначается автоматически  | 
query | string | Часть адреса после символа ? Только для платформы   | "?param=qwerty&com=" | При использовании JS SDK назначается автоматически  | 
ua | string | user-agent пользователя. Результат автоматически добавиться в  Только для Node.js SDK и Estimate  | "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" | - | 
platform | string | string[] | Название платформы, по которой будет отфильтрован конфиг Только для Node.js SDK и Estimate  | ["web", "ios"] | При использовании клиентского SDK назначается автоматически  |