Průvodce novým Instagram Basic Display API

Co budete potřebovat

Vytvořte novou Facebook aplikaci

Photo by Facebook
Photo by Facebook

Přidejte produkt Instagram

Photo by Facebook

Vytvořte novou Instagram aplikaci

Photo by Facebook

Přidejte Instagramový účet jako Testera

Photo by Facebook

V nastavení profilu na Instagramu potvrďte pozvánku

Photo by Facebook

Získejte autorizační kód

https://api.instagram.com/oauth/authorize
?client_id={app-id}
&redirect_uri={redirect-uri}
&scope=user_profile,user_media
&response_type=code
Photo by Facebook

Získejte krátkodobý token

curl -X POST \
https://api.instagram.com/oauth/access_token \
-F client_id={app-id} \
-F client_secret={app-secret} \
-F grant_type=authorization_code \
-F redirect_uri={redirect-uri} \
-F code={code}
{
"access_token": "IGQVJ...",
"user_id": 17841405793187218
}

Získejte dlouhodobý token

https://graph.instagram.com/access_token
?grant_type=ig_exchange_token
&client_secret={instagram-app-secret}
&access_token={short-lived-access-token}
{
"access_token":"dyNTZAMUnhl...",
"token_type": "bearer",
"expires_in": 5183944
}

Získávejte pravidelně nový token

curl -i -X GET "https://graph.instagram.com/refresh_access_token
?grant_type=ig_refresh_token
&access_token=dyNTZAMUnhl..."
{
"access_token":"OENvdHNJz...",
"token_type": "bearer",
"expires_in": 5183944
}
<?php

$refreshTokenUrl = "https://graph.instagram.com/refresh_access_token?grant_type=ig_refresh_token&access_token=" . INSTAGRAM_TOKEN;
$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_URL, $refreshTokenUrl);
$result = @json_decode(curl_exec($curl_handle));
curl_close($curl_handle);

if (!empty($result->access_token)) {
//todo uložení nového tokenu
}

Získejte vaše média

https://graph.instagram.com/me/media?fields=id,permalink,media_type,media_url,caption&access_token=OENvdHNJz...
<?php

$instagramUrl = "https://graph.instagram.com/me/media?fields=id,permalink,media_type,media_url,caption&access_token=" . INSTAGRAM_TOKEN;
$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_URL, $instagramUrl);
$result = curl_exec($curl_handle);
curl_close($curl_handle);

//příspěvky z Instagramu jako asociativní pole
$instagramData = json_decode($result, true);
//Uložení dat do souboru
file_put_contents(__DIR__ . "/../temp/cache/instagram", serialize($instagramData));

Omezení Instagram Basic Display API

  • Nemáte přístup ke Stories.
  • Nemáte přístup ke komentářům.
  • Nemáte přístup ke statistikám.
  • Média kampaní nejsou k dispozici.

Povedlo se? Dejte vědět do komentáře :)

Photo by Erik Lucatero on Unsplash

--

--

--

Lead developer | Beneš & Michl | Czech Republic

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Eduard Štůla

Eduard Štůla

Lead developer | Beneš & Michl | Czech Republic

More from Medium

My Most Memorable Feedback

What is ConcordFi?

A Binding Relationship

Like the shrill sound from an alarm clock in the early hours of the morning,