Build with the Instagram data API
Everything you need to authenticate, make requests, handle errors and plan usage. Each endpoint also has a page with live examples in four languages.
Start here
Quickstart
Make your first Instagram API request in minutes. Create a free key, send a request in cURL, Python or Node.js, and read the response.
Authentication
How to authenticate IGramAPI requests with an API key: the Bearer header, the X-API-Key alternative, managing keys, and what happens when a key is wrong.
Credits and rate limits
How IGramAPI credits work, what each endpoint costs, when credits renew, the per-minute rate limit for each plan, and the headers that report both.
Errors
The IGramAPI error format and every error code you can receive, with the HTTP status, what it means and how to handle it in your code.
Pagination
How to page through posts, reels, comments and hashtag results with IGramAPI cursors, with loop examples in Python and Node.js.
Downloading media
How to turn Instagram media links into stable download files with the IGramAPI Downloader: video, merged HD with sound, MP3 audio and images.
Endpoint reference
Every IGramAPI endpoint at a glance: method, path, credit cost and plan, with links to the detailed page for each one.
Your first request
curl "https://api.igramapi.com/v1/profiles/example_creator" \
-H "Authorization: Bearer YOUR_API_KEY" import requests
response = requests.get(
"https://api.igramapi.com/v1/profiles/example_creator",
headers={"Authorization": "Bearer YOUR_API_KEY"},
timeout=30,
)
response.raise_for_status()
print(response.json()) const response = await fetch("https://api.igramapi.com/v1/profiles/example_creator", {
method: "GET",
headers: {
Authorization: "Bearer YOUR_API_KEY",
},
});
if (!response.ok) throw new Error((await response.json()).error.message);
console.log(await response.json()); <?php
$ch = curl_init("https://api.igramapi.com/v1/profiles/example_creator");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOUR_API_KEY",
],
]);
$data = json_decode(curl_exec($ch), true);
print_r($data); Browse by API
Profile API
Bio, counts, verification
Posts API
Latest posts with media links
Reels API
A profile's latest reels
Post & Reel Data API
Any post URL to JSON
Stories API
Active 24-hour stories
Highlights API
Albums and their media
Comments API
Public comments, paginated
Hashtag API
Popular posts by hashtag
Search API
Users, tags and places
Audio API
Track details and downloads
Profile Picture API
Largest picture available
Downloader API
Reels, photos and audio as files
Get your free API key
100 credits every month, no credit card. Make your first request in about two minutes.