100 free credits. No credit card required.Start building
Logo
Instagram logo
100 free credits. No credit card required

Instagram Following API

Scrape Instagram Following data with one API call. Returns a paginated list of the accounts an Instagram user follows. Each account includes username, display name, avatar URL, verification status, and profile URL. Pass either `handle` or `user_id`, and page through with `cursor`. A plain walk can end before the profile's following count: on most accounts it ends within a few rows of that count, and on large verified accounts Instagram caps every route at about 50 rows with no cursor, so a plain walk ends there. `data.total` carries the profile's own count on every page, so compare the rows you collected against it. Send `coverage=full` with `handle` to walk a merged list instead: each page is drawn from several reads of the list and carries no account twice inside a page, until the rows reach the count or no read has more. Across consecutive pages a handful of accounts can repeat on the pages one source covered on its own; the merged walk, which never returns an account it has already given you, runs wherever that source cannot cover the list. A full-coverage page costs 10 credits instead of 5 and takes longer, and its cursor only continues a `coverage=full` walk.

Last updated September 2026Maintained by the SocialCrawl team

Returns the accounts a user follows, each with username, display name, avatar URL, verification status, and profile URL.

Use it for the other side of the graph from followers: the accounts this user chose to follow.

Searching 65 platforms in parallel

·TikTok logoTikTok·Instagram logoInstagram·YouTube logoYouTube·Facebook logoFacebook·X logoX·LinkedIn logoLinkedIn·Reddit logoReddit·Threads logoThreads·Pinterest logoPinterest·Twitch logoTwitch·Truth Social logoTruth Social·Snapchat logoSnapchat·Kick logoKick·Bluesky logoBluesky·Kwai logoKwai·Rumble logoRumble·Spotify logoSpotify·Apple Music logoApple Music·TikTok Shop logoTikTok Shop·Amazon Shop logoAmazon Shop·Google Shopping logoGoogle Shopping·Trustpilot logoTrustpilot·TripAdvisor logoTripAdvisor·Yelp logoYelp·Linktree logoLinktree·Komi logoKomi·Pillar logoPillar·lnk.bio logolnk.bio·Facebook Ads logoFacebook Ads·Google Ads logoGoogle Ads·LinkedIn Ads logoLinkedIn Ads·Google Search logoGoogle Search·Google News logoGoogle News·Finance logoFinance·Polymarket logoPolymarket·Tavily logoTavily·Hacker News logoHacker News·GitHub logoGitHub·Perplexity logoPerplexity·Naver logoNaver·Utility logoUtility·Universal Search logoUniversal Search
·TikTok logoTikTok·Instagram logoInstagram·YouTube logoYouTube·Facebook logoFacebook·X logoX·LinkedIn logoLinkedIn·Reddit logoReddit·Threads logoThreads·Pinterest logoPinterest·Twitch logoTwitch·Truth Social logoTruth Social·Snapchat logoSnapchat·Kick logoKick·Bluesky logoBluesky·Kwai logoKwai·Rumble logoRumble·Spotify logoSpotify·Apple Music logoApple Music·TikTok Shop logoTikTok Shop·Amazon Shop logoAmazon Shop·Google Shopping logoGoogle Shopping·Trustpilot logoTrustpilot·TripAdvisor logoTripAdvisor·Yelp logoYelp·Linktree logoLinktree·Komi logoKomi·Pillar logoPillar·lnk.bio logolnk.bio·Facebook Ads logoFacebook Ads·Google Ads logoGoogle Ads·LinkedIn Ads logoLinkedIn Ads·Google Search logoGoogle Search·Google News logoGoogle News·Finance logoFinance·Polymarket logoPolymarket·Tavily logoTavily·Hacker News logoHacker News·GitHub logoGitHub·Perplexity logoPerplexity·Naver logoNaver·Utility logoUtility·Universal Search logoUniversal Search
·TikTok logoTikTok·Instagram logoInstagram·YouTube logoYouTube·Facebook logoFacebook·X logoX·LinkedIn logoLinkedIn·Reddit logoReddit·Threads logoThreads·Pinterest logoPinterest·Twitch logoTwitch·Truth Social logoTruth Social·Snapchat logoSnapchat·Kick logoKick·Bluesky logoBluesky·Kwai logoKwai·Rumble logoRumble·Spotify logoSpotify·Apple Music logoApple Music·TikTok Shop logoTikTok Shop·Amazon Shop logoAmazon Shop·Google Shopping logoGoogle Shopping·Trustpilot logoTrustpilot·TripAdvisor logoTripAdvisor·Yelp logoYelp·Linktree logoLinktree·Komi logoKomi·Pillar logoPillar·lnk.bio logolnk.bio·Facebook Ads logoFacebook Ads·Google Ads logoGoogle Ads·LinkedIn Ads logoLinkedIn Ads·Google Search logoGoogle Search·Google News logoGoogle News·Finance logoFinance·Polymarket logoPolymarket·Tavily logoTavily·Hacker News logoHacker News·GitHub logoGitHub·Perplexity logoPerplexity·Naver logoNaver·Utility logoUtility·Universal Search logoUniversal Search
·TikTok logoTikTok·Instagram logoInstagram·YouTube logoYouTube·Facebook logoFacebook·X logoX·LinkedIn logoLinkedIn·Reddit logoReddit·Threads logoThreads·Pinterest logoPinterest·Twitch logoTwitch·Truth Social logoTruth Social·Snapchat logoSnapchat·Kick logoKick·Bluesky logoBluesky·Kwai logoKwai·Rumble logoRumble·Spotify logoSpotify·Apple Music logoApple Music·TikTok Shop logoTikTok Shop·Amazon Shop logoAmazon Shop·Google Shopping logoGoogle Shopping·Trustpilot logoTrustpilot·TripAdvisor logoTripAdvisor·Yelp logoYelp·Linktree logoLinktree·Komi logoKomi·Pillar logoPillar·lnk.bio logolnk.bio·Facebook Ads logoFacebook Ads·Google Ads logoGoogle Ads·LinkedIn Ads logoLinkedIn Ads·Google Search logoGoogle Search·Google News logoGoogle News·Finance logoFinance·Polymarket logoPolymarket·Tavily logoTavily·Hacker News logoHacker News·GitHub logoGitHub·Perplexity logoPerplexity·Naver logoNaver·Utility logoUtility·Universal Search logoUniversal Search
Instagram API

