Skip to content

Работа со статистикой

🆕 Новый эндпоинт (рекомендуется)

POST /api/v1/stats/page

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

http
https://client.adstat.pro/api/v1/stats/page

Параметры запроса:

Заголовки HTTP:

В заголовках HTTP запроса необходимо передать <access_token> в формате:

  • Authorization: "Bearer <access_token>"

Тело запроса:

В теле HTTP запроса передаются параметры для получения статистики.

ПараметрТипОписаниеОбязательный
period_fromstringНачальная дата периода для получения статистики (ISO 8601)Да
period_tostringКонечная дата периода для получения статистики (ISO 8601)Да
period_grouping_unitstringЕдиница группировки по времени. Возможные значения: "day", "week", "month", "year", "hour", "30_minutes", "5_minutes"Да
groupingstring[]Группировка данных по сущностям. Возможные значения: "cabinet", "ad_object", "ad", "campaign"Нет
platform_cabinet_idsstring[]Фильтр по ID кабинетов платформыНет
ad_objectsstring[]Фильтр по объектам рекламированияНет
currency_codestringВалюта для отображения финансовых показателей. По умолчанию: EUR. Доступные значения: EUR, TON, USD, RUB, USDT, STARНет
order_bystringПараметр сортировки результатов. "period" - по возрастанию даты, "-period" - по убыванию датыНет
limitnumberМаксимальное количество записей в ответе (максимум: 500)Нет
cursorstringТокен пагинации для получения следующей страницы результатовНет

Ограничения для детальной группировки по времени

При использовании значений period_grouping_unit: "hour", "30_minutes", "5_minutes" действуют следующие ограничения:

  • Доступность данных: доступны данные только за последние 5 дней
  • Максимальный период запроса: период между period_from и period_to не может превышать 2 дня

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

http
POST https://client.adstat.pro/api/v1/stats/page
Authorization: Bearer <access_token>
Content-Type: application/json

{
  "period_from": "2024-06-07T00:00:00.000Z",
  "period_to": "2024-06-07T23:59:59.000Z",
  "period_grouping_unit": "day",
  "grouping": ["cabinet", "ad"],
  "currency_code": "EUR",
  "limit": 100
}

Пример успешного ответа:

