Загрузка событий

Методы

Для загрузки событий на сервер MyTracker используйте следующие методы:

  • registration и registrationBatch для передачи событий регистрации;
  • login и loginBatch для передачи событий авторизации;
  • customEvent и customEventBatchдля передачи кастомных событий.

registration

Используйте метод registration для передачи данных о регистрации пользователя.

End-point: https://tracker-s2s.my.com/v1/registration/?idApp=XXX

Обязательный параметр: customUserId.

registrationBatch

Используйте метод registrationBatch для пакетной передачи данных. Метод аналогичен registration, но позволяет передать сразу несколько событий регистрации.

End-point: https://tracker-s2s.my.com/v1/registrationBatch/?idApp=XXX

Обязательные параметры:

Название параметра Описание Тип Пример
Один параметр без названия. Это массив, через который передают параметры из метода registration.
Если хотя бы в одном наборе параметров нарушены правила валидации, сервер вернет ошибку
Массив. Максимальный размер 20 [
{"customUserId": "1111", "lvid":"00000000000000000000000000000000"},
{"customUserId": "2222", "lvid":"00000000000000000000000000000000"}
]

login

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

End-point: https://tracker-s2s.my.com/v1/login/?idApp=XXX

Обязательный параметр: customUserId.

loginBatch

Используйте метод loginBatch для пакетной передачи данных. Метод аналогичен login, но позволяет передать сразу несколько событий авторизации.

End-point: https://tracker-s2s.my.com/v1/loginBatch/?idApp=XXX

Обязательные параметры:

Название параметра Описание Тип Пример
Один параметр без названия. Это массив, через который передают параметры из метода login.
Если хотя бы в одном наборе параметров нарушены правила валидации, сервер вернет ошибку
Массив. Максимальный размер 20 [
{"customUserId": "1111", "lvid":"00000000000000000000000000000000"},
{"customUserId": "2222", "lvid":"00000000000000000000000000000000"}
]

customEvent

Используйте метод customEvent для передачи данных о кастомном событии (например, посещение офиса продаж, доставка товара и пр.).

End-point: https://tracker-s2s.my.com/v1/customEvent/?idApp=XXX

Обязательные параметры: идентификатор пользователя customUserId и/или один из идентификаторов устройства: instanceId, lvid, gaid, appSetId, androidId, idfa, iosVendorId (событие будет привязано к пользователю и/или к устройству).

Специфичные параметры:

Название параметра Описание Тип Пример
customEventName* Имя кастомного события Строка, минимальная длина 1, максимальная длина 255 "customEventName":"messageReceived"
customEventParams Параметры кастомного события массив paramsName => paramValue
Размер массива не ограничен
paramsName — строка, минимальная длина 1, максимальная длина 255
paramValue — строка, минимальная длина 1, максимальная длина 255
"customEventParams":{ "name1":"value1", "name2":"value2" }

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

customEventBatch

Используйте метод customEventBatch для пакетной передачи данных. Метод аналогичен customEvent, но позволяет передать сразу несколько кастомных событий.

End-point: https://tracker-s2s.my.com/v1/customEventBatch/?idApp=XXX

Обязательные параметры:

Название параметра Описание Тип Пример
Один параметр без названия. Это массив, через который передают параметры из метода customEvent.
Если хотя бы в одном наборе параметров нарушены правила валидации, сервер вернет ошибку
Массив. Максимальный размер 20 [
{"customUserId": "1111", "lvid":"00000000000000000000000000000000", "customEventName": "messageReceived"},
{"customUserId": "2222", "lvid":"00000000000000000000000000000000", "customEventName": "messageReceived"}
]

Параметры

Все параметры передаются в теле POST запроса в формате json.

Ограничение на максимальный размер загружаемых данных — 10Кб.

Название параметра Описание Тип Пример

Общие

