API de Insights sobre Mensagens

Este documento explica como obter métricas de forma programática sobre mensagens que a sua empresa enviou ou recebeu. A API de Insights sobre Mensagens é uma extensão da API de Insights sobre a Página que permite obter as mesmas informações exibidas na aba "Insights da Página" no Facebook.

Antes de começar

Este guia considera que você leu a Overview for the Messenger Platform e implementou os componentes necessários para enviar e receber mensagens e notificações.

Para ver as métricas de uma Página do Facebook que pertence a você ou na qual você pode executar a tarefa ANALYZE, o app precisará dos seguintes itens:

  • A identificação da Página do Facebook cujas métricas você quer consultar
    • Para Mensagens do Instagram, essa deve ser a Página conectada à sua conta profissional do Instagram.
  • Um token de acesso à Página
  • Estas permissões:
    • pages_messaging
    • pages_read_engagement
    • pages_show_list
    • read_insights
  • Acesso padrão

Para ver as métricas de uma Página do Facebook que não é sua ou na qual você não pode executar a tarefa ANALYZE, o app precisará destes itens:

  • A identificação da Página do Facebook cujas métricas você quer consultar
    • Para Mensagens do Instagram, essa deve ser a Página conectada à sua conta profissional do Instagram.
  • Um token de acesso à Página solicitado por uma pessoa que possa executar a tarefa MANAGE na Página
  • As seguintes permissões pelo Login do Facebook:
    • pages_messaging
    • pages_read_engagement
    • pages_show_list
    • read_insights
  • Acesso avançado

Limitações

  • Para que uma conversa nova seja contabilizada, a pessoa precisa ter realizado uma ação, como enviar uma resposta à empresa. Antes disso, a conversa ficará visível apenas para a pessoa e não será contabilizada.

Consultar métricas de insights

Para ver informações sobre uma ou mais métricas, envie uma solicitação GET ao ponto de extremidade /PAGE-ID/insights com o parâmetro metric definido como a lista de métricas a serem consultadas separadas por vírgula.

Exemplo de solicitação

Texto formatado para facilitar a leitura.
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"

Se ela for bem-sucedida, o app receberá a seguinte resposta 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" 
        }, 
      ]
    } 
  ],
}

Exemplo de solicitação para intervalo

O exemplo a seguir recupera o número total de conversas novas e únicas em um período específico ao incluir o parâmetro period definido como total_over_range com o intervalo de tempo determinado por since e until na chamada de API.

Texto formatado para facilitar a leitura.
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"

Se ela for bem-sucedida, o app receberá a seguinte resposta JSON com o número de conversas novas e únicas e o término do intervalo:

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

Exemplo de solicitação de detalhamento

O exemplo a seguir recupera o número total de tokens de notificações recorrentes agrupados por tópico e frequência durante um período específico.

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"

Se ela for bem-sucedida, o app receberá a seguinte resposta JSON com tokens agrupados por tópico ("newproducts" e "10percentsale") e a frequência de mensagens disponível para cada tópico ("daily", "weekly" e "monthly" para "newproducts"; e "daily" e "weekly" para "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"
        },
      ]
    }
  ]
}

Parâmetros de insights

Parâmetro Descrição

breakdown

Dimensões em que a resposta é agrupada. Pode ser uma ou mais destas:

NomeDescrição

campaign_id

Veja os dados por identificação da campanha. Exemplos: "abc123"; "Summer messaging campaign"; e "Spring sale 2".

engagement_source

Veja os dados por tipo de engajamento com notificações recorrentes. Exemplos são o ID de CTA primária e secundária (do clique na CTA).

message_type

Veja os dados por tipo de mensagem enviada pela empresa. Exemplos são mensagens de marketing.

messaging_channel

Veja os dados por canal usado para veicular mensagens aos usuários. Exemplos são Messenger e Instagram.

recurring_notifications_entry_point

Veja os dados por ponto de entrada para notificações recorrentes. Exemplos são conversas, plugin de bate-papo, anúncios CTM, plugin de caixa de seleção, links m. eu ou ig. me e Página do Facebook.

recurring_notifications_frequency

Veja os dados por frequência permitida pela opção de notificações recorrentes. Exemplos são "Daily", "Weekly" e "Monthly".

recurring_notifications_topic

Veja os dados por tópicos de notificação recorrente. Exemplos são mensagens promocionais, lançamentos de produtos e ofertas.

date_preset

Intervalo de datas relativo que pode ser usado no lugar de since e until. Pode ser last_week, last_month, last_quarter, entre outros. Confira mais valores no guia sobre insights da Página.

metric

Obrigatório. Uma lista separada por vírgula das métricas a serem retornadas.

