Объект 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 | Устройство с которого зашел пользователь (web, 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 назначается автоматически |