Instagram Following Scraper
Pricing
Pay per event
Instagram Following Scraper
Export the complete following list of one or more public Instagram accounts. Resume large accounts with a saved cursor and optionally enrich every followed account with a full public profile.
Pricing
Pay per event
Rating
5.0
(1)
Developer
The Netaji
Maintained by CommunityActor stats
1
Bookmarked
173
Total users
4
Monthly active users
7 hours ago
Last modified
Categories
Share
The Actor collects the accounts that one or more public Instagram accounts follow and returns them as structured records. It is the following-only counterpart to Instagram Followers & Followings Scraper: the direction is fixed, so there is no type field to set, and no run can be misconfigured to fetch the wrong list.
Accepted input
| Field | Type | Default | Description |
|---|---|---|---|
username | array of strings | — | Required. Usernames or profile URLs. |
maxItem | integer | 100 | Maximum followed accounts saved per seed. 0 removes the limit. |
enrichProfile | boolean | false | Fetches the full profile for every account returned. |
fullProfileDetails | boolean | false | Extends enrichment to the complete profile payload. |
resumeCursor | string | — | Continues a previous run from where it stopped. |
{"username": ["nasa"],"maxItem": 500,"enrichProfile": false}
maxItem applies to each account in username independently rather than as a shared total. Three usernames with maxItem at 500 can therefore return up to 1,500 records.
Response fields
One record per followed account.
| Field | Contents |
|---|---|
username | Followed account's username |
full_name | Display name |
id | Instagram user ID |
is_private | Whether the followed account is private |
is_verified | Whether the followed account is verified |
profile_pic_url | Profile image URL |
source_username | The account whose following list this record came from |
enriched | Whether the full profile was fetched |
{"username": "esa","full_name": "European Space Agency","is_verified": true,"is_private": false,"source_username": "nasa","enriched": false}
source_username matters when several seeds are supplied in one run, since the lists are written to a single dataset and would otherwise be indistinguishable.
Resuming an interrupted run
Following paginates through a max-ID cursor upstream, normalised here to a flat output. resumeCursor accepts a cursor from a previous run and applies it to the first username's first page only. It exists to continue a single interrupted stream, not to offset a multi-account run; supplying it alongside several usernames affects only the first, and the rest start from the beginning.
Behaviour on partial results
Collection ends when the upstream reports no further pages, returns an empty page, or maxItem is reached.
Enrichment is applied in batches as pages arrive, so records are written progressively rather than after the whole list is gathered. A profile that fails to enrich is skipped rather than aborting the run.
Frequently asked questions
Can the following list of a private account be collected? No. Only public accounts expose this list. A private account returns nothing — this reads Instagram's public surface with no logged-in session, and a private account has no such surface.
Why did an account with many follows return fewer than expected? Instagram serves this list in bounded pages and stops well short of a complete list for accounts following a large number of others. What comes back is a substantial sample in Instagram's own ordering, not a census.
How is this different from Instagram Followers & Followings Scraper?
Same underlying pagination and output; the direction is fixed to following instead of being a type input. There is no field to set incorrectly, and the Store description and input form stay focused on the one task.
Does maxItem limit the run or each account?
Each account. It is a per-seed cap rather than a shared total, so the maximum records a run can produce is maxItem multiplied by the number of usernames.
What does enrichProfile cost?
One additional request and one additional billed event per account returned. On a 1,000-account run that is 1,000 extra requests, which usually dominates the cost. Collecting the list first and enriching a chosen subset afterwards through Instagram User Info Scraper is generally cheaper.
How is resumeCursor obtained?
From the pagination state of a previous interrupted run. It applies only to the first username, so it is suited to continuing one stream rather than resuming a multi-account job.
Related Actors
| Actor | Purpose |
|---|---|
| Instagram Followers Scraper | The same collection for the accounts following a seed |
| Instagram Followers & Followings Scraper | Both directions in a single run, selected per run |
| Instagram User Info Scraper | Full profile details for accounts already collected |
| Instagram Related Users Scraper | Accounts Instagram suggests alongside a seed |