Instagram Account insights API
Get the profile fields plus an AI-written persona object with industry, niche, authenticity and summary for an Instagram account, for $0.56 per 1,000 calls.
- No charge for failed or empty results
- No Instagram login needed
- Profile fields in the same response
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": "persona", "params": { "username": "nasa" } }2JSON response
{ "results": { "username": "nasa", "display_name": "NASA", "bio": "Making the seemingly impossible, possible. ✨", "follower_count": 104336090, … } }3Fields
username display_name bio follower_count nasa NASA Making the seemingly impossible, possible. ✨ 104336090 4CSV
instagram-persona-sample.csv username,display_name,bio,follower_count,following_count,post_count,is_private,is_verified,is_business,is_professional,category,external_url,avatar_url,user_id,avatar_hd_url,external_urls,has_reels,highlight_count,recent_posts
username goes in, and one JSON object comes back with the profile fields and a persona object (industry, niche, authenticity, summary), listed as a field table and a CSV file.What data you get
The table shows a real call for nasa, captured September 26, 2026 at 08:56 (UTC), that returned one object; gray bars mark removed personal information (••• in the CSV). Your own calls return these fields as listed in the field reference, including the AI-written persona object.
| username | display_name | bio | follower_count | following_count | post_count | is_private | is_verified | is_business | is_professional | category | external_url | avatar_url | user_id | avatar_hd_url | external_urls | has_reels | highlight_count | recent_posts |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| nasa | NASA | Making the seemingly impossible, possible. ✨ | 104336090 | 89 | 4934 | false | true | false | false | null | https://www.nasa.gov | null | null | null | null | null | [{"post_id":"DdHyaYAifb6","url":"https://www.instagram.com/p/DdHyaYAifb6","text":"Cementing their names in history.\n\nThe Artemis III crew is leaving their mark — literally. The astronauts recently signed their names on the hardware that will be inside their Orion spacecraft during their low Earth orbit mission, launching in 2027.\n\nImage descriptions:\n\n1. The A…","media_type":"image","like_count":0,"comment_count":0,"view_count":0,"author_username":"nasa","posted_at":"2026-09-10T00:00:00+00:00"},{"post_id":"DdWyDLcGiqo","url":"https://www.instagram.com/p/DdWyDLcGiqo","text":"Southern Hemisphere Milky Way galaxy view from the @••• cupola. This 3s exposure series captured two of my favorite cupola views, the particularly dense Milky Way galaxy as seen from the Southern Hemisphere, and the bright, colorful lights of squid fishing boats (here, the brig…","media_type":"image","like_count":0,"comment_count":0,"view_count":0,"author_username":"•••","posted_at":"2026-09-16T00:00:00+00:00"},{"post_id":"DdT_4GMka0z","url":"https://www.instagram.com/p/DdT_4GMka0z","text":"In a class of their own\n\nHidden within this star-forming nebula (captured by our Webb telescope in one of its largest images to date) are strange objects called brown dwarfs. Generally less massive than stars and more massive than planets, they are neither. They form the same way…","media_type":"image","like_count":0,"comment_count":0,"view_count":0,"author_username":"•••","posted_at":"2026-09-15T00:00:00+00:00"}] |
Use cases
Screen creators
Run a list of candidate handles and group them by
industryandnichebefore anyone reads a profile.Keep the authenticity note
Store the
authenticityassessment and its reason with the follower and post counts for later review.Build niche lists
Combine
industry,nicheandcategoryto pick out the accounts in one niche.Fill screening notes
Paste
summaryinto a notes column so a reviewer sees what the account does without opening it.
Instagram Graph API vs EveryInfra
Three places to compare Instagram's official Graph API with EveryInfra persona: account data, follower demographics and which accounts.
| Compared | Instagram Graph API | EveryInfra |
|---|---|---|
| Account data | Insights: "Represents social interaction metrics on your app user’s Instagram business or creator account." | A persona object with industry, niche, authenticity and summary, plus the same profile fields as profile. |
| Follower demographics | "The demographic characteristics of followers, including countries, cities and gender distribution." "Not returned if the IG User has less than 100 followers." | The response has no age, gender, interests, buyers or other traits, and it does not infer them. |
| 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. No Instagram login or Instagram access token is needed. |
Quotes are from Meta's developer documentation, checked 2026-11-09. Official sources: Instagram Account Insights (updated 2026-06-16) · Instagram Platform overview (updated 2026-10-29)
Limits and gotchas
usernameis required: a handle without the @ symbol or a full profile URL.personais written by AI from the account's public profile. It has no age, gender, interests, buyers or other traits.authenticityusually comes with a short reason; it is an AI assessment, not a platform badge.follower_count,following_countandpost_countarenullwhen the account does not disclose them;nullis not 0.categoryuses Instagram's own taxonomy and is not normalized across platforms; it is a different label fromindustry.is_verifiedisnullwhen the verified status cannot be determined.
Pricing
You pay $0.000556 per call, not per field, and one call reads one account, with the profile fields and the persona object in the same response. 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": "persona",
"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 persona, 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 Account insights endpoint (instagram/persona).
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 persona, 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.
- Returns one object. Main fields: username, display_name, bio, follower_count, following_count, post_count, is_private, is_verified, is_business, is_professional, category, external_url; 19 fields in total, full list at https://api.everyinfra.com/api/v1/social/catalog?platform=instagram.
- Responses also carry a top-level persona object (industry, niche, authenticity, summary): an AI-written profile of the account in English, null when it cannot be generated.
- Example request body:
{
"platform": "instagram",
"action": "persona",
"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 | persona | 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. |
Response example
#{ "id": "req_…", "platform": "instagram", "action": "persona", "results": { "username": "nasa", "display_name": "NASA", "bio": "Making the seemingly impossible, possible. ✨", "follower_count": 104336090, "following_count": 89, "post_count": 4934, "is_private": false, "is_verified": true, "is_business": false, "is_professional": false, "external_url": "https://www.nasa.gov", "avatar_url": "https://scontent.cdninstagram.com/•••", "recent_posts": [ { "post_id": "DdHyaYAifb6", "url": "https://www.instagram.com/p/DdHyaYAifb6", "text": "Cementing their names in history.\n\nThe Artemis III crew is leaving their mark — literally. The astronauts recently signed their names on the hardware that will be inside their Orion spacecraft during their low Earth orbit mission, launching in 2027.\n\nImage descriptions:\n\n1. The A…", "media_type": "image", "like_count": 0, "comment_count": 0, "view_count": 0, "author_username": "nasa", "posted_at": "2026-09-10T00:00:00+00:00" }, { "post_id": "DdWyDLcGiqo", "url": "https://www.instagram.com/p/DdWyDLcGiqo", "text": "Southern Hemisphere Milky Way galaxy view from the @••• cupola. This 3s exposure series captured two of my favorite cupola views, the particularly dense Milky Way galaxy as seen from the Southern Hemisphere, and the bright, colorful lights of squid fishing boats (here, the brig…", "media_type": "image", "like_count": 0, "comment_count": 0, "view_count": 0, "author_username": "•••", "posted_at": "2026-09-16T00:00:00+00:00" }, { "post_id": "DdT_4GMka0z", "url": "https://www.instagram.com/p/DdT_4GMka0z", "text": "In a class of their own\n\nHidden within this star-forming nebula (captured by our Webb telescope in one of its largest images to date) are strange objects called brown dwarfs. Generally less massive than stars and more massive than planets, they are neither. They form the same way…", "media_type": "image", "like_count": 0, "comment_count": 0, "view_count": 0, "author_username": "•••", "posted_at": "2026-09-15T00:00:00+00:00" } ] }, "persona": { "industry": …, "niche": …, "authenticity": …, "summary": … }, "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 |
|---|---|
username | Username (@handle). |
display_name | Display name; can differ from username. |
bio | Profile bio written by the account; may contain line breaks and emoji. |
follower_count | Followers. null means not disclosed, not 0. |
following_count | Accounts followed. null means not disclosed, not 0. |
post_count | Total posts. null means not disclosed, not 0. |
is_private | Keeps the platform's own meaning |
is_verified | Whether the platform verified the account. null means it cannot be determined. |
is_business | Keeps the platform's own meaning |
is_professional | Keeps the platform's own meaning |
category | Category name in the platform's own taxonomy, not normalized across platforms. |
external_url | Keeps the platform's own meaning |
avatar_url | Avatar image link. Some platforms return sized CDN links that can expire. |
user_id | User's unique ID on the platform. |
avatar_hd_url | Keeps the platform's own meaning |
external_urls | Keeps the platform's own meaning |
has_reels | Keeps the platform's own meaning |
highlight_count | Keeps the platform's own meaning |
recent_posts | Keeps the platform's own meaning |
The response also has a persona object at the top level, next to results, for both synchronous calls and async jobs (mode: async): an AI-written profile of the account based on its profile details and up to 6 of its most recent posts, in English. It is null when it cannot be generated, and results are returned as usual.
| Field | Meaning |
|---|---|
persona.industry | Industry the account belongs to. |
persona.niche | Niche within that industry. |
persona.authenticity | Authenticity assessment, usually with a short reason. |
persona.summary | Short profile of the account in a few sentences. |
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 account insights API return?
It returns one object: the profile fields (username, bio, follower_count and others) plus a persona object with industry, niche, authenticity and summary.
Does it return audience age and gender?
No. The response has no age, gender, interests, buyers or other traits, and it does not infer them. persona describes the account itself: its industry, niche, authenticity and a short summary.
How much does it cost?
It costs $0.000556 per call, or $0.56 per 1,000 calls, billed per call and not per field. 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; no Instagram login or Instagram access token is needed.
What is the difference between profile and persona?
The profile fields are the same. persona adds an AI-written persona object with industry, niche, authenticity and summary. If you only need raw values such as follower counts and bio, use profile.
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. - 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. - Following list
following_list$0.56 per 1,000 callsList the accounts an Instagram user follows, 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.