Skip to main content
This tutorial shows you how to scrape an Instagram profile and get structured JSON data using the Bright Data Instagram Scraper API.

Prerequisites

1

Get your API token

Go to the user settings page in your Bright Data account and copy your API token.If you don’t have an account yet, sign up at brightdata.com. New users get $2 free credit for testing.
Your API token is shown only once when created. Copy and store it securely.
2

Send a request

We’ll use the Profiles endpoint with a synchronous request. Replace YOUR_API_TOKEN with your actual token:
curl -X POST \
  "https://api.brightdata.com/datasets/v3/scrape?dataset_id=gd_l1vikfch901nx3by4&format=json" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '[{"url": "https://www.instagram.com/instagram"}]'
You should see a 200 status code. This takes 10-30 seconds.
3

Review the response

The Bright Data Instagram Scraper API returns a JSON array with structured profile data:
[
  {
    "user_name": "instagram",
    "full_name": "Instagram",
    "biography": "Discover what's next. ✨",
    "followers": 676000000,
    "following": 500,
    "posts_count": 7800,
    "is_verified": true,
    "url": "https://www.instagram.com/instagram"
  }
]
Each profile object includes fields covering follower counts, bio, verification status, and more. See the full response schema.
You’ve successfully scraped your first Instagram profile using the Bright Data Instagram Scraper API.

Common questions

Yes. Add more objects to the input array. Synchronous requests support up to 20 URLs. For larger batches, use the async /trigger endpoint.
[
  {"url": "https://www.instagram.com/instagram"},
  {"url": "https://www.instagram.com/natgeo"},
  {"url": "https://www.instagram.com/nasa"}
]
Verify your API token is correct and hasn’t expired. Generate a new token from Account settings. See the authentication guide for details.
Synchronous requests have a 1-minute timeout. If the request exceeds this limit, it automatically switches to async and returns a snapshot_id. Use the async workflow for large batches.
Verify the Instagram profile URL is publicly accessible and correctly formatted. The URL should follow the pattern https://www.instagram.com/username.

Next steps

Send your first request

Explore all four endpoint types with full examples.

Async batch requests

Scrape hundreds of URLs in a single batch job.

Set up webhooks

Receive results automatically when scraping completes.