如何知道Facebook帐户是个人帐户还是公司类型帐户?

时间:2013-02-05 23:58:11

标签: facebook facebook-graph-api username user-accounts

是否有图表API调用以了解给定帐户是商家帐户还是个人帐户?

当我像这样调用图形API时,

http://graph.facebook.com/11234545656556(这个数字现在是假的)

我没有得到任何数据点告诉我这是一个商业帐户,因此没有名称/用户名等。

我只收到此回复类型

    {"id": "11234545656556",   
     "link": "http://www.facebook.com/profile.php?id=11234545656556",   
      "email": "myemail@mail.com,   
     "timezone": 0,   
     "locale": "en_US",   
     "verified": true,   
     "updated_time": "2012-05-31T22:32:52+0000",   
     "type": "user"}

是否有API调用以了解帐户的类型?

2 个答案:

答案 0 :(得分:0)

您可以通过FQL明确获取此信息:

SELECT type FROM profile WHERE id=11234545656556

Graph API中有一个未记录的/profile端点,但它不返回类型。

测试此问题的唯一方法是在Graph API响应中查找某个字段的存在。例如如果回复包含first_name,那么您知道它是用户,如果它包含category,那么您就知道它是一个页面。

答案 1 :(得分:0)

我遇到了同样的问题。到目前为止,通过检查响应是否包含名称属性来了解其个人Facebook帐户的唯一方法。

关注FQL(将id更改为某个已知帐户):

  SELECT type, name, username, url, pic FROM profile WHERE id=11234545656556

将为个人或企业帐户返回"user"类型。

假设“11234545656556”是企业帐户,名称和用户名将返回不一致的结果,可能会返回空白或"name": "Facebook User"

对于这样的个人帐户,同样的FQL调用:

 SELECT type, name, username, url, pic FROM profile WHERE id=4 

将导致该给定用户的公开个人信息。

 {
 "data": [
   {
      "type": "user", 
      "name": "Mark Zuckerberg", 
      "username": "zuck", 
      "url": "https://www.facebook.com/zuck", 
      "pic": "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-prn1/157340_4_3955636_s.jpg"
    }
  ]

}