Puedes consultar los clientes potenciales mediante Webhooks o Lectura masiva.
Para consultar campos específicos del anuncio, como ad_id
y campaign_id
, necesitas lo siguiente:
pages_read_engagement
pages_manage_metadata
- si usas webhooks Para consultar todos los datos de clientes potenciales y datos en el nivel del anuncio, necesitas lo siguiente:
leads_retrieval
pages_manage_ads
Nota: Si este administrador de página nunca personalizó los clientes potenciales ni otorgó permiso de acceso mediante el administrador de acceso a clientes potenciales, TODOS los administradores de página tendrán permiso de acceso a clientes potenciales. Si los administradores del negocio personalizaron el permiso de acceso a clientes potenciales, la configuración del administrador del negocio determinará si un administrador de página básico tiene permiso de acceso a clientes potenciales o no.
El límite de frecuencia es de 200 multiplicado por 24, multiplicado por la cantidad de clientes potenciales que se crearon en los últimos 90 días para una página de Facebook. Si haces más llamadas en un período de 24 horas, la solicitud devuelve un error.
Envía una solicitud GET
al punto de conexión /ads/lead_gen/export_csv/
en la que los formatos de fecha sean marcas de tiempo POSIX
o 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
no se definió o es anterior a la hora de creación del formulario, se usará la hora de creación del formulario.Si to_date
no se definió o es posterior a la hora actual, se usará la hora actual.
Si alguna entrada no tiene el identificador del anuncio o del grupo de anuncios en el TSV, puede deberse a los siguientes motivos:
is_organic
del TSV muestra 1
. De lo contrario, el valor es 0
.Obtén actualizaciones en tiempo real sobre los anuncio para clientes potenciales.
Consulta nuestra Guía introductoria sobre Webhooks para configurar tu punto de conexión y tu webhook.
Genera un único token de página de larga duración para recuperar datos de forma continua sin preocuparte por la caducidad.
Consulta nuestra guía de Webhooks para páginas a fin de obtener información sobre cómo instalar tu app en una página.
Cuando se crea la generación de clientes potenciales, la app recibe la siguiente respuesta del 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 ) ) ) ) ) )
Puedes utilizar leadgen_id
para recuperar los datos asociados al cliente potencial:
curl -X GET \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/{lead-id}/
Si la operación se completa correctamente, la app recibirá la siguiente respuesta:
{ "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" ] }], ... }
Puedes ver un ejemplo de esta implementación en nuestro repositorio de Github.
Para las apps creadas después del 2 de julio de 2018, es obligatorio utilizar el permiso leads_retrieval
para leer clientes potenciales.
El parámetro leads
existe tanto en grupos de anuncios como en nodos de formulario. Este devuelve todos los datos asociados a sus respectivos objetos. Dado que un formulario puede reutilizarse para muchos anuncios, el formulario puede contener muchos más clientes potenciales que un anuncio que lo utilice.
Para la lectura masiva por anuncio:
curl -X GET \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/{adgroup-id}/leads
Para la lectura por formulario:
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
Respuesta:
{ "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" } } }
La pregunta del localizador de tiendas no es distinta de otras preguntas. Una pregunta del localizador de tiendas también tiene un identificador de campo que se le asigna durante la creación del formulario. También se envían de manera similar a otras preguntas. El valor transmitido proviene del número de tienda de la ubicación seleccionada.
Por ejemplo, supongamos que hay una pregunta del localizador de tiendas con selected_dealer
como identificador de campo. Para obtener los clientes potenciales de forma masiva, puedes hacer la siguiente llamada:
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
Respuesta:
{ "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" } } }
El parámetro field_data
no contiene las respuestas a las casillas de descargo de responsabilidad personalizado opcionales que el usuario habría completado. Para recuperar las respuestas, usa el campo custom_disclaimer_responses
.
curl -X GET \ "https://graph.facebook.com/<API_VERSION>/<LEADGEN_ID>? fields=custom_disclaimer_responses"
Respuesta:
{ "custom_disclaimer_responses": [ { "checkbox_key": "optional_1", "is_checked": "1" }, { "checkbox_key": "optional_2", "is_checked": "" } ], "id": "1231231231" }
En este ejemplo, se filtran los clientes potenciales en función de las marcas de tiempo. Las marcas de tiempo deben ser de UNIX.
curl -X GET \
-d 'filtering=[
{
"field": "time_created",
"operator": "GREATER_THAN",
"value": 1731611175
}
]' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/{adgroup-id}/leads
El parámetro operator
tiene uno de los siguientes valores:
Operador | Significado |
---|---|
| Filtra valores anteriores a la marca de tiempo. |
| Filtra valores posteriores a la marca de tiempo. |
| Filtra valores posteriores o equivalentes a la marca de tiempo. |
Si el formulario tiene identificadores de campo personalizados, los campos y los valores devueltos serán los campos y los valores especificados.