Instagram: Graph API не возвращает идентификатор пользователя, который прокомментировал - PullRequest
0 голосов
/ 19 июня 2020

Я использую Facebook Graph v7.0 для доступа к данным Instagram. Я могу получить комментарии, сделанные в средствах массовой информации Instagram, используя следующий запрос:

Запрос: https://graph.facebook.com/v7.0/18132613492054980?fields=id, ig_id, caption, timestamp, owner, username, media_type, permalink, children, comments.limit (100) {скрыто, id, like_count, media, text, timestamp, user, username}, comments_count & access_token

Response:

    {
      "id": "18132613492054980",
      "ig_id": "2263043983231761272",
      "caption": "Sprite",
      "timestamp": "2020-03-12T06:51:27+0000",
      "owner": {
                "id": "17841430463493290"
      },
      "username": "jobyjohn123456",
      "media_type": "IMAGE",
      "permalink": "https://www.instagram.com/p/B9n8oM7nTt4/",
      "comments": {
                "data": [
                          {
                                    "hidden": false,
                                    "id": "18132938077057326",
                                    "like_count": 0,
                                    "media": {
                                              "id": "18132613492054980"
                                    },
                                    "text": "Nice sprite \u0040yziaf__07",
                                    "timestamp": "2020-03-12T06:52:27+0000",
                                    "username": "zimba_birbal"
                          }
                ]
      },
      "comments_count": 2
}

В ответе я не получаю User Id пользователя, который прокомментировал. Он просто включает имя пользователя комментатора.

Хотя я пропускаю пользователя в запросе, результат не включает его.

Нужно ли мне какое-либо специальное разрешение для получения идентификатора пользователя, который прокомментировал ответ на комментарий?

1 Ответ

1 голос
/ 23 июня 2020

Существует API Facebook « Business Discovery » для получения сведений о другом пользователе Instagram.

Запрос API:

https://graph.facebook.com/178430463490?fields=business_discovery.username (user_name_you_wantto_get_its_IgUserId ) {followers_count, media_count, username, ig_id}

Ответ: enter image description here

We can pass the user name in that API request, then we will get the Instagram User Id.

The documentation says it has one limitation, this will not work for "age-gated Instagram Business IG Users" but I do not exactly know what it means. When I tested for both older Instagram account and new Instagram account (just recently created account) and this API is returning data for both.

When I tested for private Instagram account, it did not work so it seems this api works only for business account.

enter image description here

If that api does not work, there is one workaround. The following request help to get User Id using its username but I have not found any API documentation regarding this API. It looks like this is not a standard API and moreover it does not need any token.

https://www.instagram.com/user_name_you_wantto_get_its_IgUserId/?__a=1

...