Раскрыть для просмотра ответа
json
{
	"columns": [
		{
			"key": "period_date",
			"type": "datetime"
		},
		{
			"key": "original_spent",
			"type": "money"
		},
		{
			"key": "original_currency",
			"type": "string"
		},
		{
			"key": "exchanged_spent",
			"type": "money"
		},
		{
			"key": "exchange_currency",
			"type": "string"
		},
		{
			"key": "views",
			"type": "number"
		},
		{
			"key": "clicks",
			"type": "number"
		},
		{
			"key": "actions",
			"type": "number"
		},
		{
			"key": "video_opens",
			"type": "number"
		},
		{
			"key": "ctr",
			"type": "number"
		},
		{
			"key": "cpc",
			"type": "number"
		},
		{
			"key": "cpm",
			"type": "number"
		},
		{
			"key": "cpa",
			"type": "number"
		},
		{
			"key": "cvr",
			"type": "number"
		},
		{
			"key": "campaign_id",
			"type": "number"
		},
		{
			"key": "platform_id",
			"type": "number"
		},
		{
			"key": "ad_object",
			"type": "string"
		},
		{
			"key": "ad_id",
			"type": "number"
		},
		{
			"key": "platform_ad_id",
			"type": "number"
		},
		{
			"key": "platform_cabinet_id",
			"type": "string"
		},
		{
			"key": "ad_title",
			"type": "string"
		},
		{
			"key": "ad_text",
			"type": "string"
		},
		{
			"key": "ad_status",
			"type": "string"
		},
		{
			"key": "ad_cpm",
			"type": "money"
		},
		{
			"key": "ad_budget",
			"type": "money"
		},
		{
			"key": "promote_url",
			"type": "string"
		},
		{
			"key": "target_type",
			"type": "string"
		},
		{
			"key": "website_name",
			"type": "string"
		},
		{
			"key": "media_type",
			"type": "string"
		},
		{
			"key": "views_limit_per_user",
			"type": "number"
		},
		{
			"key": "website_button_type",
			"type": "string"
		},
		{
			"key": "action_type",
			"type": "string"
		},
		{
			"key": "exclude_crypto",
			"type": "boolean"
		},
		{
			"key": "only_crypto",
			"type": "boolean"
		},
		{
			"key": "target_langs",
			"type": "array"
		},
		{
			"key": "additional_information",
			"type": "string"
		},
		{
			"key": "target_countries",
			"type": "array"
		},
		{
			"key": "target_locations",
			"type": "array"
		},
		{
			"key": "target_channels",
			"type": "array"
		},
		{
			"key": "target_user_channels",
			"type": "array"
		},
		{
			"key": "target_topics",
			"type": "array"
		},
		{
			"key": "target_search",
			"type": "array"
		},
		{
			"key": "target_bots",
			"type": "array"
		},
		{
			"key": "platform_cabinet_name",
			"type": "string"
		},
		{
			"key": "campaign_name",
			"type": "string"
		}
	],
	"rows": [
		{
			"period_date": "2025-11-27T14:45:00Z",
			"original_spent": "0.054000",
			"original_currency": "EUR",
			"exchanged_spent": "0.054000",
			"exchange_currency": "EUR",
			"views": 157,
			"clicks": 12,
			"actions": 3,
			"video_opens": 0,
			"ctr": "0.0",
			"cpc": "0E-10",
			"cpm": "3.0000000000",
			"cpa": "0E-10",
			"cvr": "0.0",
			"campaign_id": 10101,
			"platform_id": 10,
			"ad_object": "t.me/cute_cats_bot?start=cats123",
			"ad_id": 5669137,
			"platform_ad_id": 891,
			"platform_cabinet_id": "ACC00101",
			"ad_status": "active",
			"ad_cpm": "3.0000000000",
			"ad_budget": "4.0400000000",
			"ad_title": "🐱 Милые котики каждый день!",
			"ad_text": "😻 Получайте фото самых милых котиков прямо в Telegram!",
			"promote_url": "t.me/aboutstoloto/8702",
			"website_name": "",
			"views_limit_per_user": 3,
			"website_button_type": "",
			"action_type": "join",
			"exclude_crypto": false,
			"only_crypto": false,
			"additional_information": "erid: 1A1aa5sdAS2",
			"media_type": "",
			"platform_cabinet_name": "Cats_Lovers_Studio",
			"campaign_name": "Default",
			"target_type": "target_users",
			"target_langs": [],
			"target_countries": [],
			"target_locations": [],
			"target_channels": [],
			"target_user_channels": [],
			"target_topics": ["Pets & Animals", "Lifestyle", "Entertainment"],
			"target_search": [],
			"target_bots": []
		}
	],
	"count": 50,
	"cursor": "eyJmaadasdw12312F9mcm9tIjoiMjAyNS0wNC0zMFQyMzowMDowMFoiLCJwZXJpb2RfdG8iOiIyMDI1LTA4LTMxVDIyOjU5OjU5WiIsInBsYXRmb3JtX2NhYmluZXRfaWRzIjpbXSwiYWRfb2JqZWN0cyI6W10sInBhcnRuZXJfaWRzIjpbMTA5NTZdLCJjdXJyVyIjpbInBlcmlvZCJdLCJtYXJrIjp7InBlcmlvZF9ncm91cGluZ191bml0IjoibW9udGgiLCJncm91cGluZyI6WyJhZCJdLCJsaW1pdCI6NTAsInBvaW50ZXIiOnsicGVyaW9kX2RhdGUiOiIyMDI1LTA3LTAxVDAwOjAwOjAwIiwicGxhdGZvcm1fY2FiaW5ldF9pZCI6IkFDQzAxNjA5IiwiYWRfb2JqZWN0IjoidC5tZS9vc3RyZWUiLCJhZF9pZCI6NDE3ODExMCwiY2FtcGFpZ25faWQiOjE3Nn19fQ=="
}

