有没有办法判断它是Instagram创建者还是企业帐户?

时间:2019-08-01 10:08:25

标签: facebook-graph-api instagram-api instagram-graph-api

最近,Instagram推出了他们的新创建者个人资料。您的Instagram帐户现在可以是以下帐户之一:个人帐户,企业帐户或创建者帐户。

并非所有商业帐户都可以使用创建者帐户。因此,我需要在我的应用程序中确定一种方法。

我该怎么做?

2 个答案:

答案 0 :(得分:1)

您可以使用Instagram基本显示API来实现。示例语法如下:

GET https://graph.instagram.com/{user-id}
  ?fields=id,username,account_type
  &access_token={access-token}

将返回json。返回的帐户类型将是以下之一:

BUSINESS, CONSUMER, CREATOR

有关更多信息,请参考以下链接: Instagram Basic Display API/Reference/User

答案 1 :(得分:1)

感谢@RaideR 的提问和评论中的支持。

只是为了帮助那些不想为了获取此类基本信息而抓取的人,实际上可以通过模拟对 /userid/media 端点的空 POST 调用并使用代码捕获异常来提取此信息 = 10,这表明该帐户是一个创建者。所有其他案例都是企业帐户。

POST /userid/media 
CATCH FacebookResponseException

您可以在下面找到我的 PHP 代码作为参考,但您可以在任何语言的任何框架中应用相同的逻辑:

public function isBusiness() {
    try {
        $this->conn->post("/".$this->fb_id."/media", [], $this->getToken());
        return true;
    } catch (FacebookResponseException $e) {
        if ($e->getCode() == 10) {
        return false;
    } catch (\Exception $e) {
        return true;
    }
 }

如果您想了解更多信息,我写了一个 more extensive article here