API Messaging Insights

В этом документе описано, как с помощью программных средств получать метрики сообщений, которые отправила и получила ваша компания. API Messaging Insights — это расширение компонента API Pages Insights, которое позволяет получать информацию, доступную на вкладке "Статистика Страницы" вашей Страницы Facebook.

Прежде чем начать

Это руководство подразумевает, что вы ознакомились с обзором платформы Messenger и реализовали необходимые компоненты для отправки и получения сообщений и уведомлений.

Чтобы посмотреть метрики для Страницы Facebook, которая принадлежит вам или на которой вы можете выполнять задачу ANALYZE, вашему приложению потребуются:

  • ID Страницы Facebook, метрики которой вы хотите просмотреть
    • если вы отправляете сообщения в Instagram, укажите ID Страницы Facebook, связанной с профессиональным аккаунтом Instagram;
  • маркер доступа к Странице;
  • следующие разрешения:
    • pages_messaging;
    • pages_read_engagement;
    • pages_show_list;
    • read_insights;
  • стандартный доступ.

Чтобы посмотреть метрики для Страницы Facebook, которая вам не принадлежит или на которой вы не можете выполнять задачу ANALYZE, вашему приложению потребуются:

  • ID Страницы Facebook, метрики которой вы хотите просмотреть
    • если вы отправляете сообщения в Instagram, укажите ID Страницы Facebook, связанной с профессиональным аккаунтом Instagram;
  • маркер доступа к Странице, запрошенный пользователем, который может выполнять задачу ANALYZE на этой Странице;
  • следующие разрешения при использовании входа через Facebook:
    • pages_messaging;
    • pages_read_engagement;
    • pages_show_list;
    • read_insights;
  • расширенный доступ.

Ограничения

  • Чтобы новая переписка была учтена, человек должен выполнить действие, например, ответить на сообщение вашей компании. До этого момента переписка будет видна только этому человеку и не будет учитываться.

Чтение метрик статистики

Чтобы просмотреть информацию об одной или нескольких метриках, отправьте в конечную точку /PAGE-ID/insights запрос GET, указав для параметра metric список нужных метрик через запятую.

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

Для удобства чтения применено форматирование.
curl -X GET "https://graph.facebook.com/LATEST-API-VERSION/PAGE-ID/insights
    ?metric=page_messages_new_conversations_unique,page_messages_blocked_conversations_unique 
    &access_token=PAGE-ACCESS-TOKEN"

В случае успеха приложение получит следующий ответ в формате JSON:

{ 
  "data": [ 
    { 
      "name": "page_messages_new_conversations_unique", 
      "period": "day", 
      "values": [ 
        { 
          "value": "42", 
          "end_time": "1665175977" 
        }, 
      ]
    },
    { 
      "name": "page_messages_blocked_conversations_unique", 
      "period": "day", 
      "values": [ 
        { 
          "value": "0", 
          "end_time": "1665175977" 
        }, 
      ]
    } 
  ],
}

Пример запроса общего количества переписок за диапазон времени

Этот запрос позволяет узнать общее количество новых уникальных переписок за определенный период времени. В этот вызов API нужно добавить параметр period, задать для него значение total_over_range, а также ограничить диапазон времени параметрами since и until согласно примеру ниже.

Для удобства чтения применено форматирование.
curl -i -X GET "https://graph.facebook.com/LATEST-API-VERSION/PAGE-ID/insights/
    ?metric=page_messages_new_conversations_unique
    &since=UNIX-TIMESTAMP-START
    &until=UNIX-TIMESTAMP-STOP
    &period=total_over_range
    &access_token=PAGE-ACCESS-TOKEN"

Если операция будет успешной, ваше приложение получит такой ответ в формате JSON с количеством новых уникальных переписок и указанием конца диапазона времени (см. пример ниже):

{
  "data": [
    {
      "name": "page_messages_new_conversations_unique",
      "period": "total_over_range",
      "values": [
        {
          "value": 27
          "end_time": "1665175977"
        }
      ],
    }
  ]
}