Структура ответа:

ПолеТипОписание
columnsobject[]Метаданные колонок таблицы (см. структуру ниже)
rowsobject[]Массив строк с данными статистики (см. поля ниже)
countnumberОбщее количество записей в результате
cursorstring | nullТокен пагинации для получения следующей страницы (base64 JSON или null для последней страницы)

Структура колонок (columns):

ПолеТипОписание
keystringИдентификатор поля в данных
typestringТип данных поля: "string", "number", "money", "date", "datetime", "boolean", "array"

Поля данных в строках (rows):

В таблице ниже перечислены все возможные поля, которые могут присутствовать в строках результата в зависимости от параметров запроса:

ПолеТипОписаниеНазвание на фронте
period_datestringДата периода (ISO 8601)День/Неделя/Месяц/Год/Период
original_spentstringПотраченная сумма в оригинальной валюте-
original_currencystringОригинальная валюта-
exchanged_spentstringПотраченная сумма в валюте отчетаРасходы
exchange_currencystringВалюта отчета-
viewsnumberКоличество показовПоказы
clicksnumberКоличество кликовКлики
actionsnumberКоличество действийДействия
video_opensnumberКоличество открытий видеоОткрытия видео
ctrstringКоэффициент кликабельности (в процентах)CTR,% (Коэффициент кликабельности: (Клики/Показы)*100)
cpcstringСтоимость за кликCPC (Цена клика: Расходы/Клики)
cpmstringСтоимость за 1000 показов (фактическая)CPM (Стоимость за 1000 показов)
cpastringСтоимость за действиеCPA (Цена цели: Расход/Действия)
cvrstringКоэффициент конверсии (в процентах)CVR,% (Коэффициент конверсии: (Действия/Клики)*100)
campaign_idnumberID кампании-
platform_idnumberID платформы-
ad_objectstringОбъект рекламированияОбъект
ad_idnumberID объявления-
platform_ad_idnumberID объявления на платформе-
platform_cabinet_idstringID кабинета на платформе-
ad_statusstringСтатус объявления-
ad_cpmstringСтоимость за 1000 показов (указанная в объявлении)-
ad_budgetstringБюджет объявления-
ad_titlestring | nullНазвание объявленияНаименование объявления
ad_textstring | nullТекст объявленияТекст креатива
promote_urlstring | nullURL рекламируемого объектаURL
website_namestring | nullНазвание веб-сайтаНазвание сайта
website_button_typestring | nullТип кнопки веб-сайтаТекст кнопки
views_limit_per_usernumberЛимит показов на пользователяЧастота показов
action_typestring | nullТип действияТип действия
exclude_cryptobooleanИсключить криптовалютные объявления-
only_cryptobooleanТолько криптовалютные объявления-
additional_informationstring | nullДополнительная информация (erid токен)-
media_typestring | nullТип медиаТип медиа
platform_cabinet_namestring | nullНазвание кабинета на платформеКабинет
campaign_namestring | nullНазвание кампанииНазвание кампании
target_typestring | nullТип таргетингаТип таргетинга
target_langsstring[]Целевые языки-
target_countriesstring[] | nullЦелевые страны-
target_locationsstring[] | nullЦелевые локации-
target_channelsstring[] | nullЦелевые каналы-
target_user_channelsstring[]Целевые каналы пользователей-
target_topicsstring[] | nullЦелевые тематикиИнтересы
target_searchstring[] | nullЦелевые поисковые запросы-
target_botsstring[] | nullЦелевые боты-

Доступность полей в зависимости от группировки:

В таблице ниже указано, какие поля возвращаются в ответе API в зависимости от значения параметра grouping:

