How to access Instagram Feed using instagram API in Laravel?

Today, I am going to show you how to access Instagram Feed using instagram API. We can get our instagram feed without using any composer package, I simply use GuzzleHttp for getting instagram feed, We can also get location, likes, comments, images, name, id and etc.

GuzzleHttp provide use fire get request to given api, So i simply run “” API like, It is very basic example without generate instagram token. Here you can access feed of any user by username.

Step 1: Create Route

In this step, we require to create one route for manage view layout and get method for getting username. so open your routes/web.php file and add following route.


Route::get('instagram', 'InstagramController@index');
Step 2: Create Controller

In this point, now we should create new controller call InstagramController in this path app/Http/Controllers/InstagramController.php. In this controller we will manage route method, i added one method in this controller as listed bellow:

1) index()

So, copy bellow code and put in your controller file.



namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

class InstagramController extends Controller
     * Get the index name for the model.
     * @return string
    public function index(Request $request)
    	$items = [];


	 $client = new \GuzzleHttp\Client;
	 $url = sprintf('', $request->input('username'));
         $response = $client->get($url);
         $items = json_decode((string) $response->getBody(), true)['items'];


    	return view('instagram',compact('items'));
Step 3: Create View

In this step, we have to create total one blade file as listed bellow:

1. instagram.blade.php

This both blade file will help to render layout of instagram data, so let’s create file view file and put bellow code.


<!DOCTYPE html>
	<title>Laravel 5 Instagram API tutorial with example</title>
	<link rel="stylesheet" type="text/css" href="">

<div class="container">
	<h2>Laravel Instagram API tutorial with example</h2><br/>

	<form method="GET" role="form">

		<div class="row">
			<div class="col-md-6">
				<div class="form-group">
					<input type="text" id="username" name="username" class="form-control" placeholder="Enter Instagram Username" value="{{ old('username') }}">
			<div class="col-md-6">
				<div class="form-group">
					<button class="btn btn-success">Search</button>

	<div class="panel panel-primary">
	  <div class="panel-heading">Instagram Feed</div>
	  <div class="panel-body">
			<table class="table table-bordered">
					<th width="200px;">Id</th>
					<th>Total Likes</th>
					<th>Total Comments</th>
					 @foreach($items as $key => $item)
					    <td>{{ ++$key }}</td>
					    <td>{{ $item['id'] }}</td>
					    <td>{{ $item['code'] }}</td>
					    <td><img src="{{ $item['images']['standard_resolution']['url'] }}" style="width:100px;"></td>
					    <td>{{ isset($item['location']['name']) ? $item['location']['name'] : '' }}</td>
					    <td>{{ $item['likes']['count'] }}</td>
					    <td>{{ $item['comments']['count'] }}</td>
					    <td colspan="4">There are no data.</td>



Read Also: How to use GEO Chart Example by using lavacharts Laravel?

Thanks for read. I hope it help you. For more you can follow us on facebook

Shahriar Sagor

My name is Shahriar sagor. I'm a developer. I live in Bangladesh and I love to write tutorials and tips that will help to other Developer's. I am a big fan of PHP, Javascript, JQuery, Laravel, Codeigniter, VueJS, AngularJS and Bootstrap from the early stage.