What can you do with the Following API?

The Following endpoint gives you structured Instagram data with computed fields in a single request. No scraping infrastructure to build or maintain.

Example Request

curl -H "x-api-key: YOUR_API_KEY" \
  "https://www.socialcrawl.dev/v1/instagram/following?handle=mrbeast"
import requests

response = requests.get(
    "https://www.socialcrawl.dev/v1/instagram/following",
    params={
    'handle': 'mrbeast',
    },
    headers={"x-api-key": "YOUR_API_KEY"},
)

data = response.json()
const response = await fetch(
  "https://www.socialcrawl.dev/v1/instagram/following?handle=mrbeast",
  {
    headers: { "x-api-key": "YOUR_API_KEY" },
  },
);

const data = await response.json();

Parameters

ParameterRequiredDescription
handleNoInstagram username without the @ symbol.
user_idNoInstagram numeric user ID. Use this for faster responses.
cursorNoPagination cursor. Use the `next_cursor` from the previous response to fetch the next page.
coverageNoSend `full` to walk a merged list: accounts are added from several reads of the list and no account appears twice inside a page, until the rows reach the profile's count in `data.total`. On the pages one source covered on its own a handful of accounts can repeat across consecutive pages; wherever that source cannot cover the list the merged walk runs instead, and it never returns an account it has already given you. Requires `handle`. 10 credits a page instead of 5, settled down to 5 on any page a single read covered in full. Up to three reads are merged into one page, typically about 50 accounts, so a full list costs at most roughly the account count divided by 50, times 10 credits: on 13/09/2026 a following list of 2,652 took 54 pages and a follower list of 2,360 took 59, because the later pages of a follower walk add fewer new accounts. A page usually takes about 8 seconds and can take up to about 45, and a `503` is retried with the same cursor. A cursor from this mode only continues this mode. (full)
Example Response

What does the Instagram Following API return?

Every response follows one unified schema. Here is a real, unmodified response body, so you can see the exact fields you get back before spending a credit.