Поле APIБез разбивкиПо кабинетам (["cabinet"])По кампаниям (["campaign"])По объектам (["ad_object"])По объявлениям (["ad"])
period_date
platform_cabinet_name
campaign_name
ad_object
ad_title
ad_text
promote_url
website_name
media_type
target_type
target_topics
views_limit_per_user
website_button_type
action_type
original_spent
original_currency
exchanged_spent
exchange_currency
views
clicks
video_opens
actions
ctr
cvr
cpm
cpc
cpa
platform_id
platform_cabinet_id
campaign_id
ad_id
platform_ad_id
ad_status
ad_cpm
ad_budget
exclude_crypto
only_crypto
additional_information
target_langs
target_countries
target_locations
target_channels
target_user_channels
target_search
target_bots

Примечания:

  • Поле period_date всегда присутствует в ответе независимо от группировки
  • При использовании комбинаций группировок (например, ["cabinet", "campaign"]) поля объединяются: если поле доступно хотя бы в одной из указанных группировок, оно будет присутствовать в ответе

Пагинация:

Для получения следующей страницы результатов используйте параметр cursor из ответа. Если cursor равен null, это означает, что достигнута последняя страница.

Пример запроса для следующей страницы:

http
POST https://client.adstat.pro/api/v1/stats/page
Authorization: Bearer <access_token>
Content-Type: application/json

{
  "cursor": "eyJwZXJpb2QiOiIyMDI0LTA2LTA3In0="
}

:::


⚠️ Устаревший эндпоинт

Внимание!

Данный эндпоинт устарел и будет отключен 31.01.2026. Рекомендуется использовать /api/v1/stats/page.

POST report/tgview

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

http
https://client.adstat.pro/api/report/tgview

Параметры:

Заголовки HTTP:

В заголовках HTTP запроса необходимо передать <access_token> в формате:

  • Authorization: "Bearer <access_token>"

Тело запроса:

В теле HTTP запроса необходимо передать параметры получения статистики.

Описание параметров, передаваемых в тело запроса:

ПолеТипОписание
dateОбъектИнтервал дат, определяющий временной период запроса.
date.date_fromСтрокаНачальная дата и время в формате ISO 8601 (например, "2024-06-07T00:00:00.000Z").
date.date_toСтрокаКонечная дата и время в формате ISO 8601 (например, "2024-06-07T23:59:59.000Z").
platformМассив чиселСтатичное значение равное всегда [10].
partnerМассив чиселСтатичное значение равное всегда [2].
campaignМассивСписок идентификаторов кампаний. Может быть пустым массивом, если нужно получить данные по всем кампаний.
group_timeЧислоПараметр группировки по времени. Значения:
День- 1,
Месяц - 2,
Неделя - 3,
Год - 4.
groupingsМассив объектовСписок объектов группировки данных. Каждый объект определяет параметр группировки.
groupings.nameСтрокаИмя параметра для группировки (например, "date", "object" итд ).
groupings.typeЧислоТип группировки для параметра. Используется только для некоторых группировок (например, 1).
objectМассивСписок идентификаторов объектов рекламирования для плучения статистики по выбранным объектам. ["t.me/someobject", "..."]. Если нужно получить по всем объектам, то значение - [].
Список объектов рекламирования можно получить в Список объектов рекламирования
sub_clientМассивВнутренний параметр для технических нужд.
type_cabnullТип кабинета. Статичное значение - всегда null.
currencyСтрокаВалюта, в которой будут представлены данные. Статичное значение - всегда RUB
account_uidsМассивСписок идентификаторов кабинетов, предназначенный для фильтрации статистики по отдельным кабинетам.Может быть пустым массивом [], если нужно получить данные по всем кабинетам. Если по отдельным кабинетам - ["ACC0000", "..."].
Список содержащий account_uids кабинетов можно получить в Список кабинетов

Подробное описание параметров:

Параметр groupings:

Пример 1: Статистика, сгруппированная только по дате:

json
{
	"others_params": "others params",
	"groupings": [{ "name": "date", "type": "<group_time>" }],
	"..": "others params"
}

Пример 2: Статистика, сгруппированная по нескольким параметрам:

  • По объекту рекламирования: {"name": "object"}
  • По объявлению: {"name": "campaign"}
  • По кабинету: {"name": "account", "type": 1}
