Як підключити Facebook Messenger та Instagram Direct
Щоб бот працював у Messenger та Instagram Direct, ви створюєте власний застосунок Meta і передаєте нам його ключі. Нижче - покрокова інструкція. Інтерфейс Meta змінюється, тому назви кнопок і розділів може відрізнятися залежно від інтерфейсу Meta; орієнтуйтеся на зміст кроку.
1. Акаунт Meta for Developers
- Відкрийте developers.facebook.com і увійдіть під своїм акаунтом Facebook, натисніть «Get Started» і пройдіть реєстрацію розробника (підтвердження номера телефону або пошти).
- Використовуйте акаунт, який є адміністратором вашої бізнес-сторінки Facebook.
[знімок екрана: головна сторінка developers.facebook.com після входу, кнопка «Get Started» або «My Apps»]
2. Бізнес-сторінка Facebook
- Потрібна сторінка Facebook (не особистий профіль) вашого бізнесу. Якщо її немає - створіть: Facebook - «Сторінки» - «Створити нову сторінку».
- Акаунт, з якого ви працюєте з застосунком, має мати на сторінці достатні права (за документацією Meta - можливість виконувати завдання MODERATE, для надсилання повідомлень - MESSAGING). Найпростіше - бути адміністратором сторінки.
[знімок екрана: сторінка Facebook, розділ «Налаштування» - «Ролі на сторінці»]
3. Instagram: професійний акаунт і зв'язок зі сторінкою (лише для Instagram Direct)
- Акаунт Instagram має бути професійним (бізнес або автор): Instagram - «Налаштування» - «Тип акаунта та інструменти» - «Перейти на професійний акаунт».
- Зв'яжіть акаунт зі сторінкою Facebook: у налаштуваннях сторінки Facebook - «Пов'язані акаунти» (Linked accounts) - Instagram, або з боку Instagram - «Центр акаунтів».
- У Instagram увімкніть «Дозволити доступ до повідомлень» (Allow access to messages) у розділі пов'язаних інструментів / конфіденційності повідомлень. Без цього повідомлення не надходитимуть.
[знімок екрана: Instagram - налаштування повідомлень, перемикач «Дозволити доступ до повідомлень»]
4. Створення застосунку
- У developers.facebook.com натисніть «My Apps» - «Create App».
- Вкажіть назву, контактну пошту. Тип застосунку / сценарій оберіть так, щоб він підходив для бізнесу (Business) і дозволяв додати Messenger; якщо майстер пропонує сценарії (use cases), оберіть той, що стосується повідомлень Messenger та Instagram.
- Meta може змінювати назви типів і сценаріїв - це нормально.
[знімок екрана: екран вибору типу застосунку / сценарію під час створення]
5. Додавання продуктів Messenger та Instagram
- На панелі застосунку (App Dashboard) додайте продукт Messenger (Messenger Platform).
- Для Instagram Direct використовується Messenger Platform: у розділі Messenger є налаштування Instagram («Instagram Settings»). Якщо Meta показує окремий продукт для Instagram-повідомлень - додайте і його.
- У «Settings - Basic» заповніть основні дані застосунку (іконка, політика конфіденційності - можна вказати посилання на нашу сторінку політики конфіденційності).
[знімок екрана: App Dashboard, кнопка «Add product» і картка Messenger]
6. Потрібні дозволи (permissions)
- Messenger:
pages_messaging(надсилання та отримання повідомлень),pages_show_list(список ваших сторінок),pages_manage_metadata(підписка сторінки на вебхуки). - Instagram Direct:
instagram_basic,instagram_manage_messages, а такожpages_manage_metadata.
Точний перелік залежить від поточної версії Graph API та інтерфейсу Meta; якщо Meta вимагає додаткові дозволи - додайте їх.
7. Режим розробки та перевірка Meta (важливо)
- За замовчуванням застосунок має Standard access: він працює лише з людьми, які мають роль у застосунку (адміністратор, розробник, тестувальник). Для власних тестів і для вашої власної сторінки цього достатньо - додайте потрібних людей у «App roles».
- Щоб бот відповідав будь-яким вашим клієнтам, потрібен Advanced access до цих дозволів. Meta видає його через перевірку застосунку (App Review), а також може вимагати верифікацію бізнесу (Business Verification). Перевірка може тривати, потребує опису, відеодемонстрації та політики конфіденційності.
- Також може знадобитися перевести застосунок у режим Live (перемикач на панелі). Умови залежать від типу застосунку та інтерфейсу Meta.
- Без цього бот відповідатиме тільки людям із ролями у вашому застосунку.
[знімок екрана: «App Review» - «Permissions and Features», кнопка запиту Advanced access]
8. Токени доступу
- Page Access Token (потрібен і для Messenger, і для Instagram Direct): у Messenger - Settings можна додати сторінку й згенерувати токен; або через Graph API Explorer: отримайте токен користувача з потрібними дозволами, викличте
GET /me/accounts- у відповіді для кожної сторінки будеaccess_tokenтаidсторінки. - Термін дії: токен сторінки, отриманий з короткоживучого токена користувача, діє приблизно 1 годину. Токен сторінки, отриманий з довгоживучого токена користувача, за документацією Meta не має терміну дії. Тому спочатку обміняйте токен користувача на довгоживучий, і вже потім отримуйте токен сторінки.
- Page ID (ідентифікатор сторінки) також знадобиться. Для Instagram - ID пов'язаного Instagram-акаунта (його можна побачити у відповіді на запит до сторінки з полем instagram_business_account).
- App ID та App Secret - у «Settings - Basic». Секрет нікому не показуйте, крім нашого кабінету.
- Токени можуть стати недійсними: змінили пароль Facebook, прибрали роль, відкликали доступ. Тоді створіть токен знову.
[знімок екрана: Graph API Explorer з вибраним застосунком, дозволами та відповіддю /me/accounts]
9. Вебхук
Вебхук - адреса, на яку Meta надсилає нам нові повідомлення. Значення для полів ви побачите в нашому кабінеті, розділ «Канали»:
- Callback URL: [URL вебхука з кабінету]
- Verify Token: [verify token з кабінету]
- Відкрийте Messenger - Settings (розділ Webhooks) у вашому застосунку, вставте ці два значення в поля Callback URL та Verify Token і збережіть. Meta надішле перевірочний запит, наш сервіс відповість автоматично. Якщо помилка - перевірте, що ви скопіювали значення без пробілів.
- Для Instagram Direct вебхук налаштовується в розділі Instagram Settings / Webhooks того ж продукту; адреса й токен ті самі.
[знімок екрана: Messenger - Settings - Webhooks з полями Callback URL і Verify Token]
10. Підписка на події messages
- У налаштуваннях вебхука підпишіться на поле
messages(для Messenger) і відповідне поле повідомлень для Instagram. - Підпишіть саму сторінку: у Messenger - Settings додайте сторінку (Add Subscriptions) і увімкніть
messages. Сторінку також можна підписати запитомPOST /{page-id}/subscribed_apps?subscribed_fields=messagesз токеном сторінки. Перевірити підписку можна запитомGET /{page-id}/subscribed_apps(порожній список означає, що підписки немає).
[знімок екрана: список полів вебхука з увімкненим messages та підписаною сторінкою]
11. Куди вставити ключі у нас
У нашому кабінеті відкрийте розділ «Канали» (він з'явиться пізніше) і введіть дані: App ID, App Secret, Page ID, Page Access Token (для Instagram - також ID Instagram-акаунта, якщо кабінет його попросить). Ключі зберігаються в зашифрованому вигляді.
[знімок екрана: розділ «Канали» в кабінеті, форма Facebook / Instagram]
12. Перевірка роботи
- З акаунта, який має роль у застосунку (наприклад, ваш власний або тестувальника), напишіть на свою сторінку Facebook у Messenger або на свій акаунт Instagram у Direct.
- Бот має відповісти. Діалог з'явиться в кабінеті.
- Якщо відповіді немає - перегляньте розділ нижче.
13. Типові помилки
- Токен закінчився або недійсний. Згенеруйте токен сторінки заново (з довгоживучого токена користувача) і замініть його в кабінеті.
- Сторінка не пов'язана з Instagram. Перевірте зв'язок акаунта Instagram зі сторінкою та що акаунт професійний, а доступ до повідомлень увімкнено.
- Немає дозволу. Переконайтеся, що застосунок має потрібні дозволи, а акаунт, що створив токен, має відповідну роль на сторінці.
- Бот мовчить для сторонніх людей. Застосунок із Standard access відповідає лише людям із ролями. Для всіх потрібна перевірка Meta (розділ 7).
- Вебхук не підтверджується. Перевірте Callback URL та Verify Token; адреса має бути доступна з інтернету за HTTPS із дійсним сертифікатом.
- 24-годинне вікно. Для Messenger відповідь типу RESPONSE можна надіслати протягом 24 годин після останнього повідомлення людини; пізніше Meta повертає помилку. Для Instagram діють схожі обмеження вікна відповіді - уточнюйте в поточній документації Meta. Бот не зможе першим написати людині поза вікном.
Інструкція актуальна на 05.11.2026. Офіційна документація Meta: developers.facebook.com/docs/messenger-platform.