- Главная
- Блог
Как получить Long-Lived токен Инстаграм?
Начиная с 15 октября 2019г. Instagram перестал поддерживать выдачу Access Token. Старые ключи, выданные до этой даты пока что работают, но к сожалению это не на долго. Взамен старым-добрым Access Token и Instagram API пришёл новый Instagram Basic Display API с новым алгоритмом получения ключей доступа, который действовали всего 1 час. Чем руководствовались в Instagram вводя такое ограничение - трудно сказать и вероятнее всего мы об этом не узнаем. На тематических формах эти ключи доступа прозвали "Short-Lived Access Token" и после осады службы техподдержки и этих же тематических форумов, буквально несколько дней назад Инстаграм выпустил "Long-Lived Access Token" в статусе бета.
В данной инструкции описан пошаговый алгоритм получения Instagram Long-Lived Access Token. Неопытных пользователей он может напугать, но на самом деле в нём нет ничего сложного. Для пользователей
наших модулей Instagram для Битрикс всё ещё проще - функционал получения токена встроен во все модули!
Алгоритм получения Instagram Long-Lived Access Token
Получение Long-Lived Access Token состоит из 4 этапов:
- Создать и настроить приложение в панели разработчика Facebook
- Получение Access Code (действует 1 час)
- Обмен Access Code на Short-Lived Access Token (действует 1 час)
- Обмен Short Lived Token на Long-Lived Access Token
- Продление Long-Lived Access Token
Шаг 1. Создать и настроить приложение в панели разработчика Facebook
1. Создайте приложение в
панели разработчика Facebook и выберите тип приложения "Другое"
2. Далее идём в "Настройки / Основное" и в самом низу страницы жмём кнопку "Добавить платформу"
3. В открывшемся окне выбираем "Веб-сайт" и вводим название своего сайта (полностью вместе с https:// и слешем вконце, чтобы избежать путаницы в дальнейшем)
4. Далее переходим в раздел "Товары" и нажимаем "Настроить" в блоке интеграции приложения с Instagram
5. В левом меню появился раздел Instagram, переходим в подраздел "Basic Display" и создаём новое приложение (кнопка "Create New App")
6. Заполняем 3 текстовых поля адресом вашего сайта и сохраняем изменения
7.Переходим в раздел "Роли" и добавляем тестировщика приложения (не пугайтесь названия, это просто терминология Facebook). Тут нужно указать логин инстаграм аккаунта, который вы подключаете на сайт
8. Далее идём в
настройки аккаунта инстаграм и там в разделе "Приложения и сайты" на вкладке "Приглашения для тестировщиков" нажимаем кнопку "Принять"
Шаг 2. Получение Access Code (действует 1 час)
Действия, производимые в этом шаге автоматизированы в настройках наших модулей Instagram для Битрикс
1. Скопируйте эти данные, они вам понадобятся:
2. Откройте в браузере следующий адрес, предварительно поменяв:
- APP_ID - на "ID приложения Instagram"
- REDIRECT_URL - на адрес вашего сайта, который вы заполнили в пункте 6 (шаг 1)
https://api.instagram.com/oauth/authorize?app_id=APP_ID&redirect_uri=REDIRECT_URL&scope=user_profile,user_media&response_type=code
3. Далее нажмите кнопку "Авторизовать" в открывшемся окне Instagram
4. Будет осуществлена переадресация на ваш сайт, где в строке браузера будет параметр "code". Скопируйте его себе, обрезав два последних символа #_
Этот код потребуется на следующем шаге
Шаг 3. Обмен Access Code на Short-Lived Access Token (действует 1 час)
Действия, производимые в этом шаге автоматизированы в настройках наших модулей Instagram для Битрикс
На этом шаге вам потребуется осуществить POST запрос к API Instagram, заменив
- APP_ID - на "ID приложения Instagram"
- APP_SECRET - на "Секрет приложения Instagram"
- REDIRECT_URL - на адрес вашего сайта, который вы заполнили в пункте 6 (Шаг 1)
- CODE - на код, полученный на предыдущем шаге (Шаг 2)
curl -X POST \
https://api.instagram.com/oauth/access_token \
-F app_id=APP_ID \
-F app_secret=APP_SECRET \
-F grant_type=authorization_code \
-F redirect_uri=REDIRECT_URL \
-F code=CODE
В ответ на этот запрос Инстаграм отправит JSON данные, где "access_token" - это ваш Short Lived Token, который через час станет бесполезным, если вы не пройдёте к Шагу 4.
Шаг 4. Обмен Short Lived Token на Long-Lived Access Token
Действия, производимые в этом шаге автоматизированы в настройках наших модулей Instagram для Битрикс
1. Откройте в браузере следующий адрес, предварительно поменяв:
- APP_SECRET - на "Секрет приложения Instagram"
- SHORT_TOKEN - на токен, полученный на предыдущем шаге (Шаг 3)
https://graph.instagram.com/access_token?grant_type=ig_exchange_token&client_secret=APP_SECRET&access_token=SHORT_TOKEN
2. В ответ на этот запрос Инстаграм отправит JSON данные, где "access_token" - это ваш Long Lived Token, который будет работать ближайшие 60 дней
Шаг 5. Продление Long-Lived Access Token
Действия, производимые в этом шаге автоматизированы в настройках наших модулей Instagram для Битрикс
1. Откройте в браузере следующий адрес, предварительно поменяв:
- LONG_TOKEN - на токен, полученный на предыдущем шаге (Шаг 4)
https://graph.instagram.com/refresh_access_token?grant_type=ig_refresh_token&access_token=LONG_TOKEN
2. В ответ на этот запрос Инстаграм отправит JSON данные, где "access_token" - это ваш обновлённый Long Lived Token, который будет работать ближайшие 60 дней
Возврат к списку