É possível ler leads com Webhooks ou leitura em lote.
Para ler campos de anúncios específicos, como ad_id
e campaign_id
, você precisará do seguinte:
pages_manage_metadata
(caso você use webhooks) Para ler todos os dados de lead e de nível de anúncio, você precisará do seguinte:
Observação: caso o administrador da Página nunca tenha personalizado leads nem concedido permissão de acesso com o Gerenciador de Acesso a Leads, TODOS os administradores da Página terão permissão de acesso a leads. Um administrador básico da Página pode ter acesso ou não à permissão de acesso a leads. Isso depende dos administradores da empresa, que podem personalizar essa permissão.
O limite de volume é 200 x 24 multiplicado pelo número de leads criados nos últimos 90 dias para uma Página do Facebook. Caso você ultrapasse esse limite de chamadas em um período de 24 horas, sua solicitação retornará um erro.
Envie uma solicitação GET
ao ponto de extremidade /ads/lead_gen/export_csv/
em que os formatos de data sejam registros de data e hora POSIX
ou UNIX
:
curl -i -X GET "https://www.facebook.com/ads/lead_gen/export_csv/ ?id=<FORM_ID> &type=form &from_date=1482698431 &to_date=1482784831"
from_date
não esteja definido ou seja um valor anterior ao horário de criação do formulário, esse horário será usado.Caso to_date
não esteja definido ou seja posterior ao horário atual, usaremos esse horário.
Em caso de uma entrada sem identificação do anúncio ou IDs de grupo de anúncio no TSV, as possíveis causas são as seguintes:
is_organic
no TSV exibirá 1
. Caso contrário, o valor será 0
.Obtenha atualizações em tempo real sobre anúncios de lead.
Consulte o guia de introdução a Webhooks para configurar seu ponto de extremidade e webhook.
Gere um único token de Página de longa duração para continuar a buscar dados sem se preocupar com a expiração.
Consulte o nosso guia de Webhooks para Páginas e saiba como instalar o seu app em uma Página.
Quando você cria a geração de leads, seu app recebe a seguinte resposta de webhook:
array( "object" => "page", "entry" => array( "0" => array( "id" => 153125381133, "time" => 1438292065, "changes" => array( "0" => array( "field" => "leadgen", "value" => array( "leadgen_id" => 123123123123, "page_id" => 123123123, "form_id" => 12312312312, "adgroup_id" => 12312312312, "ad_id" => 12312312312, "created_time" => 1440120384 ) ), "1" => array( "field" => "leadgen", "value" => array( "leadgen_id" => 123123123124, "page_id" => 123123123, "form_id" => 12312312312, "adgroup_id" => 12312312312, "ad_id" => 12312312312, "created_time" => 1440120384 ) ) ) ) ) )
Você pode usar leadgen_id
para recuperar dados associados ao lead:
curl -X GET \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/{lead-id}/
Se o processo for bem-sucedido, o app receberá a seguinte resposta:
{ "created_time": "2015-02-28T08:49:14+0000", "id": "<LEAD_ID>", "ad_id": "<AD_ID>", "form_id": "<FORM_ID>", "field_data": [{ "name": "car_make", "values": [ "Honda" ] }, { "name": "full_name", "values": [ "Joe Example" ] }, { "name": "email", "values": [ "joe@example.com" ] }, { "name": "selected_dealer", "values": [ "99213450" ] }], ... }
Veja um exemplo de implementação no nosso repositório no GitHub.
Os apps criados depois de 2 de julho de 2018 devem usar a permissão leads_retrieval
para ler os leads.
Há leads
no grupo de anúncios e em nós do formulário. Isso retorna todos os dados associados aos respectivos objetos. Como é possível reutilizar um formulário em diversos anúncios, ele pode conter muito mais leads do que um anúncio.
Para fazer a leitura em lote por anúncio:
curl -X GET \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/{adgroup-id}/leads
Para fazer a leitura por formulário:
curl -G \ -d 'access_token=<ACCESS_TOKEN>' \ -d 'fields=created_time,id,ad_id,form_id,field_data' \ https://graph.facebook.com/<API_VERSION>/<FORM_ID>/leads
Resposta:
{ "data": [ { "created_time": "2018-02-28T08:49:14+0000", "id": "<LEAD_ID>", "ad_id": "<AD_ID>", "form_id": "<FORM_ID>", "field_data": [ { "name": "car_make", "values": [ "Honda" ] }, { "name": "full_name", "values": [ "Joe Example" ] }, { "name": "email", "values": [ "joe@example.com" ] }, ], ... } ], "paging": { "cursors": { "before": "OTc2Nz3M8MTgyMzU1NDMy", "after": "OTcxNjcyOTg8ANTI4NzE4" } } }
Uma pergunta do localizador de lojas não é diferente de nenhuma outra. Além disso, esse tipo de pergunta terá o ID do campo que será mapeado durante a criação do formulário. As perguntas do localizador de lojas serão enviadas de modo semelhante a outras perguntas. O valor informado virá do número da loja da localização selecionada.
Por exemplo, digamos que você tenha uma pergunta do localizador de lojas em que selected_dealer
é o ID do campo. Para buscar os leads em lote, faça a seguinte chamada:
curl -G \ -d 'access_token=<ACCESS_TOKEN>' \ -d 'fields=created_time,id,ad_id,form_id,field_data' \ https://graph.facebook.com/<API_VERSION>/<FORM_ID>/leads
Resposta:
{ "data": [ { "created_time": "2018-02-28T08:49:14+0000", "id": "<LEAD_ID>", "ad_id": "<AD_ID>", "form_id": "<FORM_ID>", "field_data": [ { "name": "car_make", "values": [ "Honda" ] }, { "name": "full_name", "values": [ "Joe Example" ] }, { "name": "email", "values": [ "joe@example.com" ] }, { "name": "selected_dealer", "values": [ "99213450" ] } ], ... } ], "paging": { "cursors": { "before": "OTc2Nz3M8MTgyMzU1NDMy", "after": "OTcxNjcyOTg8ANTI4NzE4" } } }
field_data
não contém as respostas às caixas de seleção opcionais de avisos legais personalizados que seriam marcadas pelo usuário. Use o campo custom_disclaimer_responses
para recuperar as respostas.
curl -X GET \ "https://graph.facebook.com/<API_VERSION>/<LEADGEN_ID>? fields=custom_disclaimer_responses"
Resposta:
{ "custom_disclaimer_responses": [ { "checkbox_key": "optional_1", "is_checked": "1" }, { "checkbox_key": "optional_2", "is_checked": "" } ], "id": "1231231231" }
O exemplo a seguir filtra leads com base em registros de data e hora. Os registros de data e hora devem estar no formato Unix.
curl -X GET \
-d 'filtering=[
{
"field": "time_created",
"operator": "GREATER_THAN",
"value": 1731611542
}
]' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/{adgroup-id}/leads
O operator
tem um dos valores a seguir.
Operador | Significado |
---|---|
| Filtra valores menores que o registro de data e hora. |
| Filtra valores maiores que o registro de data e hora. |
| Filtra valores maiores ou iguais ao registro de data e hora. |
Caso o formulário tenha IDs de campos personalizados, os campos e valores especificados serão retornados.