Facebook Graph API,尝试在webhook中读取leadgen数据的权限无效/缺失

Facebook Graph API,尝试在webhook中读取leadgen数据的权限无效/缺失,facebook,facebook-graph-api,Facebook,Facebook Graph Api,我在试图通过Facebook的Graph API从leadgen对象、从特定的Facebook业务获取数据时遇到了问题 页面管理员用户登录,我们请求以下权限:管理页面、页面显示列表、线索检索、公共配置文件 然后我们设置一个webhook,从leadgen表单中获取线索 我们还创建一个长寿命令牌并将其存储在服务器中。一旦我们完成了所有这些设置,Facebook就会通过配置好的webhook向我们发送任何leadgen数据 数据如下所示(忽略敏感数据): 我们通过/{leadgen_id}端点和长寿

我在试图通过Facebook的Graph API从leadgen对象、从特定的Facebook业务获取数据时遇到了问题

页面管理员用户登录,我们请求以下权限:管理页面、页面显示列表、线索检索、公共配置文件

然后我们设置一个webhook,从leadgen表单中获取线索

我们还创建一个长寿命令牌并将其存储在服务器中。一旦我们完成了所有这些设置,Facebook就会通过配置好的webhook向我们发送任何leadgen数据

数据如下所示(忽略敏感数据):

我们通过/{leadgen_id}端点和长寿命令牌检索leads数据

直到今天,我们还没有遇到任何问题,我们尝试连接到另一个业务,并收到以下信息:

CRM access has been revoked from Lead Access Manager.
经过一些研究,我们注意到我们必须要求用户在以下位置启用我们的Facebook应用程序:业务设置->集成->Leads Access->CRM

我们的其他用户似乎在Manage Leads Access中设置了默认设置:默认情况下,{company name}的所有页面管理员和连接的CRM都可以访问Lead

但在激活Lead Access Manager的公司上,当我们查询/{leadgen_id}端点时,我们收到以下错误:

{
  "error": {
    "message": "Unsupported get request. Object with ID '...' does not exist, cannot be loaded due to missing permissions, or does not support this operation. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api",
    "type": "GraphMethodException",
    "code": 100,
    "error_subcode": 33,
    "fbtrace_id": "..."
  }
}
我们尝试访问,但它没有让我们了解错误

除此之外,我们在访问时也会遇到一个错误

我猜我们必须请求一些其他的许可,但不清楚在这种情况下我们应该请求什么或哪些许可


有什么想法吗?

好的,所以问题似乎是因为其中一个用户创建了令牌,然后它被另一个用户更新,出于某种原因,这导致了错误。两个用户都是来自同一页面的管理员


我仍然需要调试这一问题的确切原因,但问题是我们将另一个令牌发送到Graph API。

如果有人想知道如何在2020年底解决同样的问题,下面是我为解决问题所做的工作(假设您的页面具有业务管理员角色)

  • 在“业务设置”页面中创建系统用户,添加资产并选择您的页面
  • 转到集成->Leads Access,选择您的页面,分配人员,然后选择新创建的系统用户
  • 返回系统用户菜单并生成系统用户令牌,您至少需要
    广告管理、页面阅读参与、页面显示列表、页面管理元数据、线索检索、页面管理广告
    权限才能阅读线索详细信息
  • 复制生成的令牌,并将其用作使用leadgen_id访问facebook graph api的访问令牌

  • 以上步骤假设您只需要检索Lead详细信息。如果您计划使用页面访问令牌,则必须将您的用户添加到Leads access,然后您可以继续使用自己的访问令牌创建您的应用程序页面访问令牌,但是,当我从表单发送测试数据时,我不断收到相同的错误:/error code 103 CRM access已从Lead access Manager中撤销。而且我没有使用CRM我将数据发送到一个webhook你将数据发送到的webhook被视为一个CRM(至少在Facebook中是这样称呼的),所以请在Business Manager中检查用户和页面的访问权限
    {
      "error": {
        "message": "Unsupported get request. Object with ID '...' does not exist, cannot be loaded due to missing permissions, or does not support this operation. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api",
        "type": "GraphMethodException",
        "code": 100,
        "error_subcode": 33,
        "fbtrace_id": "..."
      }
    }
    
    App health status
    Your app received privacy errors during a recent Graph API request. As a result, your app may not function properly until the issue is resolved.