IG

Instagram profiles

Extract data about profiles, posts, reels, stories, comments, and more from instagram.com.

Social Media

Available Endpoints

What is the Instagram Scraper?

The Instagram Scraper enables you to collect public profile data, posts, reels, comments, and engagement metrics from Instagram. Build social listening tools, influencer analytics platforms, or content aggregation systems with structured, real-time data.

Available Endpoints

Instagram profiles - collect by URL

Extract profile details including bio, followers, following, and post count.

Instagram posts - collect by URL

Get post data including images, captions, likes, and comments.

Instagram reels - collect by URL

Extract reel videos, engagement metrics, and metadata.

Instagram comments - collect by URL

Collect comments, replies, and engagement on specific posts.

Use Cases

  • Influencer marketing: Identify and analyze influencers based on engagement rates, follower demographics, and content quality.
  • Brand monitoring: Track brand mentions, hashtags, and sentiment across Instagram posts and comments.
  • Content research: Analyze trending content formats, posting patterns, and engagement strategies.
  • Competitor analysis: Monitor competitor social presence, growth rates, and content performance.

Frequently Asked Questions

Can I scrape private profiles?

No, we only collect data from public Instagram profiles. Private accounts are not accessible through our API.

How often can I refresh profile data?

You can request fresh data as often as needed. Each API call fetches real-time data from the platform.

Do you support Instagram Stories?

We support extracting public story highlights. Ephemeral stories (24-hour) are not supported.

Code Examples

Authentication
import requests

API_TOKEN = "YOUR_API_TOKEN"
headers = {
    "Authorization": f"Bearer {API_TOKEN}",
    "Content-Type": "application/json"
}

response = requests.get(
    "https://api.brightdata.com/v1/auth/test",
    headers=headers
)
print(response.json())
Scraper API Call
import requests

API_TOKEN = "YOUR_API_TOKEN"
headers = {
    "Authorization": f"Bearer {API_TOKEN}",
    "Content-Type": "application/json"
}

payload = {
    "url": "https://www.instagram.com/natgeo/",
    "format": "json"
}

response = requests.post(
    "https://api.brightdata.com/v1/scrapers/instagram-profiles",
    headers=headers,
    json=payload
)

data = response.json()
print(data)