Пример запроса разбивки

Этот запрос позволяет узнать общее количество маркеров регулярных уведомлений за определенный период времени, а также сгруппировать их по теме и частоте, как в примере ниже.

curl -i -X GET "https://graph.facebook.com/LATEST-API-VERSION/PAGE-ID/insights/
    ?metric=recurring_notifications_tokens   
    &since=UNIX-TIMESTAMP-START
    &until=UNIX-TIMESTAMP-STOP
    &period=total_over_range
    &breakdown=recurring_notifications_topic,recurring_notifications_frequency 
    &access_token=PAGE-ACCESS-TOKEN"

Если операция будет успешной, ваше приложение получит ответ в формате JSON, в котором маркеры будут сгруппированы по темам (newproducts и 10percentsale) и доступной для них частоте отправки уведомлений (daily, weekly и monthly — для темы newproducts; daily и weekly — для темы 10percentsale).

{
  "data": [
    {
      "name": "recurring_notifications_tokens",
      "period": "total_over_range",
      "values": [ 
        {
          "value": 3,
          "end_time": "1665175977",
          "recurring_notifications_topic": "newproducts",
          "recurring_notifications_frequency": "daily"
        },
        {
          "value": 15,
          "end_time": "1665175977",
          "recurring_notifications_topic": "newproducts",
          "recurring_notifications_frequency": "weekly"
        },
        {
          "value": 8,
          "end_time": "1665175977",
          "recurring_notifications_topic": "newproducts",
          "recurring_notifications_frequency": "monthly"
        },
        {
          "value": 17,
          "end_time": "1665175977",
          "recurring_notifications_topic": "10percentsale",
          "recurring_notifications_frequency": "daily"
        },
        {
          "value": 14,
          "end_time": "1665175977",
          "recurring_notifications_topic": "10percentsale",
          "recurring_notifications_frequency": "weekly"
        },
      ]
    }
  ]
}

Параметры статистики

Параметр Описание

breakdown

Параметры, по которым группируются ответы. Возможные значения:

ИмяОписание

campaign_id

Отображение данных по номеру ID кампании. Примеры: "abc123", "Summer messaging campaign" и "Spring sale 2"

engagement_source

Отображение данных по типу взаимодействия с регулярными уведомлениями. Примеры: основной и второстепенный ID призыва к действию (какой призыв к действию был нажат)

message_type

Отображение данных по типу сообщения, отправленного вашей компанией. Пример: маркетинговые сообщения

messaging_channel

Отображение данных по каналу, используемому для доставки сообщений пользователям. Примеры: Messenger и Instagram

recurring_notifications_entry_point

Отображение данных по точке входа в регулярные уведомления. Примеры: переписка, плагин чата, реклама с переходом в Messenger, плагин с галочкой, ссылки m.me или ig.me и Страница Facebook

recurring_notifications_frequency

Отображение данных по частоте, которая разрешена при регистрации регулярных уведомлений. Примеры: ежедневно, еженедельно и ежемесячно

recurring_notifications_topic

Отображение данных по теме регулярных уведомлений. Примеры: рекламные сообщения, запуски товаров и акции

date_preset

Относительный диапазон дат, который можно применить вместо параметров since и until. Варианты: last_week, last_month, last_quarter и т. д. Полный список метрик

metric

Обязательный параметр. Список запрашиваемых метрик через запятую

period

Агрегация, предоставленная в диапазоне since/until или date_preset. Объект total_over_range предоставляет для метрики одно значение за определенный диапазон дат. Варианты: day, week, month, days_28 или total_over_range.

since

Начало диапазона дат, за который вы хотите просмотреть данные. Включает в себя данные для установленной даты, начиная с 00:00. Значение формата времени — YYYY-MM-DD. Например, значение 2022-01-31 выдаст данные от 31 января 2022 года 00:00.

until

