Personalize API Премиум план

Personalize API позволяет получать персонализированные рекомендации для пользователей.

Синтаксис запроса

Чтобы обратиться к Personalize API, необходимо выполнить запрос следующего вида:

https://mlapi.tracker.my.com/v1/recommendation/имя_метода
  • v1 — версия Personalize API;
  • имя метода — имя вызываемого метода: item, set.

Отправить запрос можно с помощью Swagger UI

Методы

item

Используйте метод item для получения рекомендаций по товару, который включает один предмет.

End-point: https://mlapi.tracker.my.com/v1/recommendation/item

Параметры:

Название параметра Описание Тип Пример
sdk_key* Ключ приложения, встраиваемый в MyTracker SDK, выдается после добавления приложения Строка 00001234567890123456
custom_user_id* Идентификатор пользователя, переданный через MyTracker SDK. Определяет отдельно взятого пользователя. Строка 1234
flat Флаг изменяет формат ответа. Доступные значения:
0 — поле data является словарём
1 — поле data является массивом

Значение по умолчанию: 0
Число 0
reset Признак сброса рекомендаций при последующих запросах. Доступные значения:
0 — не сбрасывать
1 — сбрасывать

Значение по умолчанию: 1
Число 1
placement_ids Идентификаторы мест размещения товара. Если параметр не указан, то рекомендация будет сформирована по всем местам размещения товара Массив строк A, B, C

* — обязательный параметр.

Примеры запросов

Пример запроса:

curl --location --request GET 'https://mlapi.tracker.my.com/api/v1/recommendation/item?sdk_key=00001234567890123456&custom_user_id=1234&placement_ids=A&placement_ids=B&placement_ids=C'

Формат ответа:

{
  "data": {
    "A":{
      "test_id": 0,
      "group_id": 0,
      "placement_id": "string",
      "offer": {
        "offer_id": "string",
        "subitems": [
          {
            "sku": "string",
            "payload": "string",
            "price": 0,
            "value": 0,
            "discount_price": 0,
            "discount_value": 0
          }
        ]
      },
    },
    "B":{}
    "C":{}
  }
}

Ответ включает следующие данные:

  • test_id: идентификатор A/B теста
  • group_id: идентификатор группы, к которой относится пользователь: группа для рекомендаций или контрольная группа
  • placement_id: идентификатор места размещения товара
  • offer_id: идентификатор товара
  • price: цена товара по умолчанию (можно не использовать)
  • value: количество товара по умолчанию (можно не использовать)
  • discount_price: рекомендуемая цена товара
  • discount_value: рекомендуемое количество товара

Пример запроса с flat=1:

curl --location --request GET 'https://mlapi.tracker.my.com/api/v1/recommendation/item?sdk_key=00001234567890123456&custom_user_id=1234&placement_ids=A&placement_ids=B&placement_ids=C&flat=1'

Формат ответа с flat=1:

{
  "data": [
    {
      "test_id": 0,
      "group_id": 0,
      "placement_id": "string",
      "offer": {
        "offer_id": "string",
        "subitems": [
          {
            "sku": "string",
            "payload": "string",
            "price": 0,
            "value": 0,
            "discount_price": 0,
            "discount_value": 0
          }
        ]
      },
    },
    {}
    {}
  ]
}

Ответ включает следующие данные:

  • test_id: идентификатор A/B теста
  • group_id: идентификатор группы, к которой относится пользователь: группа для рекомендаций или контрольная группа
  • placement_id: идентификатор места размещения товара
  • offer_id: идентификатор товара из нескольких предметов
  • sku: название бандла в сторе (может быть не уникальным для предмета в сторе)
  • payload: уникальное название предмета внутри приложения
  • price: цена товара по умолчанию (можно не использовать)
  • value: количество товара по умолчанию (можно не использовать)
  • discount_price: рекомендуемая цена товара
  • discount_value: рекомендуемое количество товара

set

Используйте метод set для получения рекомендаций по товару, который включает набор предметов.

End-point: https://mlapi.tracker.my.com/v1/recommendation/set

Параметры:

Название параметра Описание Тип Пример
sdk_key* Ключ приложения, встраиваемый в MyTracker SDK, выдается после добавления приложения Строка 00001234567890123456
custom_user_id* Идентификатор пользователя, переданный через MyTracker SDK. Определяет отдельно взятого пользователя. Строка 1234
flat Флаг изменяет формат ответа. Доступные значения:
0 — поле data является словарём
1 — поле data является массивом

Значение по умолчанию: 0
Число 0
reset Признак сброса рекомендаций при последующих запросах. Доступные значения:
0 — не сбрасывать
1 — сбрасывать

Значение по умолчанию: 1
Число 1
placement_ids Идентификаторы мест размещения товара. Если параметр не указан, то рекомендация будет сформирована по всем местам размещения товара Массив строк A, B, C

* — обязательный параметр.

Примеры запросов

Пример запроса:

curl --location --request GET 'https://mlapi.tracker.my.com/api/v1/recommendation/set?sdk_key=00001234567890123456&custom_user_id=1234&placement_ids=A&placement_ids=B&placement_ids=C'

Формат ответа:

{
  "data": {
    "A":{
      "test_id": 0,
      "group_id": 0,
      "placement_id": "string",
      "offer": {
        "offer_id": "string",
        "subitems": [
          {
            "sku": "string",
            "payload": "string",
            "price": 0,
            "value": 0,
            "discount_price": 0,
            "discount_value": 0
          }
        ]
      },
    },
    "B":{}
    "C":{}
  }
}

Пример запроса с flat=1:

curl --location --request GET 'https://mlapi.tracker.my.com/api/v1/recommendation/set?sdk_key=00001234567890123456&custom_user_id=1234&placement_ids=A&placement_ids=B&placement_ids=C&flat=1'

Формат ответа с flat=1:

{
  "data": [
    {
      "test_id": 0,
      "group_id": 0,
      "placement_id": "string",
      "offer": {
        "offer_id": "string",
        "subitems": [
          {
            "sku": "string",
            "payload": "string",
            "price": 0,
            "value": 0,
            "discount_price": 0,
            "discount_value": 0
          }
        ]
      },
    },
    {}
    {}
  ]
}

Оба ответа включают в себя следующие данные:

  • test_id: идентификатор A/B теста
  • group_id: идентификатор группы, к которой относится пользователь: группа для рекомендаций или контрольная группа
  • placement_id: идентификатор места размещения товара
  • offer_id: идентификатор товара из нескольких предметов
  • sku: название бандла в сторе (может быть не уникальным для предмета в сторе)
  • payload: уникальное название предмета внутри приложения
  • price: цена товара по умолчанию (можно не использовать)
  • value: количество товара по умолчанию (можно не использовать)
  • discount_price: рекомендуемая цена товара
  • discount_value: рекомендуемое количество товара

Коды ответов

Код Описание
200 Запрос был успешно обработан
400 Ошибка запроса, параметры не прошли валидацию
Была ли эта статья полезна?