json
{
	"others_params": "others params",
	"groupings": [
		{ "name": "object" },
		{ "name": "campaign" },
		{ "name": "account", "type": 1 },
		{ "name": "date", "type": "<group_time>" }
	],
	"..": "others params"
}

Полный пример тела запроса:

json
{
	"date": {
		"date_from": "2024-06-07T00:00:00.000Z",
		"date_to": "2024-06-07T23:59:59.000Z"
	},
	"platform": [10],
	"partner": [2],
	"campaign": [],
	"group_time": 1,
	"groupings": [
		{
			"name": "date",
			"type": 1
		},
		{
			"name": "partner"
		},
		{
			"name": "platform"
		},
		{
			"name": "sub_client"
		}
	],
	"object": [],
	"sub_client": [],
	"type_cab": null,
	"currency": "RUB",
	"account_uids": []
}

Пример успешного ответа:

json
{
	"results": [
		{
			"account_name": "SOME_Test",
			"account_uid": "ACC0000000",
			"action_type": "join",
			"ad_id": 999999999,
			"ad_text": "example ad_text",
			"ad_type": "target_channels",
			"button_type": null,
			"campaign_plat": "example campaign plat",
			"clicks": 0,
			"cpc": 0.0,
			"cpm": 1.33,
			"ctr": 0.0,
			"cvr": 0.0,
			"date": "2024-06-09",
			"goals": 0.0,
			"impressions": 1.0,
			"object": "t.me/example",
			"opened": null,
			"price_target": 0.0,
			"promote_url": "t.me/example",
			"spent": 0.004,
			"target_bots": [],
			"target_channels": [],
			"target_countries": [],
			"target_langs": ["Russian"],
			"target_search": ["Russian"],
			"target_topics": ["Offers & Promotions"],
			"target_user_channels": [],
			"target_user_locations": [],
			"unit": 1016091001563,
			"website_name": null
		}
	]
}

Структура ответа:

Поля объекта результата:

ПолеТипОписание
account_nameСтрокаНазвание аккаунта.
account_uidСтрокаУникальный идентификатор аккаунта.
action_typeСтрока или nullТип целевого действия.
ad_idЧислоУникальный идентификатор объявления.
ad_textСтрокаТекст креатива.
ad_typeСтрокаТип объявления
(например, target_channels, target_users, target_search, target_bots).
button_typeСтрока или nullТекст кнопки.
campaign_platСтрокаНаименование объявления.
clicksЧислоКлики.
cpcЧислоСтоимость за клик (CPC).
cpmЧислоСтоимость тысячи показов (CPM).
ctrЧислоКоэффициент кликабельности (CTR).
cvrЧислоКоэффициент конверсии (CVR).
dateСтрокаДата в формате "YYYY-MM-DD".
goalsЧислоЦели.
impressionsЧислоКоличество показов объявления.
objectСтрокаОбъект рекламирования.
openedЧисло или nullОткрытий видео.
price_targetЧислоЦена за цель.
promote_urlСтрокаКонечный URL рекламируего объекта.
spentЧислоРасходы.
target_botsМассив строкСписок ботов, на которые таргетируется объявление.
target_channelsМассив строкСписок каналов, на которые таргетируется объявление.
target_countriesМассив строкСписок стран, на которые таргетируется объявление.
target_langsМассив строкСписок языков, на которые таргетируется объявление.
target_searchМассив строкСписок поисковых запросов, на которые таргетируется объявление.
target_topicsМассив строкСписок топиков, на которые таргетируется объявление.
target_user_channelsМассив строкСписок каналов, на которые таргетируется объявление.
target_user_locationsМассив строкСписок местоположений, на которые таргетируется объявление.
unitЧислоВнутренний параметр для технических нужд.
website_nameСтрокаНазвание вебсайта.

Список объектов рекламирования

INFO

GET report/objects

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

http
https://client.adstat.pro/api/report/objects

Параметры запроса:

Заголовки HTTP:

В заголовках HTTP запроса необходимо передать <access_token> в формате:

  • Authorization: "Bearer <access_token>"

Пример успешного ответа:

json
["t.me/object", "https://example.ru"]