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

使用Facebook Graph API获取WhatsApp商务账户分析数据遇问题求助

WhatsApp商务账户分析数据API请求故障排查

问题描述

我正在尝试用Postman向Facebook Graph API发送GET请求,获取WhatsApp商务账户的分析数据,请求结构如下:

https://graph.facebook.com/v21.0/{whatsapp-business-account-ID}?fields=analytics.start(1732672800).end(1732932000).granularity(DAY)&access_token={access-token}

已尝试操作

  • 将请求类型设置为GET;
  • 在Postman中添加了所有必填查询参数(fields、start_time、end_time、granularity、access_token);
  • 确认access_token有效且具备whatsapp_business_management权限。

错误响应

{
    "error": {
        "message": "(#100) Tried accessing nonexisting field (analytics) on node type (WhatsAppBusinessPhoneNumber)",
        "type": "OAuthException",
        "code": 100,
        "fbtrace_id": "XXXXXXXXXXXX"
    }
}

解答

1. analytics字段有效性确认

analytics是**WhatsApp商务账户(WhatsAppBusinessAccount节点)**的有效字段,但并非WhatsApp商务电话号码(WhatsAppBusinessPhoneNumber节点)的字段。你收到的错误提示说明请求URL中填写的ID是电话号码ID,而非商务账户的ID。

2. Postman请求正确配置及排查步骤

正确请求配置

  • 确认节点ID:确保URL中的{whatsapp-business-account-ID}是WhatsApp商务账户的ID,而非关联的电话号码ID。可通过调用GET /{ID}?fields=type验证,返回type应为WhatsAppBusinessAccount。
  • 修正请求结构:保持analytics字段的链式调用格式,无需额外拆分start_time等参数为独立查询项,正确URL示例:
https://graph.facebook.com/v21.0/{正确商务账户ID}?fields=analytics.start(1732672800).end(1732932000).granularity(DAY)&access_token={access-token}

故障排查步骤

  1. 校验ID类型:调用GET /{ID}?fields=name,type,确认返回的节点类型为WhatsAppBusinessAccount;
  2. 检查参数格式:确保analytics的时间、粒度参数使用链式调用(.start(xxx).end(xxx).granularity(DAY)),不要拆分为独立参数;
  3. 查看Postman请求详情:确认实际发送的URL与预期一致,无参数转义或丢失情况。

3. 权限与API版本注意事项

  • 权限要求:
    • 必须持有whatsapp_business_management权限(你已满足);
    • 确保access_token对应的应用已获得目标商务账户的授权,授权范围包含分析数据访问权限;
  • API版本:
    • analytics字段在Graph API v13.0及以上版本可用,v21.0完全支持;
    • 不同版本的字段格式无差异,当前链式调用格式通用;
    • 避免使用v12.0及以下废弃版本,此类版本不支持该字段。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 21:35:07