Facebook Graph API无法获取特定广告的线索数据,但广告管理器中可见该线索
我之前也遇到过几乎一模一样的问题!当时折腾了好一阵才梳理出几个可能的排查方向,你可以挨个试试:
检查广告关联的表单状态与匹配性
复制广告的时候很容易出现表单关联错误的情况。先去Ads Manager确认这个「ad1 - Copy」广告绑定的表单是不是和原广告一致?再去Business Manager的表单库看看这个表单有没有被设置为暂停状态或者处于审核中——如果表单状态异常,哪怕Ads Manager能显示线索,API也会返回空数据。确认广告ID是否完全正确
带「Copy」的广告很容易搞混ID,建议先调用GET /{ad_id}接口,核对返回的name字段是否确实是「ad1 - Copy」。我之前就不小心用了原广告的ID查了半天,结果白忙活。尝试从表单维度直接拉取线索
别盯着广告ID查了,试试用表单ID调用GET /{form_id}/leads?fields=id,created_time,field_data&limit=1000。如果这样能拿到那65条线索,说明是广告和表单的关联在API层面出现了同步问题,你可以重新在Ads Manager里把广告和表单绑定一次,应该就能解决。细化API调用的时间参数
虽然你用了date_preset=maximum,但有时候这个参数的时间范围可能没覆盖到所有线索。试试手动指定since和until,比如把since设为广告创建日期的前一天,until设为当前日期,完整请求类似:GET /{ad_id}/leads?fields=id,created_time,field_data&limit=1000&since=2024-01-01&until=2024-05-20排查Business Manager权限与资产归属
确认你的access token所属的Business Manager,和这个广告、表单所在的BM是同一个吗?跨BM的权限有时候会有隐藏限制,哪怕你有leads_retrieval这些权限,如果资产归属没弄对,也拿不到数据。
如果以上方法都试过还是不行,那大概率是Facebook的系统同步bug了。我当时就是提交了Business Support工单,他们后台排查后发现是复制广告时线索的关联记录没同步到API数据库,大概1-2天就修复了。提交工单的时候记得附上广告ID、表单ID、API请求/响应截图,还有Ads Manager里的线索数量截图,能加快处理速度。
备注:内容来源于stack exchange,提问作者abailony

