我目前正在尝试让 Facebook 发送所有潜在客户,因为它们已实时注册到订阅的端点。Facebook 在他们的文档中提到,这可以通过设置来自新的潜在客户广告服务的实时更新来实现。
https://developers.facebook.com/docs/marketing-api/guides/lead-ads/v2.5#setting-up-realtime-updates
然而,经过几个小时试图整合这个,我没能让它工作。以下是我到目前为止无济于事的过程。
设置应用程序
我已经设置了一个 Facebook 应用程序 (423332064458136),该应用程序目前与我的个人帐户相关联。此应用程序是实时的,但不在任何平台上运行,因此不需要通过审核(据我了解)。
我已经使用应用程序 ID 和应用程序密码为此应用程序注册了一个潜在客户回调。这是使用以下 curl 请求实现的。
curl \
-F "object=page" \
-F "callback_url=https://leadr.co.uk/external/handle-fb.php" \
-F "fields=leadgen" \
-F "verify_token=abc123" \
-F "access_token=423332064458136|<APP_SECRET>" \
"https://graph.facebook.com/v2.5/423332064458136/subscriptions"
注册后我收到了 {success:true} 响应。为了确认这一点,我使用来自 GraphAPI 资源管理器的应用程序令牌在以下路径运行了一个请求:
/423332064458136/订阅
并收到回复:
{
"data": [
{
"object": "page",
"callback_url": "https://leadr.co.uk/external/handle-fb.php",
"fields": [
"leadgen"
],
"active": true
}
],
}
在https://leadr.co.uk/external/handle-fb.php位置,如果需要,我将使用 hub_challenge 进行响应,并将通过 php://input 发送的所有内容记录到文本文件中。
设置线索广告
我使用 Facebook 文档中的说明在 VoucherSelector 页面 ( https://www.facebook.com/permalink.php?story_fbid=1009785315719107&id=140148862682761 ) 上设置了一个潜在客户广告: https ://developers.facebook.com/ docs/marketing-api/guides/lead-ads/v2.5。
这目前设置为非活动状态,因为我们不想在此测试阶段花费任何预算。但是,据了解,帐户仍然可以使用给定的 URL(上图)进行注册。
然后,我们使用页面访问令牌将此页面订阅到我们的应用程序。使用 graphAPI Explorer 我选择了我们的应用程序,然后获得了凭证选择器页面的页面访问令牌。然后我运行以下请求以将页面订阅到我们的应用程序。
curl \
-F "access_token=<PAGE_ACCESS_TOKEN>" \
"https://graph.facebook.com/v2.5/140148862682761/subscribed_apps"
我收到了 {success:true} 的回复。通过在同一端点运行 GET 请求,我收到如下响应:
{
"data": [
{
"category": "Business",
"link": "https://www.facebook.com/games/?app_id=423332064458136",
"name": "leadR - Lead Ads Collection",
"id": "423332064458136"
},
{
"category": "Utilities",
"link": "https://www.facebook.com/games/?app_id=2373072738",
"name": "Discussion Boards",
"id": "2373072738"
}
],
}
确认页面已订阅我们的应用程序。
每当在此领先广告上发生注册时,我们的终点都不会受到任何有效载荷的影响。
补充说明
- 我是代金券选择器页面的管理员,主要广告在该页面上运行。
- 当我尝试下载从此广告生成的潜在客户(目前有 8 个)时,我只在下载文件中收到自己。
任何使用 /subscriptions_sample 端点向我们的端点发送测试数据包的尝试都会失败,并出现以下错误(这意味着我们只能使用真实账户进行测试):
{"error":{"message":"(#3) 应用必须在白名单中","type":"OAuthException","code":3,"fbtrace_id":"HH5gInxafKP"}}
有点坚持如何从这里开始。有没有人成功地将潜在客户广告发送到订阅的端点?