Data API
Краткое содержание
Инструмент для получения неагрегированных данных (событий и сессий) из МТС Аналитики. Подходит для самостоятельной обработки статистики без использования интерфейса сервиса.
Как работает API
API работает асинхронно:
- Создание задачи с параметрами выгрузки.
- Выполнение задачи сервисом.
- Скачивание результата в формате файла.
Какую программу использовать
Рекомендуется использовать Postman (версия не ниже v 11.1.3) или Insomnia.
Этап 1. Добавить коллекцию в Postman
- Скачать файл коллекции.
- Импортировать в Postman через меню File — Import.
Этап 2. Получить авторизационный токен и ID потока
Необходимы:
- Авторизационный токен.
- Flow ID (идентификатор потока).
Получить их можно через обращение на почту analytics.support@mts.ru.
Этап 3. Запросить данные
- Добавить токен в запрос.
- Создать задачу с указанием параметров (например, временных рамок, flowIds).
- Использовать
request_idдля автоматического добавления в последующие GET-запросы.
Шаг 3. Запросить результат по задаче
Возможные действия:
- Получить статус задачи по
task id. - Получить данные всех задач с пагинацией.
Шаг 4. Выгрузить файлы
Использовать task id для скачивания. Файлы доступны в течение суток, формат — CSV.
Предоставляемые параметры событий и сессий
В таблице перечислены поля данных, включая:
- Идентификаторы сессий и событий.
- Информацию о пользователе (регион, возраст, устройство).
- Параметры рекламы, A/B-тестов, UTM-меток.
- Статусы задач и временные метки.
Доступен для Web и App
Data API позволяет получать неагрегированные данные (события и сессии), собранные МТС Аналитикой. Используйте API, если необходимо самостоятельно обрабатывать статистические данные, не используя интерфейс МТС Аналитики.
Как работает API
API работает aсинхронно. Сначала создается задача, где описываются параметры выгрузки, затем задача выполняется сервисом. Далее можно скачать результат задачи в формате файла.
- Добавление коллекции с запросами.
- Получение авторизационного токена.
- Запрос данных.
Какую программу использовать
Вы можете использовать удобную для вас программу, например, Postman или Insomnia.
В этой статье описана работа с Data API через Postman. Версия Postman должна быть не ниже v 11.1.3.
Этап 1. Добавить коллекцию в Postman
Коллекция — файл, который содержит все примеры запросов к системе.
-
Импортируйте коллекцию. Выберите в левом верхнем углу File — Import. В открывшееся окно перенесите файл

Вы добавили в Postman коллекцию с запросами.
Этап 2. Получить авторизационный токен и ID потока
Для доступа к API и потоку данных ресурса вам необходимы:
- Авторизационный токен.
- Flow ID (идентификатор потока).
Чтобы их получить, обратитесь на почту analytics.support@mts.ru.
Вы получили токен, Flow ID и имя технического пользователя (для доступов) от команды МТС Аналитики.
Этап 3. Запросить данные
Все возможные запросы размещены в коллекции. Рекомендуем отправлять их последовательно. Перед отправкой каждого укажите актуальные для ва ших задач параметры — описаны ниже.
После POST-запроса установите параметр request_id в окружение, чтобы он автоматически добавлялся в GET-запросы.
Шаг 1. Добавить токен
Полученный токен добавьте в поле Token — Save