Example response
{
  "success": true,
  "platform": "tiktok",
  "endpoint": "/v1/tiktok/search/users",
  "data": {
    "items": [
      {
        "author": {
          "id": "6780262640079193090",
          "username": "cookingwithhel",
          "display_name": "Cooking with Hel",
          "avatar_url": "https://p19-common-sign.tiktokcdn-us.com/tos-alisg-avt-0068/e1547b843ed71ccc69e199147854f489~tplv-tiktokx-cropcenter-q:100:100:q70.heic?biz_tag=musically_user.user_cover&dr=8835&idc=useast8&ps=87d6e48a&refresh_token=7f24701a&s=SEARCH&sc=avatar&shcp=c1333099&shp=30310797&t=223449c4&x-expires=1783202400&x-signature=bLp06YEEM1DEDR6nG%2BZt3lhGWx4%3D",
          "bio": null,
          "verified": null,
          "followers": 4214875,
          "following": 1,
          "posts_count": 2341,
          "likes_count": 62731828,
          "url": null,
          "location": null
        }
      },
      {
        "author": {
          "id": "7352666564073833515",
          "username": "cooking_recipescr",
          "display_name": "cooking_recipescr",
          "avatar_url": "https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/7352667004160966699~tplv-tiktokx-cropcenter-q:100:100:q70.heic?biz_tag=musically_user.user_cover&dr=8835&idc=useast8&ps=87d6e48a&refresh_token=6df0f827&s=SEARCH&sc=avatar&shcp=c1333099&shp=30310797&t=223449c4&x-expires=1783202400&x-signature=ysLi7%2FLtH4t5ebZnGzJXSfgYhnU%3D",
          "bio": null,
          "verified": null,
          "followers": 1780390,
          "following": 1,
          "posts_count": 995,
          "likes_count": 10060260,
          "url": null,
          "location": null
        }
      },
      {
        "author": {
          "id": "6829580668634694662",
          "username": "felizcooking",
          "display_name": "Feliz Cooking",
          "avatar_url": "https://p16-common-sign.tiktokcdn-us.com/tos-maliva-avt-0068/179d2c1fe2dc5523974abdaf232e8554~tplv-tiktokx-cropcenter-q:100:100:q70.heic?biz_tag=musically_user.user_cover&dr=8835&idc=useast8&ps=87d6e48a&refresh_token=97c11cfd&s=SEARCH&sc=avatar&shcp=c1333099&shp=30310797&t=223449c4&x-expires=1783202400&x-signature=aCkp4jy6AxdG2R9otN52rtXzHNc%3D",
          "bio": null,
          "verified": null,
          "followers": 338243,
          "following": 374,
          "posts_count": 464,
          "likes_count": 2140124,
          "url": null,
          "location": null
        }
      }
    ],
    "next_cursor": "30",
    "total": 30,
    "dropped": 0
  },
  "credits_used": 1,
  "credits_remaining": 9999,
  "request_id": "req-8Kq2ZmR4vT9xLb3P",
  "cached": false,
  "pagination": {
    "next_cursor": "sc.eyJ2IjoyLCJjIjoiMzAiLCJwIjoiY3Vyc29yIn0",
    "has_more": true,
    "page_size": 30
  }
}

Example captured from the TikTok API. Every SocialCrawl endpoint returns this same unified schema, so your Instagram Following response has the same fields.

API Details

How does the Instagram Following API work?

Send a GET request with your API key and get back clean, structured JSON in our unified schema. Supported computed fields are populated when the source provides the required inputs.

Method

GET

Response

JSON

Why SocialCrawl

Why use SocialCrawl for Instagram Following data?

We handle the complexity of Instagram data extraction so you can focus on building. Unified schema, AI enrichment, and zero platform logic in your code.

Developer First

How do you scrape social media data in seconds?

The fastest social media scraping API for developers. Scrape profiles, posts, comments, and analytics from 65 platforms covering 10B+ monthly active users.

One schema, every platform

Query 65 platforms with identical response structures. Write your integration once.

Computed fields, not just scraped

When an endpoint supports these metrics and the source provides the required inputs, the normalized record includes engagement_rate, estimated_reach, content_category, and language. Ready to use.

See your data before you code

Visual Data Explorer. Paste any URL, get rich result cards, sortable tables, CSV export.

import requests

response = requests.get(
    'https://www.socialcrawl.dev/v1/tiktok/profile',
    params={'handle': 'charlidamelio'},
    headers={'x-api-key': 'sc_YOUR_API_KEY'}
)
data = response.json()
[ .JSON ]
{
  "success": true,
  "platform": "tiktok",
  "data": {
    "author": {
      "username": "charlidamelio",
      "followers": 152400000
    },
    "engagement": {
      "likes": 12400000000,
      "engagement_rate": 0.087
    },
    "metadata": {
      "language": "en",
      "content_category": "lifestyle"
    }
  }
}
+ 65 platforms
FAQ

Have a question? We got answers

Find answers to frequently asked questions about SocialCrawl's API, pricing, and capabilities.

Contact us
How do I get the accounts an Instagram user follows via API?
Send a GET request to /v1/instagram/following with a handle or user_id. SocialCrawl returns a JSON array of the accounts that user follows, each with username, display name, avatar URL, verified status, and profile URL.
Can I query the following list by user ID?
Yes. Pass user_id instead of handle. user_id is faster because SocialCrawl does not need to resolve the username to an ID before pulling the following list.
How do I paginate the full following list?
The response returns a cursor. Send it back as the cursor parameter on your next call to get the next page, and repeat until the cursor is empty.
How much does the Instagram Following API cost?
Each request costs 5 credits on the advanced tier for one page of accounts. New accounts start with 100 free credits and no credit card is required to try it.
What is the following list useful for?
The following graph reveals interests and affinities: see which brands or creators a prospect follows for lead scoring, competitor research, or influencer-fit checks.

Ask AI about SocialCrawl

Ready to scrape Instagram Following data?

Get your API key and start pulling Instagram data in under 60 seconds.

Start for free

🤖 AI agent or LLM? Read this page as markdown