period

A agregação fornecida dentro do intervalo since/until ou date_preset. O total_over_range fornece um único valor para a métrica no intervalo de datas indicado. Pode ser day, week, month, days_28 ou total_over_range.

since

A data de início do intervalo cujos dados você quer consultar. Inclui dados a partir da meia-noite na data especificada. O formato deve ser YYYY-MM-DD. O valor 2022-01-31 forneceria os dados a partir de 31 de janeiro de 2022 à meia-noite.

until

A data de término do intervalo cujos dados você quer consultar. Exclui dados a partir da meia-noite na data especificada. O formato deve ser YYYY-MM-DD. O valor 2022-02-01 forneceria os dados até 31 de janeiro de 2022 às 23h59.

Métricas disponíveis

As seguintes métricas estão disponíveis na API de Insights sobre Mensagens:

Nome da metricDescrição

page_messages_blocked_conversations_unique

O número de conversas com a Página que foram bloqueadas.

page_messages_engagement

O número de vezes que os clientes interagiram ao tocar em um botão de chamada para ação nas mensagens de marketing enviadas pela Página.

Possíveis valores de breakdown:

  • campaign_id
  • engagement_source
  • message_type
  • messaging_channel
  • recurring_notifications_topic

Essa métrica está em desenvolvimento.

page_messages_new_conversations_unique

O número de conversas por mensagem no Messenger que foram iniciadas por pessoas que nunca tinham enviado mensagens para a sua empresa antes.

page_messages_order_count

O número de vezes que você criou um pedido em conversas por mensagem ou em apps ou sites de terceiros usados para gerenciar conversas por mensagem.


Essa métrica está em desenvolvimento.

page_messages_paid_order_earnings

A quantia aproximada de dinheiro que você ganhou com pedidos criados em conversas por mensagem ou em apps ou sites de terceiros usados para gerenciar conversas por mensagem. Os ganhos finais podem ser diferentes devido às conversões de moeda.


Essa métrica está em desenvolvimento.

page_messages_read_ratio

O número de mensagens de marketing lidas dividido pelo número de mensagens de marketing enviadas pela sua Página.

Algumas mensagens lidas podem não ser capturadas, como quando um cliente desativa as confirmações de leitura.

Possíveis valores de breakdown:

  • campaign_id
  • message_type
  • messaging_channel
  • recurring_notifications_topic

Essa métrica está em desenvolvimento.

page_messages_reported_conversations_unique

O número de conversas da sua Página que foram denunciadas por pessoas por motivos como spam ou por exibirem conteúdo inadequado.

page_messages_sent

O número de mensagens de marketing enviadas aos clientes pela Página da sua empresa.


Possíveis valores de breakdown:

  • campaign_id
  • messsage_type
  • messaging_channel
  • recurring_notifications_topic

Essa métrica está em desenvolvimento.

page_messages_total_messaging_connections

O número de pessoas para as quais a sua empresa pode enviar mensagens.


Essa métrica mostra o número de pessoas que já enviaram uma mensagem para a sua empresa no Messenger. Ela não inclui as pessoas que bloquearam ou denunciaram a empresa na plataforma. Pode haver algumas restrições à sua capacidade de enviar mensagens a conexões, como a limitação de quantas mensagens podem ser enviadas durante determinados períodos. Essa métrica inclui apenas as conexões feitas a partir de outubro de 2016, quando os dados foram disponibilizados.

page_messages_with_business_outcomes

O número de conexões por mensagem com pelo menos um pedido criado.


Essa métrica está em desenvolvimento.

recurring_notifications_tokens

O número de vezes que uma conta assinou para receber mensagens de marketing da sua empresa. Se uma conta tiver assinado vários tópicos, ela será contabilizada novamente para cada um deles.


Como é calculado: a métrica contabiliza o número de vezes que as contas concordaram em receber mensagens recorrentes menos o número de vezes que elas cancelaram a assinatura.


Possíveis valores de breakdown:

  • messaging_channel
  • recurring_notifications_frequency
  • recurring_notifications_topic

Essa métrica está em desenvolvimento.

Saiba mais sobre as métricas em desenvolvimento.

Propriedades de resposta

As informações a seguir podem ser retornadas em uma chamada da API de Insights.

Propriedade Descrição

data

matriz de objetos

Uma lista de objetos de métricas.

name
string

O nome da métrica.

period
string

O período cujos dados foram relatados.

values
matriz de objetos

Uma lista de dados sobre uma métrica.

value
número inteiro

A contagem da métrica solicitada no intervalo de datas especificado.

end_time
registro de data e hora do UNIX

Registro de data e hora UTC do término da métrica.