Перейти к содержимому

Получение аналитики

Аналитика работает с отслеживаемыми аккаунтами: профилями Instagram, TikTok и Facebook, которые вы добавляете в кабинете в разделе Аналитика → Аккаунты или через POST /accounts. Каждый аккаунт либо ваш (own), либо конкурента (competitor).

Окно терминала
curl "https://api.warmup.social/analytics/filters?role=own" \
-H "Authorization: Bearer $WARMUP_TOKEN"
{
"accounts": [
{ "id": "3b0e…", "platform": "instagram", "username": "acme", "displayName": "Acme", "avatarUrl": "…" }
],
"groups": ["Основной бренд", "Регионы"]
}

Передавайте id в accountId, а названия коллекций — в group.

Параметр По умолчанию Описание
role own own или competitor.
from 30 дней до to Начало периода, YYYY-MM-DD, включительно.
to сегодня в tz Конец периода, YYYY-MM-DD, включительно.
tz UTC IANA-таймзона для границ суток и часов публикаций.
platform все instagram, tiktok, facebook. Через запятую или повтором параметра.
group все Названия коллекций.
accountId все Id аккаунтов.

Неверные значения не приводят к ошибке, а заменяются значениями по умолчанию: неизвестная таймзона становится UTC, перепутанные даты меняются местами, а период длиннее 365 дней обрезается с начала. Какой период в итоге использован, видно в поле period ответа.

Окно терминала
curl "https://api.warmup.social/analytics/overview?from=2026-09-01&to=2026-09-30&tz=Europe/Moscow&platform=instagram,tiktok" \
-H "Authorization: Bearer $WARMUP_TOKEN"
Эндпоинт Что возвращает
GET /analytics/overview KPI с изменением, ряд по дням, свежесть данных.
GET /analytics/platforms Итоги по каждой соцсети.
GET /analytics/top-posts Лучшие посты; sort = views · er · likes · comments · shares, limit 1–50.
GET /analytics/content Типы контента, эффективность по дню недели и часу, топ-20 хэштегов.
GET /analytics/duration Просмотры по длительности видео и оптимальная длительность.
GET /analytics/activity Посты по дням за последние days (7–365, по умолчанию 180); from/to не используются.
  • Метрики периода — текущие суммы по постам, опубликованным в [from, to]. Просмотры, которые старый пост набрал в этом месяце, в этот месяц не попадают.
  • Изменение считается к прошлому периоду той же длины. Чтобы не обижать молодые посты, прошлый период берётся в том же возрасте постов (comparison.mode: "age_matched"). Если comparison.coverage ниже 0,8, считайте изменение приблизительным.
  • change — в процентах; для ER (er) — в процентных пунктах (changeUnit: "pp"). change равен null, если сравнивать не с чем.
  • available: false значит, что у выбранных соцсетей такой метрики нет (например, сохранения в Instagram).
  • Подписчики — сумма последних известных значений на конец каждого дня. Facebook округляет число подписчиков, поэтому, если он в выборке, followersApproximate равен true.
  • Свежесть: freshness.stalePosts — сколько постов с метриками старше 48 часов.

0-15, 15-30, 30-45, 45-60, 60-90, 90-180, 180+ секунд. Оптимальная корзина — та, где лучшие средние просмотры среди корзин хотя бы с 3 постами.