Мощные VPS/VDS-сервера на новейшем поколении процессоров Intel от 570р в месяц   •   Реклама
14 712 просм
36 комм
Поделиться:

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

15 октября 2019 года компания Facebook по соображениям безопасности закрыла новым клиентам доступ к старому API «Instagram».

Альтернативой стали «API Instagram Basic Display» (базовый доступ, позволяющий получить основную информацию из профиля, его фото и видео) и «API Graph для Instagram» (расширенный доступ, позволяющий управлять своими аккаунтами: получать и публиковать медиафайлы, управлять комментариями и отвечать на них, работать с хэштегами и прочее).

В этой же статье мы подробно рассмотрим, как получить access_token для работы с базовым API «Instagram».

Как получить API Instagram Basic Display для работы с API «Instagram»?

Несмотря на то, что получение нового доступа к API кардинально изменилось, процесс остался таким же не сложным, хотя и относительно долгим по шагам.

1. Первым делом вам необходимо авторизоваться (а если нет профиля – то сначала зарегистрироваться) на Facebook для разработчиков. Для этого перейдите по этой ссылке.

2. Далее в верхнем правом углу переходите в раздел «Мои приложения», а на открывшейся странице жмёте – «Создать приложение».

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

3. В модальном окне выбираете тип приложения «Потребительское» и жмёте «Продолжить».

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

4. В следующем модальном окне вводим название вашего приложения и почту для связи, после чего жмём «Создание приложения» и подтверждаем создание вводом пароля от вашего аккаунта в Facebook.

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

5. На открывшейся странице (или на странице «Панель», находится в левом меню) ищем блок с Instagram Basic Display и жмём в нём «Настроить».

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

6. На открывшейся странице жмёте на кнопку «Create New App»,

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

а в модальном окне вводите (или подтверждаете) название вашего приложения и жмёте «Создайте приложение».

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

7. После обновления страницы прокрутите ее немного вниз и в графы «Клиентские настройки OAuth», «Отменить авторизацию» и «Запросы на удаление данных» пропишите ссылку на ваш сайт.

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

После чего сохраните изменения нажатием на соответствующую кнопку.

8. Далее в левом меню найдите раздел «Роли». Раскройте его и перейдите в подраздел «Роли».

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

9. На открывшейся странице найдите блок «Тестировщики Instagram». В нём нажмите на кнопку «Добавить Instagram Testers».

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

10. В открывшемся окне введите имя аккаунта (логин) из Instagram и отправьте приглашение нажатием на соответствующую кнопку.

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

При этом хочу отметить, что по мере введения логина вам будут предложены найденные страницы. Это позволяет исключить отправку приглашения не тому лицу.

11. После того, как приглашение успешно отправлено, перейдите (и авторизуйтесь) к веб-версии Instagram.

12. Далее щелкните в правом верхнем углу по иконке человечка (профиля) и перейдите тем самым на свою страницу в Instagram.

13. Затем нажмите рядом с фотографией профиля кнопку «Редактировать профиль», а на отрывшейся странице (в левом меню) перейдите в «Приложения и сайты», где откройте вкладку «Приглашения тестировщиков» и примите находящееся там приглашение, которое вы отправили на 10 шаге.

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

14. Отлично, большая часть шагов позади и теперь необходимо вернуться в панель управления вашим приложением на Facebook. В левом меню ищите выпадающий список «Instagram Basic Display», открываете его и выбираете пункт «Basic Display».

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

15. На открывшейся странице ищите блок «Генератор маркеров пользователя», и напротив ранее приглашённого пользователя (к слову, их может быть несколько, каждый приглашается 10 пунктом) жмёте «Generate Token». Если вам необходимо перевыпустить уже имеющийся токен, например, в результате утери старого, сделать это можно также в данном блоке.

16. В открывшемся окне повторно авторизуйтесь в профиле Instagram, для которого генерируете ключ.

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

17. Далее появится модальное окно, в котором отмечаем чекбокс «I Understand», после чего вам будет доступен токен пользователя (сохраните его в надёжное место и никому не сообщайте), который действителен 3 месяца, при этом его можно продлить в автоматическом режиме, подробнее об этом читайте в нашей следующей статье.

Получение базового (API Instagram Basic Display) ключа доступа (access_token) для API «Instagram»

Вот, собственно, и все.

Теперь можно проверить корректность работы ключа доступа. Для этого перейдите по следующему адресу:

