# Получение аффинити профиля пользователя

Аффинити-профиль показывает рассчитанные интересы текущего пользователя по свойствам товаров. Метод возвращает объект со скорами и не более 20 значений для одного свойства.

---

## Запрос профиля

**Синтаксис**

```jsx
GF.ServerUtils.getAffinity()
```

Метод возвращает `Promise`. Внутри скрипта повторные вызовы кратковременно троттлятся и могут вернуть один и тот же pending `Promise`, если запросы идут подряд.

=== Пример использования

```jsx
GF.ServerUtils.getAffinity().then(function (data) {
  console.log(data);
});
```
===

После pageview скрипт также обновляет `GF.userAffinity`:

```jsx
GF.waitForVariable('GF.userAffinity.profile').then(function () {
  console.log(GF.userAffinity.profile);
});
```

---

## Пример ответа

```json
{
  "categories_1": {
    "Аксессуары": 14,
    "Женская обувь": 22,
    "Мужская обувь": 22
  },
  "categories_2": {
    "Кроссовки": 44,
    "Ботинки": 38,
    "Носки": 12,
    "Кеды": 2,
    "Сандалии": 2,
    "Сумки": 2
  },
  "color": {
    "коричневый": 38,
    "красный": 2,
    "розовый": 2,
    "серый": 2,
    "синий": 4,
    "черный": 22,
    "темно-серо-коричневый": 22,
    "бежевый": 42,
    "белый": 4
  },
  "gender": {
    "Мужские": 22,
    "Женские": 22
  },
  "season": {
    "демисезон": 44,
    "лето": 80,
    "всесезон": 14
  }
}
```
