Работа с API Instagram

Чтобы работать с API нужно сделать несколько действий:

1. Зарегистрироваться в разделе для разработчиков – https://www.instagram.com/developer/register/

2. После этого нужно добавить клиента (кнопка «Register a New Client»). В форме указать название и описание клиента, адрес вашего сайта и адрес редиректа (Valid redirect URIs) – он будет использован для получения токена. Важно также указать название компании, e-mail и Privacy Policy иначе клиент будет не активным.

После отправки формы вы получите CLIENT ID, далее нажав на кнопку «Manage», вкладка «Security» – нужно снять флаг «Disable implicit OAuth».

3. Далее нужно авторизовать клиента и получить access_token. Для этого понадобится сформировать ссылку подставив свои client_id, redirect_uri и перейти по ней в браузере:

https://www.instagram.com/oauth/authorize/?client_id=CLIENT_ID&redirect_uri=http://test.ru/&response_type=token

После подтверждения прав произойдет редирект на ваш сайт с access_token в URL.

Всё, можно пользоваться API, например:

Получение последних 5 фото

$client_id    = 'CLIENT_ID';
$access_token = 'ACCESS_TOKEN';
$user_id      = 'user_id'; // Цифры идущие до первой точки в ACCESS_TOKEN

$res = file_get_contents('https://api.instagram.com/v1/users/' . $user_id . '/media/recent/?client_id=
' . $client_id . '&access_token=' . $access_token . '&count=5');

$res = json_decode($res, true);
if (!empty($res['data'])) {
	//var_dump($res['data']);

	foreach($res['data'] as $row) {
		// Можно вывести фото на странице:
		echo '<img src="' . $row['images']['standard_resolution']['url'] . '">';

		// Или сохранить файл на сервере:
		$url = $row['images']['standard_resolution']['url'];
		$url = explode('?', $url);
		$ext = mb_strtolower(mb_substr(mb_strrchr($url[0], '.'), 1));
		$file = $row['id'] . '.' . $ext;
		copy($row['images']['standard_resolution']['url'], __DIR__ . '/instagram/' . $file);
	}
}
PHP
14.03.2017, обновлено 01.10.2019 9828

Поделится

Другие публикации

Изображения нужно сжимать для ускорения скорости загрузки сайта, но как это сделать? На многих хостингах нет...
26.10.2018 2094
Ниже приведён список MIME-заголовков и расширений файлов.
11.07.2019 297
Facebook ограничил свободный доступ к API. Теперь чтобы получить права для публикации записей нужно...
13.11.2016 7553
Многие соцсети позволяют создавать приложения и через API получать данные пользователей, поэтому их использует для...
08.10.2019 49
После регистрации в системе эквайринга Сбербанка и получив доступ к тестовой среде, можно приступить к интеграции с...
22.10.2018 4858
Несколько примеров как в PHP получить информацию о домене и IP-адресе.
10.04.2019 658