如何在没有 API 详细信息的情况下获取潜在客户详细信息


How to get lead details without API details?

我按照这里的说明获得了实时更新。但问题是我如何使用此代码获取潜在客户详细信息:

use FacebookAds'Object'Lead;
$form = new Lead(<LEAD_ID>); 
$form->read();

当我使用 Leadgen ID 时,出现错误:致命错误:未捕获无效参数异常:必须将 API 实例作为参数提供或在...

但是如果我使用:

use FacebookAds'Api;
use FacebookAds'Object'Lead;
Api::init(
    'appid', 
    'secret_token',
    $_SESSION['facebook_access_token'] 
);
$form = new Lead('leadgenid');
$form->read();

然后我根据需要获取数据:

{
    "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"
        ]
    }]
}

但user_access_token在 2 个月后过期(long_lived 代币)

在我们的服务器上设置API的最佳方法是什么,我们通过webhook连接以接收LeadAd数据并将其自动存储在我们的数据库中?我们是否必须每两个月手动创建一个新令牌?有没有更好的方法?

Facebook广告平台中有"系统用户",应该是您问题的答案。请在下面找到其详细信息:https://developers.facebook.com/docs/marketing-api/businessmanager/systemuser/v2.5

简而言之,通过使用系统用户,您将能够生成不需要用户每隔特定时间段登录的令牌。但是,您需要拥有具有标准访问权限的应用,才能在商务管理平台中创建系统用户。

希望对您有所帮助!