Шаг 2. Создать задачу
-
Выберите тип задачи без указания модели атрибуции.
-
Заполните значения параметров, которые соответствуют задачам вашего продукта. В заголовок добавьте токен.
receiveFrom и receiveTo можно заменить на:
occurrenceFrom/occurrenceTooccurrenceDttmFrom/occurrenceDttmTo
Пример запроса:
curl --request POST \
--url https://gw.intp.mts-corp.ru/mtsa-data-api/2/v2/dataexporttasks \
--header 'Accept-Encoding: gzip' \
--header 'Content-Type: application/json' \
--header 'Authorization:Bearer {{TOKEN}}'
--data '{
"event": "HIT",
"filter": {
// "occurrenceFrom": "2023-04-01T00:00:00+03:00",
// "occurrenceTo": "2024-05-01T00:00:00+03:00"
"receiveFrom": "2024-04-01T00:00:00+03:00",
"receiveTo": "2024-05-01T00:00:00+03:00"
// "occurrenceDttmFrom": "2024-09-20T17:00:00",
// "occurrenceDttmTo": "2024-10-20T18:00:00"
},
"flowIds": [
"0ad8fafe-8030-818b-3cd000167",
"0ad8fafe-8030-818b-3cd000166"
]
}'
Описания параметров запроса:
| Параметр | Определение | Допустимое значение |
|---|---|---|
| URL | Ссылка на сервер для обращения | |
| flowIds | Идентификаторы потоков данных | |
| Event | Название события | HIT, SESSION |
| Model | Название модели атрибуции | LAST_CLICK, LAST_PAID_CLICK, POST_CLICK, POST_VIEW |
| Window | Окно атрибуции | 1 — 180 |
| receiveFrom | Начало временного периода, когда событие принято на стороне сервера | Заполняется как время сервера по стандарту ISO 8601 |
| receiveTo | Окончание временного периода, когда событие принято на стороне сервера | Заполняется как время сервера по стандарту ISO 8601 |
| occurrenceFrom | Начало временного периода, когда событие принято на стороне клиента | Заполняется как время клиента в стандартном виде |
| occurrenceTo | Окончание временного периода, когда событие принято на стороне клиента | Заполняется как время клиента в стандартном виде |
| occurrenceDttmFrom | Актуален только для задач без атрибуции. Начало временного периода, когда событие принято на стороне клиента, по местному времени | Заполняется как время клиента в стандартном виде без указания часового пояса |
| occurrenceDttmTo | Актуален только для задач без атрибуции. Окончание временного периода, когда событие принято на стороне клиента, по местному времени | Заполняется как время клиента в стандартном виде без указания часового пояса |
Ответ:
Структура задачи с заполненным task id (в скрипте — id). Он пригодится для отслеживания статуса выполнения задачи
{
"id": "0ad8fafe-8030-818b-3cd0001",
"event": "HIT",
"status": "CREATED",
"attribution": {
"model": "LAST_CLICK",
"window": 30
},
"filter": {
"occurrenceFrom": "2023-03-31T21:00:00Z",
"occurrenceTo": "2024-04-30T21:00:00Z",
"receiveFrom": null,
"receiveTo": null
},
"flowIds": [
"0ad8fafe-8030-818b-3cd000166",
"0ad8fafe-8030-818b-3cd000167"
],
"result": {
"partsCount": 1
}
}
Шаг 3. Запросить результат по задаче
Варианты запроса:
- Получить информацию о задаче и её статус по id (идентификатор получен в ответе на Шаге 2)
- Получить ответ по всем задачам без пагинации
- Получить ответ по всем задач ам с пагинацией. Список задач разбивается по страницам — это полезно, когда задач много
Пример ответа:
При успешном завершении задачи в поле status будет значение SUCCESS
{
"id": "0ad8fafe-8b39-1030-818b-3cd5660001",
"event": "HIT",
"status": "SUCCESS",
"attribution": {
"model": "LAST_CLICK",
"window": 1
},
"filter": {
"occurrenceFrom": null,
"occurrenceTo": null,
"receiveFrom": "2023-09-27T20:00:00Z",
"receiveTo": "2023-09-28T14:00:00Z"
},
"result": {
"partsCount": 1
}
}
PartsCount — количество файлов, которые были созданы по запросу.
Возможные статусы
| Статус | Описание |
|---|---|
| CREATED | Задание создано |
| IN_PROGRESS | Выполняется задание выборки данных |
| SUCCESS | Выборка выполнена, результат сохранен |
| FAILED | Произошла ошибка |
| RESULT_CLEANED_AS_TOO_OLD | Результат устарел |