Skip to content
MaytokVerso
Atrás

Experimientos con la API Graph de Meta

Para integraciones, un webhook nos envía los siguientes datos:

{
    'leadgen_id': '1623900945330278',
    'form_id': '1962848607672175',
    'ad_id': '120242521228930087',
    'adgroup_id': '120242521228930087',
    'page_id': '105464935110715'
}

Primero necesitamos convertir el token de usuario a un token largo:

GET https://graph.facebook.com/v25.0/oauth/access_token
  ?grant_type=fb_exchange_token
  &client_id=APP_ID
  &client_secret=APP_SECRET
  &fb_exchange_token=SHORT_LIVED_USER_TOKEN

Este token de usuario durará aproximadamente sesenta días

Obtenemos entonces el token de página

GET /me/accounts
{
  "data": [
    {
      "access_token": "ACCESS_TOKEN",
      "category": "Categoría",
      "category_list": [
        {
          "id": "id_categoria",
          "name": "Categoría"
        }
      ],
      "name": "Nombre empresa",
      "id": "id_empresa",
      "tasks": [
        "ADVERTISE",
        "ANALYZE",
        "CREATE_CONTENT",
        "MESSAGING",
        "MODERATE",
        "MANAGE"
      ]
    }
  ],
  "paging": {
    "cursors": {
      "before": "cursores__",
      "after": "cursores__"
    }
  }
}

Guardaremos los datos en el modelo y obtendremos los datos desde el leadgen_id desde la api de META.

Primero necesitamos obtener un token de usuario:

GET https://graph.facebook.com/v25.0/{leadgen_id}?access_token=TU_TOKEN_DE_PAGINA
{
  "created_time": "2026-04-25T01:30:53+0000",
  "id": "ladgen_id",
  "field_data": [
    {
      "name": "full_name",
      "values": [
        "Nombre persona"
      ]
    },
    {
      "name": "city",
      "values": [
        "Ciudad"
      ]
    },
    {
      "name": "phone_number",
      "values": [
        "numero_telefono"
      ]
    }
  ]
}

Una vez tenemos esto podemos relacionarlos. Ahora bien, el webhook impacta antes que la conversación creada en chatwoot, así que debemos almacenarlo en una tabla y hacer reintentos.


Comparte este post en:

Previous Post
Solucionando el error de API 'You need to sign in or sign up' de Chatwoot en CapRover
Next Post
Utilidades para mediawiki