eventTimestamp Время события Число, минимальное 946674000, максимальное значение 4294967295. По умолчанию берётся timestamp получения события "eventTimestamp":"1577191920"
customUserId Идентификатор пользователя в вашем приложении Строка, максимальный размер 1024 "customUserId":"1234"
ipv4 ipv4-адрес Строка, максимальный размер 15 "ipv4":"125.125.125.125"
ipv6 ipv6-адрес Строка, максимальный размер 45 "ipv6":"2001:0db8:85a3:0000:0000:8a2e:0370:7334"
idGender Пол Число, возможные варианты:
  • 0 — неизвестно
  • 1 — мужчина
  • 2 — женщина
"idGender":"1"
age Возраст Число, максимальное значение 128 "age":"38"
connectionType Тип соединения Число, возможные варианты:
  • 0 — неизвестно
  • 1 — мобильная
  • 2 — wi-fi
По умолчанию 0
"connectionType":"1"
bluetoothEnabled Bluetooth Число, возможные варианты:
  • 0 — неизвестно
  • 1 — включён
  • 2 — выключен
По умолчанию 0
"bluetoothEnabled":"2"

Для мобильных платформ

instanceId S2S идентификатор устройства Строка, кол-во символов 36 "instanceId":"00000000-0000-0000-0000-000000000000"
adTrackingEnabled Разрешение отслеживания Число, возможные варианты:
  • 1 — включено
  • 0 — выключено
По умолчанию 1
"adTrackingEnabled":"0"
iOS
idfa Рекламный идентификатор iOS Строка, кол-во символов 36 "idfa":"00000000-0000-0000-0000-000000000000"
iosVendorId Идентификатор производителя IOS Строка, кол-во символов 36 "iosVendorId":"00000000-0000-0000-0000-000000000000"
Android
gaid Рекламный идентификатор Android Строка, кол-во символов 36 "gaid":"00000000-0000-0000-0000-000000000000"
appSetId Идентификатор Android, уникальный в рамках аккаунта разработчика Google Play Строка, кол-во символов 36 "appSetId":"00000000-0000-0000-0000-000000000000"
androidId Идентификатор Android Строка, кол-во символов 16 "androidId":"000000000000000"

Для веб-платформ

lvid S2S идентификатор устройства Строка, кол-во символов 32 "lvid":"00000000000000000000000000000000"
adBlocker Блокировщик рекламы Число, возможные варианты:
  • 1 — включен
  • 0 — выключен
По умолчанию 0
"adBlocker":"0"
userAgent User-Agent Строка, максимальный размер 2048 "userAgent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.87 Safari/537.36"

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

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

curl https://tracker-s2s.my.com/v1/customEvent/?idApp=666 \
–k –X POST --header "Authorization: aaaaaAAAaaa01aaaaaaa1aaAAA11a" \
-d '{"customUserId": "1", "customEventName": "levelUp",
"customEventParams": {"level": "2"}, "idGender": "1",
"age": "25", "eventTimestamp": "1580213208",
"instanceId": "00000000-0000-0000-0000-000000000000"}'

Пример использования PHP SDK:

$idApp = 666;
$token = 'aaaaaAAAaaa01aaaaaaa1aaAAA11a';
$accountCredentials = new Credentials($token);
$customEventMethod = new CustomEventMethod($accountCredentials, $idApp);
$customEventMethod->params()
   ->setCustomUserId('1')
   ->setCustomEventName('levelUp')
   ->addCustomEventParam('level', '2')
   ->setIdGender(Gender::MALE)
   ->setAge(25)
   ->setEventTimestamp(1580213208)
   ->setInstanceId('00000000-0000-0000-0000-000000000000');

$client = Client::getDefault();
$client->request($customEventMethod);

Коды ответов

Код Текст Описание
200 {"message": "ОK"} Запрос был успешно обработан
400 {"error": "Bad Request"} Ошибка запроса, параметры не прошли валидацию
403 {"error": "Forbidden"} Токен не прошёл валидацию, либо не подходит для приложения
400 {"error": "Empty post data"} Пустое тело запроса
400 {"error": "Bad json"} Передан битый json в теле запроса
400 {"error": "Bad api version"} Неподдерживаемая версия API
404 {"error": "Method not found"} Метод API не найден
500 {"error": "Internal Server Error"} Внутренняя ошибка API. Нужно повторить запрос позже