Допустим, вы хотите вывести на сайте ленту постов инстаграм. Давайте рассмотрим пример получения instagram access token для вашего приложения или скрипта.

Шаг 1

Перейдите в инструменты разработчика Facebook и создайте новое приложение


Шаг 2

Войдите в созданное приложение и перейдите в Настройки – Основное. Пролистайте вниз и добавьте платформу (сайт). Затем сохраните настройки.


Шаг 3

Продукты – Instagram Basic Display. Создайте приложение.


Шаг 4

Укажите ссылку для редиректа и другие ссылки


Шаг 5

Добавьте тестера. Это должен быть аккаунт инстаграм, для которого вы получаете ключ.


Шаг 6

Перейдите в настройки профиля инстаграм и примите приглашение.


Шаг 7

Используя Instagram App Id и Redirect URI, перейдите по ссылке:


https://api.instagram.com/oauth/authorize?client_id=INSTAGRAM-APP-ID&redirect_uri=REDIRECT-URI&scope=user_profile,user_media&response_type=code&state=1

и подтвердите разрешение

Шаг 8

Сохраните код из адреса, на который вы были переадресованы:

https://helpforsite.com/oauth/?code=AQCigVXLoUCP2dkdpctca2x-xGEnkyXPecWbLTS_tQ5E1ehrsjBZydqyRn6unhIMzkBRye466PaCF0tUXcrhmXDLYFfh7IvDy1GZGmjEMDTSTByLw6_qyIZjeT_7xaY_JF3BcxmR6zxMb4_CZANmP5jNfPibH1Xu2rJpDPG29-IeaY0wwuUTVNu884V0rc0ymX2Lc0VsKbK1BQtozFYwrs0lCWcyqf_JTacGxr_ddm1dsQ&state=1#_

Шаг 9

Теперь необходимо сделать POST запрос к https://api.instagram.com/oauth/access_token для получения кратковременного маркера доступа. Вот так это выглядит при использовании curl в консоли:

curl -d "client_id=INSTAGRAM-APP-ID&redirect_uri=REDIRECT-URI&grant_type=authorization_code&client_secret=INSTAGRAM-APP-SECRET&code=CODE " https://api.instagram.com/oauth/access_token

В ответ вы получите json, содержащий access_token

Шаг 10

Используя полученный access_token, перейдите по адресу:

https://graph.instagram.com/access_token?client_secret=INSTARGAM-APP-SECRET&grant_type=ig_exchange_token&access_token=ACCESS-TOKEN

В ответ вы получите json с долгосрочным ключом доступа на 60 дней.

Шаг 11

Для обновления долгосрочного ключа доступа воспользуйтесь ссылкой:

https://graph.instagram.com/refresh_access_token?grant_type=ig_refresh_token&access_token=LONG-LIVED-ACCESS-TOKEN

Обновление следует делать пока ключ ещё активен.