Instagram Following list API
List the accounts an Instagram user follows, up to 500 per call, each with username, name, is_private, is_verified and relation, for $0.56 per 1,000 calls.
- No charge for failed or empty results
- No Instagram login needed
- Up to 500 rows per call
API health
- 24h health
- Normal
- Healthy / normal
- Available
- Limited
- Mostly down
Last 24 hours
Last 30 days
1Request
POST /api/v1/social { "platform": "instagram", "action": "following_list", "params": { "username": "nasa" } }2JSON response
{ "results": [ { "username": "", "is_private": false, "is_verified": true, "relation": "Followings" }, … ], "count": 50 }3Rows
username is_private is_verified relation false true Followings false true Followings 4CSV
instagram-following_list-sample.csv id,username,url,name,avatar_url,is_private,is_verified,relation,of_user,platform
username and an optional limit goes in, a JSON response comes back, and each followed account becomes a table row and a CSV line.What data you get
Each row is one account the user follows. The table shows rows from a real call for nasa, captured September 26, 2026 at 08:56 (UTC), that returned 50 rows; gray bars mark removed personal information (••• in the CSV). Your own calls return these fields as listed in the field reference.
| id | username | url | name | avatar_url | is_private | is_verified | relation | of_user | platform |
|---|---|---|---|---|---|---|---|---|---|
| instagram.com/ | false | true | Followings | nasa | |||||
| instagram.com/ | false | true | Followings | nasa |
Use cases
Find similar accounts
Read the accounts a seed account follows and use
usernameandnameto pick out similar ones.Check mutual follows
Read the creator's list and the brand's list, and look for each account in the other.
Shortlist verified accounts
Keep rows where
is_verifiedis true and drop rows whereis_privateis true.Merge several seeds
Use
of_userto tell the lists apart, then remove duplicates byid.
Instagram Graph API vs EveryInfra
Here is how Instagram's official Graph API and EveryInfra following_list compare on following data, which accounts and access.
| Compared | Instagram Graph API | EveryInfra |
|---|---|---|
| Following data | Field follows_count: "Total number of Instagram users the user follows." | A list of the accounts the user follows; each row has id, username, url, name, avatar_url, is_private, is_verified, relation, of_user and platform. |
| Which accounts | "Note that a permission only allows access to data created by the app user who granted the permission." | The account named in username, as a handle without the @ symbol or a full profile URL. |
| Access you need | Access token: "Required. App user’s User access token." | One EveryInfra API key in the Authorization: Bearer header. No Instagram login or Instagram access token is needed. |
Quotes are from Meta's developer documentation, checked 2026-11-09. Official sources: IG User (updated 2026-04-22) · Instagram Platform overview (updated 2026-10-29)
Limits and gotchas
limitis an integer from 1 to 500 and defaults to 50; larger values return 422 before any charge.- There is no cursor or page parameter, so one call returns at most 500 rows for one account.
- A call can return fewer rows than
limit; an account you do not see in the rows is not proof that it is not followed. - A follow does not prove affinity or interaction, and the relationship may change.
is_verifiedisnullwhen the verified status cannot be determined.avatar_urlis an image link, and a sized CDN link can expire.
Pricing
You pay $0.000556 per call, not per row, and one call reads up to 500 accounts that one account follows. Failed calls and empty results are not charged.
| Calls | Cost |
|---|---|
| 10,000 | $5.56 |
| 100,000 | $55.56 |
| 1,000,000 | $555.56 |
Totals use the list price per call.
Code samples
#curl -X POST 'https://api.everyinfra.com/api/v1/social' \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" \
-H 'Content-Type: application/json' \
--data-raw '{
"platform": "instagram",
"action": "following_list",
"params": {
"username": "nasa"
}
}'OpenAPI definition (JSON)Samples read the key from the EVERYINFRA_API_KEY environment variable; copied code never contains your key.
API reference
See the parameters, response fields, errors and billing for following_list, and copy the page or open it as Markdown for an AI assistant.
AI prompt
#Please help me write a data collection script with the EveryInfra Instagram Following list endpoint (instagram/following_list).
How the endpoint works:
- Request: POST https://api.everyinfra.com/api/v1/social with the header Authorization: Bearer <API key>. Read the key from the EVERYINFRA_API_KEY environment variable and never hard-code it.
- In the request body, set platform to instagram and action to following_list, and put the parameters inside params.
- Required parameters:
- username: Identifies an Instagram account handle without the @ symbol or as a full profile URL. Used by profile, persona, user_posts, and reels to fetch account data.
- Optional parameters:
- limit: The most rows to return in this call, an integer from 1 to 500. The default applies when you leave it out, and a call can return fewer rows. Larger values return 422 before any charge. (default: 50)
- Returns a list of records. Main fields of each record: id, username, url, name, avatar_url, is_private, is_verified, relation, of_user.
- Example request body:
{
"platform": "instagram",
"action": "following_list",
"params": {
"username": "nasa"
}
}
- Price: $0.56 per 1,000 requests; failed and empty results are not charged.
- For dozens or hundreds of targets, add "mode": "async" to the body: you get a job_id at once and poll GET https://api.everyinfra.com/api/v1/jobs/{job_id} for the result.
- On 422, fix the request using the suggested parameter names and allowed values in the error; on 429 or 503, wait for Retry-After and try again.
Before writing code, ask me which targets I need, how many, which fields, and what output format I want; then confirm the plan and the rough cost with me.Request parameters
#| Name | In | Type | Required | Default | Description |
|---|---|---|---|---|---|
Authorization | header | string | Yes | - | Bearer followed by your API key. Create it in the console; never put it in a URL or a code repository. |
platform | body | string | Yes | instagram | Platform identifier, fixed value. |
action | body | string | Yes | following_list | Capability identifier, fixed value. |
username | body.params | string | Yes | - | Identifies an Instagram account handle without the @ symbol or as a full profile URL. Used by profile, persona, user_posts, and reels to fetch account data. The followers action returns only total follower counts, whereas followers_list and following_list return account lists. |
limit | body.params | integer (1–500) | No | 50 | The most rows to return in this call, an integer from 1 to 500. The default applies when you leave it out, and a call can return fewer rows. Larger values return 422 before any charge. |
Response example
#{ "id": "req_…", "platform": "instagram", "action": "following_list", "results": [ { "id": "•••", "username": "•••", "url": "https://www.instagram.com/•••", "name": "•••", "avatar_url": "https://instagram.fbhx4-2.fna.fbcdn.net/•••", "is_private": false, "is_verified": true, "relation": "Followings", "of_user": "nasa", "platform": "instagram" }, { "id": "•••", "username": "•••", "url": "https://www.instagram.com/•••", "name": "•••", "avatar_url": "https://instagram.fbhx4-1.fna.fbcdn.net/•••", "is_private": false, "is_verified": true, "relation": "Followings", "of_user": "nasa", "platform": "instagram" } ], "count": 50, "billing": { "charged": …, "charged_usd": …, "balance_after_usd": …, … }, "quota": { … }}
Response fields
#Business data is in results. The table lists the fields a record can contain; values the platform does not show are never made up.
| Field | Meaning |
|---|---|
id | The record's unique ID on the platform. Unique only within one platform; IDs can repeat across platforms. |
username | Username (@handle). |
url | Link to the record on the platform. |
name | Name of the object itself, for account, product and business capabilities. |
avatar_url | Avatar image link. Some platforms return sized CDN links that can expire. |
is_private | Keeps the platform's own meaning |
is_verified | Whether the platform verified the account. null means it cannot be determined. |
relation | Keeps the platform's own meaning |
of_user | Keeps the platform's own meaning |
platform | Source platform identifier, the same as platform in the request (for example xiaohongshu, tiktok). |
Errors and billing
#- 401
- Missing or invalid key.
- 402
- Insufficient balance. Top up first.
- 422
- Invalid parameter name or value. Fix it using the suggestions in the error. No charge.
- 429
- Per-minute request limit reached. Wait for Retry-After, then try again.
- 503
- Could not complete. The held charge is returned to your balance. If the outcome is unknown, verify it before you retry.
- 200 empty
- No data. No charge.
FAQ
What does the Instagram following list API return?
It returns the accounts an Instagram user follows, looked up by username, one row per account with id, username, url, name, avatar_url, is_private, is_verified, relation, of_user and platform.
How many accounts does one call return?
At most 500 rows for one account. Set limit from 1 to 500; the default is 50, and a call can return fewer rows. There is no cursor or page parameter.
How much does it cost?
It costs $0.000556 per call, or $0.56 per 1,000 calls, billed per call and not per row. Failed calls and empty results are not charged.
Do I need an Instagram login?
No. You send one EveryInfra API key in the Authorization: Bearer header. The request carries only username and the optional limit; no Instagram login or Instagram access token is needed.
What is the difference between following_list and followers_list?
The direction. following_list returns the accounts the user follows. followers_list returns the accounts that follow the user. Both take username and return the same columns.
Related Instagram endpoints
You can call the other Instagram endpoints with the same EveryInfra API key.
- Post details
post$0.56 per 1,000 callsFetch one or more Instagram posts or Reels from the links inurls. - Details
profile$0.56 per 1,000 callsLook up an Instagram account by handle or profile URL. - Account insights
persona$0.56 per 1,000 callsGet an account overview for an Instagram handle, built from its public profile. - Posts by user
user_posts$0.56 per 1,000 callsList posts from an Instagram account byusername, each with caption, media type, likes, comments, views, location, hashtags and top comments. - Content discovery
discover$0.56 per 1,000 callsTrack posts under an Instagram hashtag passed inkeyword. - Comments
comments$0.79 per 1,000 callsRead comments on one Instagram post or Reel aturl. - Reels
reels$1.19 per 1,000 callsPull an Instagram account's Reels byusername, with caption, play count, duration in seconds, likes, comments, hashtags, music and video link. - Hashtag
hashtag$0.56 per 1,000 callsCollect posts for an Instagram hashtag inhashtag, without the # sign. - Followers
followers$0.56 per 1,000 callsSee the follower and following counts of an Instagram account byusername. - Follower list
followers_list$0.56 per 1,000 callsList the accounts that follow an Instagram user, byusername, with handle, name, avatar, private and verified flags and relation type. - Account search
user_search$4.81 per 1,000 callsSearch Instagram accounts bykeyword, in the order Instagram search ranks them for that word. - Reels search
reels_search$7.19 per 1,000 callsSearch Instagram Reels bykeyword, such as coffee. - Similar accounts
similar_profiles$8.81 per 1,000 callsFind accounts Instagram suggests as similar to one account, byusernamesuch as nasa. - Tagged posts
tagged_posts$7.44 per 1,000 callsList public posts by other accounts that tag one Instagram account, given asusername, profile URL or numeric user ID. - Stories
stories$1.5 per 1,000 callsGet the stories an Instagram account has live right now, from its username. - Story highlights
highlights$1.6 per 1,000 callsList the story highlights on an Instagram profile. - Comment replies
comment_replies$0.88 per 1,000 callsRead the replies under one comment on an Instagram post or Reel, from the post link and the comment'sidreturned bycomments.