You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Facebook Marketing API通过系统用户读取广告评论失败求助

问题:Facebook Marketing API读取广告评论失败排查

问题描述

  • 系统用户已拥有页面和广告账户的完全访问权限
  • 使用页面访问令牌读取页面原生帖子评论完全正常,但针对广告的effective_object_story_id操作时出现异常:
    • 请求/{effective_object_story_id}仅返回id、created_time、message三个字段,其中message值为{{product.brand}}
    • 请求/{effective_object_story_id}/comments得到空数组,但直接访问facebook.com/{effective_object_story_id}网页能看到大量用户评论

可能的原因及解决步骤

1. 访问令牌的权限/类型不匹配

你当前使用的是页面访问令牌,但广告衍生帖子的评论读取可能需要更精准的权限或令牌类型:

  • 必须确保令牌包含ads_read权限(广告数据读取的核心权限),同时不能少pages_read_engagement、pages_show_list这两个页面互动读取权限
  • 尝试改用系统用户生成的广告账户访问令牌请求,而非单纯的页面令牌——广告相关资源的访问,广告账户级令牌的兼容性更强

2. effective_object_story_id指向的是模板而非真实帖子

你拿到的effective_object_story_id大概率是广告创意的动态模板ID,而非实际投放后生成的用户可见真实帖子:

  • 字段里的{{product.brand}}就是模板占位符的直接证明,这类模板本身没有真实评论
  • 解决方式:先通过广告ID调用/{ad-id}/creative获取创意详情,从中提取实际关联的object_story_id(单帖广告);如果是动态产品广告(DPA),需要通过/{ad-id}/insights或广告创意的dynamic_ad_asset字段,找到投放后生成的具体帖子实例ID

3. API请求的参数缺失

默认请求/{object-id}/comments可能不会返回完整评论数据,需要明确指定字段和过滤参数:

  • 明确指定需要返回的字段:
    GET /{target-post-id}/comments?fields=id,message,created_time,from
    
  • 如果存在嵌套回复,添加filter=stream参数获取全层级评论:
    GET /{target-post-id}/comments?fields=id,message,created_time,from&filter=stream
    

4. 隐私过滤(优先级较低)

网页能看到但API返回空的情况,可能是部分评论因用户隐私设置(如仅好友可见)被API过滤,但这种情况不会导致全量为空,仅作为排查补充项


内容的提问来源于stack exchange,提问作者dannepanne

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 17:30:19