https://graph.instagram.com/me?fields=id,username&access_token=ACCESS_TOKEN

Где «ACCESS_TOKEN» – ваш персональный ключ доступа, полученный ранее.

В ответ вам придет ID и username (логин) страницы, для которой вы получили ключ доступа. Если этого не произошло – пишите в комментариях, постараюсь помочь в решении проблемы.

Обратите внимание, что таким способом можно получить ключ доступа (access_token) и данные через него только для своей страницы. Для остальных же вам необходимо проходить проверку приложения (получать разрешения instagram_graph_user_profile для получения данных профиля и instagram_graph_user_media – для получения медиа) (сделать это можно в разделе «Basic Display», блок «Проверка приложения "Instagram Basic Display"»), а также получать разрешение (через аутентификацию) на использование информации у владельца страницы.

36
комментариев
Форма комментирования этой статьи скрыта. Авторизуйтесь, чтобы расширить привилегии гостевого посещения и получить необходимую помощь от сообщества Pandoge.
    • 0
    8
      •  Проверенный
    1 окт в 15:11

    Артём, мне нужна Ваша помощь. Платная. Надо через api встроить товары партнёра на сайт на modx. Я сам не понял, как это сделать. И точно не смогу. Поможете?

      • 0
      919
        •  Команда Pandoge
      5 окт в 12:00

      Митя Иванов, напишите на почту (форма внизу), посмотрим.

    • 0
    919
      •  Команда Pandoge
    20 сен в 02:10

    Статья обновлена: упрощен способ получения ключа.

    • 0
    2
      •  Проверенный
    22 фев в 15:18

    Добрый день!

    На шаге 19 возникает следующая проблема. Скрипт присылает следующую ошибку:

    stdClass Object

    (

    [error_type] => OAuthException

    [code] => 400

    [error_message] => Invalid authorization code

    )

    Хотя код получил и скопировал его как полагается. В чем может быть проблема?

      • 0
      919
        •  Команда Pandoge
      23 фев в 02:28

      Артем Быков, здравствуйте!

      Код авторизации копируете без ошибок (весь и без пробелов по бокам)?

      • 0
      2
        •  Проверенный
      29 фев в 10:35

      Артём Мáлков, добрый день!

      Да, эта проблема решена, по всей видимости код копировал не правильно. НО У себя на сайте ничего не происходит. В консоле появляется следующая проблема:

      Uncaught Error: Error from Instagram: The access_token provided is invalid.
      
      at e.parse (instafeed.min.js:40)
      
      at recent?access_token=мой токен&count=20&callback=instafeedCache1ebb02725e6c3696.parse:1

      Возможно проблема в том, что нужно пройти полную авторизацию приложения и запустить его?

    • 0
    2
      •  Проверенный
    2 дек в 11:46

    Тому, как получить это access_token, и посвящена эта статья.

    1. Первым делом вам необходимо авторизоваться в Instagram, для этого перейдите по этой ссылке.

    Добрый день! меня с этой ссылки перекидывает просто на главную страницу Pandoge

    и никакой регистрации для разработчика, ни входа в инстаграмм

      • 0
      919
        •  Команда Pandoge
      2 дек в 15:39

      Денис Липатов, Здравствуйте!

      Такое может случиться, если Вы копируете ссылку и потом в ручную вставляете ее в браузер или пытаетесь открыть ее в новой вкладке/окне.

      Попробуйте еще раз (просто нажать на нее) в режиме инкогнито или в другом браузере.

      • 0
      2
        •  Проверенный
      11 дек в 10:16

      А это точно актуальная статья? не позволяет он данным методом регистрироваться, даже половины функций нет

      • 0
      1
        •  Пользователь
      24 дек в 01:10

      Денис Липатов,

      Статья не актуальна с 15 октября 2019 г. http://joxi.ru/n2YlKY4tZoNbpm На русском инструкций по работе с новым API не нашёл. Будем разбираться на инглише...

      • 0
      919
        •  Команда Pandoge
      24 дек в 15:31

      Денис Липатов, Андрей, статья будет обновлена в ближайшее время.

    • 0
    1
      •  Пользователь
    4 сен в 00:35

    Добрый вечер, интересует данная тема

    Смогли бы помочь в получение API Instagrama, нужно для приложения

    Спасибо

      • 0
      919
        •  Команда Pandoge
      4 сен в 01:07

      Дмитрий пономарев, здравствуйте.

      В чем именно у Вас возникает проблема?

    • 0
    1
      •  Пользователь
    28 ноя в 23:33

    Добрый вечер!

    Ошибка......

    {"error_type": "OAuthForbiddenException", "code": 403, "error_message": "Implicit authentication is disabled"}

    что делать???

    Заранее спасибо!)

      • 0
      919
        •  Команда Pandoge
      28 ноя в 23:56

      Александр, галку сняли с Disable implicit OAuth ?

    • 0
    766
      •  Гости
    27 окт в 13:34

    Нет капча, что делать?

      • 0
      919
        •  Команда Pandoge
      28 окт в 21:25

      Andrey, ниже у человека похожая проблема.

      Почитайте предыдущие комментарии wink

    • 0
    766
      •  Гости
    26 окт в 15:48

    Капча не отображаеться перепробовал кучу браузеров с телефона пробовал войти ни фига, кто токен получал и как?

      • 0
      766
        •  Гости
      26 окт в 17:39

      Почему не повляется капча?

      • 0
      919
        •  Команда Pandoge
      26 окт в 17:52

      Злой, блокировщика рекламы не стоит? Я получал токен без каких либо проблем.

      • 0
      766
        •  Гости
      26 окт в 20:43

      Я пробовал с разных брваузеров, отключал все дополнения, пробовал регаться с телефона, андройд, афоня, с планшетника айпад. Не появляеться капча. Чистил кеш я уже наверное все перепробовал

      • 0
      919
        •  Команда Pandoge
      26 окт в 21:08

      Злой, увидел. Видимо какой-то сбой у них. Ожидайте и заглядывайте периодически. Думаю решат вопрос.

      • 0
      766
        •  Гости
      26 окт в 21:13

      Оу ну это радует, будем ждать, спс ман!

    • 0
    766
      •  Гости
    26 окт в 08:07

    Капча не отображается, а без нее никак((

    • 0
    766
      •  Гости
    9 окт в 02:51

    Артем, доброй ночи, все сделал как вы описали,но что дальше делать не понимаю, ( спасибо запонимание

      • 0
      919
        •  Команда Pandoge
      9 окт в 13:55

      Виктор Борисевич, а для чего вы получили ключ? Какие задачи стоят.

    • 0
    766
      •  Гости
    18 сен в 17:06

    А если еще никакого приложения и сайта нет, что указывать в соответствующих полях?

      • 0
      919
        •  Команда Pandoge
      18 сен в 17:19

      Лев, начиная с 4 пункта вы его (приложение) и создаете.

    • 0
    766
      •  Гости
    30 авг в 09:51

    Сделал все по инструкции, получаю {"error_type": "OAuthException", "code": 400, "error_message": "Redirect URI does not match registered redirect URI". В чем проблема?

    • 0
    766
      •  Гости
    3 июн в 02:32

    Отличный гайд, заняло всё 5 минут, спасибо!

      • 0
      766
        •  Гости
      3 июн в 14:25

      Подскажите, а сколько этот токен действителен? Получаю ошибку постоянно "OAuthAccessTokenException"

      • 0
      919
        •  Команда Pandoge
      4 июн в 14:07

      Александр, смотря как Вы его используете. Я когда писал модуль - сделал его один раз и вот он уже несколько месяцев работает без проблем.

      • 0
      766
        •  Гости
      4 июн в 20:55

      Артем, да я пока никак его не использую, захотел изучить эту тему и застрял на получении токена.

      Первые шаги делаю по Вашему гайду, а дальше с "Step Three: Request the access_token" вот такая проблема.

      • 0
      766
        •  Гости
      4 июн в 21:41

      Я заметил теперь, что у Вас написано "response_type=code", но вы получаете сразу "access_token". В таком случае правильный запрос будет "response_type=token", правильно? Это способ получения на стороне клиента, который предполагает всего 2 шага. А там где "response_type=code" - серверный способ, в котором три шага. Я прав?

      • 0
      919
        •  Команда Pandoge
      5 июн в 03:10

      Александр, вообще нет. В ссылке меняете только ID приложения и ссылку на сайт, все остальное - без изменений.

      Так же проверьте, совпадает ли указанный в ссылке адрес с веденным в 4 шаге. Это очень важно.

Подняться наверх
«Pandoge» - помощник вебмастера