Instagram Post Info API: Extract Complete Post Details
Need detailed information about a specific Instagram post or Reel? The Post Info API returns comprehensive data including engagement metrics, media URLs, and metadata.
What Data Can You Extract?
| Field | Description |
|---|---|
| Post ID | Unique identifier |
| Shortcode | URL-friendly code |
| Type | Photo, Video, Carousel, Reel |
| Caption | Full post text |
| Hashtags | Used hashtags |
| Likes | Like count |
| Comments | Comment count |
| Views | View count (videos/reels) |
| Media URLs | Image/video URLs |
| Author | Creator profile info |
| Location | Tagged location |
| Audio | Sound info (reels) |
| Timestamp | When posted |
| Tagged Users | Mentioned accounts |
Using the Post Info API
const response = await fetch('https://api.sociavault.com/instagram/post-info', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
url: 'https://www.instagram.com/p/ABC123xyz/'
})
});
const postInfo = await response.json();
Sample Response
{
"id": "3123456789012345678",
"shortcode": "ABC123xyz",
"type": "carousel",
"caption": "Amazing day at the beach 🌊 #summer #travel",
"hashtags": ["summer", "travel"],
"likes": 125000,
"comments": 2800,
"views": null,
"media": [
{
"type": "image",
"url": "https://...",
"width": 1080,
"height": 1350
},
{
"type": "image",
"url": "https://...",
"width": 1080,
"height": 1350
}
],
"author": {
"username": "travel_creator",
"fullName": "Travel Creator",
"followers": 850000,
"verified": true
},
"location": {
"name": "Malibu Beach",
"id": "123456789"
},
"timestamp": "2026-01-08T16:30:00Z",
"taggedUsers": ["friend_account"]
}
Reel Response Example
Reels include additional audio information:
{
"id": "3123456789012345678",
"shortcode": "ABC123xyz",
"type": "reel",
"caption": "Dance challenge 💃 #viral",
"likes": 450000,
"comments": 5200,
"views": 2500000,
"plays": 3100000,
"media": [
{
"type": "video",
"url": "https://...",
"duration": 30
}
],
"audio": {
"id": "844716519067330",
"title": "Trending Dance Song",
"artist": "Artist Name",
"usageCount": 125000
},
"author": {
"username": "dance_creator",
"followers": 1200000,
"verified": true
},
"timestamp": "2026-01-08T18:00:00Z"
}
Use Cases
Engagement Analysis
Calculate engagement rate for specific posts:
const postInfo = await getPostInfo(url);
const engagementRate = (
(postInfo.likes + postInfo.comments) / postInfo.author.followers
) * 100;
console.log(`Engagement rate: ${engagementRate.toFixed(2)}%`);
Track Viral Content
Monitor post performance over time:
async function trackPost(url) {
const info = await getPostInfo(url);
await saveSnapshot({
postId: info.id,
likes: info.likes,
comments: info.comments,
views: info.views,
timestamp: new Date()
});
}
// Track every hour
setInterval(() => trackPost(targetUrl), 60 * 60 * 1000);
Extract Media for Archival
Download post images/videos:
const postInfo = await getPostInfo(url);
for (const media of postInfo.media) {
const response = await fetch(media.url);
const buffer = await response.arrayBuffer();
const extension = media.type === 'video' ? 'mp4' : 'jpg';
await fs.writeFile(`post_${postInfo.shortcode}_${index}.${extension}`, Buffer.from(buffer));
}
Carousel Analysis
Analyze multi-image posts:
const postInfo = await getPostInfo(url);
if (postInfo.type === 'carousel') {
console.log(`This carousel has ${postInfo.media.length} slides`);
const imageCount = postInfo.media.filter(m => m.type === 'image').length;
const videoCount = postInfo.media.filter(m => m.type === 'video').length;
console.log(`${imageCount} images, ${videoCount} videos`);
}
Related Endpoints
- Instagram Posts Scraper - All posts from a profile
- Instagram Comments - Get post comments
- Instagram Reels API - Profile reels
- Instagram Transcript - Video transcripts
Frequently Asked Questions
Can I use the post shortcode instead of URL?
Yes, you can construct the URL from the shortcode: https://www.instagram.com/p/{shortcode}/
What's the difference between views and plays for Reels?
Views typically count unique viewers, while plays count total playbacks (including repeats).
Can I get data from private account posts?
No, only publicly accessible posts can be scraped. Private accounts restrict access.
Are Instagram Stories supported?
No, Stories are temporary and handled differently. Use the Highlights endpoint for saved story content.
How do I get carousel images in order?
The media array is returned in the order displayed in the carousel, from first to last slide.
Get Started
Sign up free and start extracting Instagram post data.
API documentation: /docs/api-reference/instagram/post-info
Found this helpful?
Share it with others who might benefit
Ready to Try SociaVault?
Start extracting social media data with our powerful API. No credit card required.