Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

https://www.facebook.com/business/learn/lessons/set-up-instagram-creator-account

Кроме того, если вы создали новый аккаунт, загрузите аватар, биографию и опубликуйте какой-нибудь пост иначе ивенты не будут приходить на вебхук.

1. Создание страницы в Facebook

...

3. Добавление администратора страницы в девелоперы приложения:

...

Получение токена и ID Instagram аккаунта:

  1. Открыть https://developers.facebook.com/tools/explorer/

  2. Выбрать Facebook App (Autofaq_prod)

    Image Added

3. Выбрать User Token

4. Добавить следующие permissions:

  • pages_show_list

  • business_management

  • pages_messaging

  • instagram_basic

  • instagram_manage_comments

  • instagram_manage_insights

  • instagram_manage_messages

  • pages_read_engagement

  • pages_manage_metadata

  • pages_read_user_content

5. Нажать кнопку Generate Access Token и сохранить полученный токен. Далее мы будем называть его ${explorer_user_access_token}

6. Нужно выполнить запрос GET https://graph.facebook.com/v9.0/oauth/access_token?grant_type=fb_exchange_token&client_id=${app_id}&client_secret=${app_secret}&fb_exchange_token=${explorer_user_access_token}.
В ответ придёт такой json:
{     "access_token": ${long_lived_user_access_token},   "token_type": "bearer" }.

7. Выполните запрос GET https://graph.facebook.com/v9.0/me/accounts?access_token=${long_lived_user_access_token}. В ответ вы получите:

Code Block
{
  "data": [
    {
      "access_token": "${page_acces_token}",
      "category": "Personal blog",
      "category_list": [
        {
          "id": "2700",
          "name": "Personal blog"
        }
      ],
      "name": "{ИМЯ ВАШЕЙ СТРАНИЦЫ В FACEBOOK}",
      "id": "${fb_page_id}",
      "tasks": [
        "ANALYZE",
        "ADVERTISE",
        "MESSAGING",
        "MODERATE",
        "CREATE_CONTENT",
        "MANAGE"
      ]
    }
  ],
  "paging": {
    "cursors": {
      "before": "MTA4ODEyODExNzEyOTg4",
      "after": "MzE3MjY2NTA1NzY1MTc3"
    }
  }
}


Нас прежде всего интересует именно ${fb_page_id}.

8. Выполните запрос GET https://graph.facebook.com/${fb_page_id}?fields=access_token&access_token=${long_lived_user_access_token}.

В ответ вы получите

Code Block
{
    "access_token": ${long_lived_page_access_token},
    "id": ${fb_page_id}
}

9. Выполните запрос GET https://graph.facebook.com/v6.0/${fb_page_id}?fields=connected_instagram_account&access_token=${long_lived_user_access_toke}

В ответ вы получите:

Code Block
{
    "connected_instagram_account": {
        "id": ${ig_page_id}
    },
    "id": ${fb_page_id}
}

Откуда мы берём ${ig_page_id}.

Итого у нас есть токен - ${long_lived_user_access_token} и ID Intagram аккаунта ${ig_page_id}.

Подписка приложения на поля

Code Block
POST https://graph.facebook.com/v12.0/${fb_page_id}/subscribed_apps?access_token=${long_lived_user_access_token}&debug=all&format=json&method=post&pretty=0&suppress_http_code=1&transport=cors&subscribed_fields=messages

В результате должны получить:

Code Block
{
    "success": true
}

Для проверки выполните:

Code Block
GET https://graph.facebook.com/v12.0/${fb_page_id}/subscribed_apps?access_token=${long_lived_user_access_token}&debug=all&format=json&method=get&pretty=0&suppress_http_code=1&transport=cors

В результате должы получить что-то вроде этого:

Code Block
{
    "data": [
        {
            "link": "https://autofaq.ai/",
            "name": "Autofaq_prod",
            "id": "194055608157591",
            "subscribed_fields": [
                "messages"
            ]
        }
    ]
}

Заполнение настроек канала в autofaq

...

В поле Токен доступа введите ${long_lived_user_access_token}, а в поле идентификатор страницы введите ${ig_page_id} и нажмите на кнопку сохранить.

Если уровень permission “instagram_manage_messages” = Standard Access

Событие о сообщениях будут приходить только для сообщений отправленных с аккаунтов добавленных в Instagram Testers в настройках приложения.

...