Конец диапазона дат, за который вы хотите просмотреть данные. Не включает в себя данные для установленной даты, начиная с 00:00. Формат значения: YYYY-MM-DD. Например, значение 2022-02-01 выдаст данные до 31 января 2022 года 23:59.

Доступные метрики

Ниже перечислены метрики, доступные в API Messaging Insights.

Название метрики (metric)Описание

page_messages_blocked_conversations_unique

Количество переписок со Страницей, которые были заблокированы.

page_messages_engagement

Количество раз, когда клиенты взаимодействовали с маркетинговыми сообщениями, отправленными Страницей вашей компании, путем нажатия кнопки призыва к действию.

Возможные значения разбивки (breakdown):

  • campaign_id
  • engagement_source
  • message_type
  • messaging_channel
  • recurring_notifications_topic

Эта метрика находится в разработке.

page_messages_new_conversations_unique

Количество переписок в приложении Messenger, начатых с людьми, которые ранее никогда не переписывались с вашей компанией.

page_messages_order_count

Сколько раз вы создавали заказ в переписках в приложениях Meta или в сторонних приложениях либо на сайтах, используемых для управления такими переписками.


Эта метрика находится в разработке.

page_messages_paid_order_earnings

Приблизительная сумма, которую вы заработали на заказах, оформленных в переписках в приложениях Meta или в сторонних приложениях либо на сайтах, используемых для управления такими переписками. После конвертации валют окончательные показатели дохода могут отличаться.


Эта метрика находится в разработке.

page_messages_read_ratio

Отношение количества прочитанных маркетинговых сообщений к количеству маркетинговых сообщений, которые отправила ваша Страница.

Некоторые прочтения сообщений могут не засчитываться, например если клиент отключил отчеты о прочтении.

Возможные значения разбивки (breakdown):

  • campaign_id;
  • message_type;
  • messaging_channel;
  • recurring_notifications_topic.

Эта метрика находится в разработке.

page_messages_reported_conversations_unique

Количество переписок с вашей Страницей, на которые пожаловались, например за спам или наличие неуместного контента.

page_messages_sent

Количество маркетинговых сообщений, которые отправила клиентам Страница вашей компании.


Возможные значения разбивки (breakdown):

  • campaign_id;
  • messsage_type;
  • messaging_channel;
  • recurring_notifications_topic.

Эта метрика находится в разработке.

page_messages_total_messaging_connections

Количество людей, которым ваша компания может отправлять сообщения.


Эта метрика показывает количество людей, которые когда-либо отправляли сообщение вашей компании в Messenger. Пользователи, которые заблокировали вашу компанию в Messenger или пожаловались на нее, не учитываются. Ваша возможность отправлять сообщения контактам может быть ограничена, например по количеству сообщений, которые вы можете отправлять за определенные временные промежутки. Эта метрика также учитывает контакты, установленные с октября 2016 года (когда стали доступны данные).

page_messages_with_business_outcomes

Количество контактов по переписке, для которых оформлен хотя бы один заказ.


Эта метрика находится в разработке.

recurring_notifications_tokens

Сколько раз аккаунт подписался на рассылку маркетинговых сообщений от вашей компании. Если аккаунт подпишется на несколько тем, каждая такая подписка будет учитываться дополнительно.


Эта метрика показывает, сколько раз аккаунты соглашались регулярно получать сообщения без учета количества отписок.


Возможные значения разбивки (breakdown):

  • messaging_channel
  • recurring_notifications_frequency
  • recurring_notifications_topic

Эта метрика находится в разработке.

Подробнее о метриках, которые находятся в разработке

Свойства ответа

Ниже приведена информация, которая может вернуться в вызове API Insights.

Свойство Описание

data

Массив объектов

Список объектов метрики

name
Строка

Название метрики

period
строка

Период времени, за который были представлены данные

values
массив объектов

Список данных метрики.

value
целое число

Значение запрашиваемой метрики за указанный диапазон дат

end_time
метка времени в формате Unix

Метка времени конца диапазона по стандарту UTC для метрики