Data access

Instagram API vs an Instagram scraper

By . Published 1 November 2026. Updated .

The Instagram API is built for managing your own professional account. It can read a little about other accounts, but not much. An Instagram scraper reads what any visitor can see on public pages, but it breaks often and runs against Instagram's terms. A third option is an MCP server or data API that collects the public data for you and returns it as structured fields.

This guide compares the three on one question: what can you get about accounts that are not yours, such as competitors and Creators? Facts about Meta's APIs were checked against Meta's developer documentation on 1 November 2026. It is part of the data access guides in the guides for marketers.

What the Instagram API is

When people say Instagram API they mean the Instagram Platform, which Meta also calls the Instagram Graph API. Every user of an app built on it must sign in with an Instagram professional account, which is a business or Creator account. There are two setups: Instagram Login, for professional accounts without a Facebook Page, and Facebook Login, for professional accounts linked to a Page. Meta recommends a combined setup for new apps.

Personal accounts are out. Meta retired the Instagram Basic Display API, the old way to read a personal account's own posts, on 4 December 2024, after announcing it on 4 September 2024. Every request to it now fails.

Most of the API is about your own account: publishing, comments, messages and Insights on your own posts. Two features read other accounts: Business Discovery and Hashtag search.

What the Instagram API returns about other accounts

From Meta's reference pages for Business Discovery, Hashtag search and Hashtag recent media, read on 1 November 2026.

Sources: Meta for Developers, Instagram Platform overview and reference pages (Business Discovery, IG Hashtag Search, IG Hashtag recent_media); Meta for Developers blog, 4 September 2024. Checked 2026-11-01.
FeatureWhat you getLimits
Business DiscoveryPublic fields of another business or Creator account, such as follower count and media count, plus its media with like and comment counts.You look accounts up by username, through your own professional account and a Facebook User token. Personal accounts and age-gated accounts are not returned. The media URL is left out of some Videos, including Reels with licensed audio or with downloads turned off.
Hashtag searchThe ID of a Hashtag, which you then use to read its top media or recent media.Needs the Instagram Public Content Access feature, which goes through App Review. Capped at 30 unique Hashtags per account in a rolling 7 days. Not available with Instagram Login. Sensitive Hashtags return an error.
Hashtag recent mediaPublic photos and Videos tagged with the Hashtag: caption, like and comment counts, media type, permalink and timestamp.Only media from the last 24 hours, up to 50 per page. You cannot request the username of who posted it. Like counts are missing where the owner hides them.
Not coveredKeyword search across Reels, view counts for a Reel from its link, other accounts' Insights, transcripts.Meta's API has no endpoint for these.

What an Instagram scraper gets, and what it takes to run

An Instagram scraper is code that loads public profile, Reel and Hashtag pages, or the requests those pages make, and pulls the data out. It can reach anything a logged-out visitor sees: Reels, captions, view counts, comments and public profiles.

Upkeep is the main cost. Instagram changes its pages and limits traffic it sees as automated, so a scraper needs residential proxies, retries and an engineer to fix it when something changes. Logged-in scraping risks the accounts used to do it.

Instagram's Terms of Use forbid "collecting information in an automated way without our express permission". Whether scraping public data is lawful depends on your country, the data and how you use it. This guide is not legal advice; if it matters to your business, ask a lawyer.

Instagram API, scraper or MCP server

QuestionInstagram APIScraper you runMCP server or data API
Your own account's InsightsYes.No.No. ShortsIntel reads public data only.
A competitor's profile and postsBusiness and Creator accounts through Business Discovery, with likes and comments.Yes, whatever is public.Yes. ShortsIntel returns Reel views and a baseline for the account.
Search Reels by keywordNo.If you build it.Yes, best effort on Instagram.
Hashtags30 unique a week, last 24 hours of recent media, after App Review.Yes, whatever is public.Yes: totals, trend and top Videos.
What a Reel says and showsNo.No, unless you add speech-to-text and a model.Yes. ShortsIntel returns hook, on-screen text, format, call to action and transcript.
SetupA Meta developer app, a professional account, permissions and App Review.Code, proxies and a server.One connector in your Assistant, or one API key.
UpkeepLow, until Meta changes access.High.The service fixes breakages.
CostFree within rate limits.Your time, proxy traffic and hosting.Per call.

Which one to use

Use the Instagram API for your own account. Publishing, replying to comments and reading your own Insights are what it does well, and nothing else gives you private numbers like reach and saves.

Use Business Discovery when you need follower counts and like counts for a short list of business accounts and you already have a Meta app set up.

Build a scraper only if you need one narrow piece of public data at a volume where paying per call costs more than an engineer's time.

Use an MCP server or data API when you want competitors' Reels, their views against their usual reach, and what the Reels actually say, from Claude or ChatGPT or from your own code, without building collection.

Data limits

ShortsIntel data limits on Instagram

  • Public data only. No private accounts, no Stories, nothing behind a login, and no Insights such as reach or saves.
  • Instagram Video search and Keyword lookups are best effort. They come back marked as partial coverage and can miss Reels.
  • Sounds are TikTok only, and so is score_video. Instagram Reels under 30 days old still get Scores against the Creator's baseline in a Creator lookup.
  • Hashtags work on TikTok and Instagram only.
  • Refreshing a Research is TikTok only.
  • Creator, Hashtag and Keyword Trackers run on Instagram.
  • Ads that run on Instagram come from the Meta Ad Library, not from the Instagram tools.
  • Analysis covers Videos up to 10 minutes long.

What you get back

Two real calls on our own account, trimmed. The first is a Creator lookup on a brand account, with a baseline and Scores the Instagram API does not compute. The second is one Reel from an Instagram Research with its analysis, which the Instagram API has no equivalent for. Your Assistant gets the same objects over MCP from get_creator and research.

Instagram, via REST API

GET /v1/creators/instagram/glossier?include=videos

{
  "run": { "kind": "creator_lookup", "status": "completed", "charge_credits": 6 },
  "result": {
    "platform": "instagram",
    "handle": "glossier",
    "verified": true,
    "follower_count": 3124621,
    "baseline": {
      "sample": 11,
      "median_views": 112066,
      "p90_views": 146128,
      "engagement_rate": 0.0264,
      "posts_per_week": 1.23
    },
    "videos": [
      {
        "id": "DezQh2YRFhJ",
        "posted_at": "2026-10-22T15:02:13.000Z",
        "snapshot": { "views": 134871, "likes": 4890, "comments": 148 },
        "scores": { "outlier": 1.3, "percentile": 70 }
      },
      ...
    ]
  }
}
(12 Reels returned; profile, links, velocity and other fields trimmed)
Captured 1 November 2026. Tools used: get_creator, GET /v1/creators/{platform}/{handle}. Output trimmed; live results change.

Instagram, via REST API

Research fitness coaching and workout program promo videos on Instagram Reels (one of 46 Reels returned)

{
  "id": "Detr5_msh_8",
  "platform": "instagram",
  "creator": { "handle": "gainsbybrains", "verified": true },
  "posted_at": "2026-10-20T11:06:53.000Z",
  "snapshot": { "views": 96964, "likes": 6844, "comments": 45 },
  "commerce": { "is_ad": false, "paid_partnership": false },
  "intelligence": {
    "source": "speech",
    "hook": {
      "type": "PROBLEM",
      "opening_line": "If I had to start my fitness journey from zero today, these are the five things I do.",
      "visual_hook": "fit woman in a gym adjusting her stance near a squat rack"
    },
    "visual": {
      "format": "TUTORIAL",
      "on_screen_text": [
        "if i had to start my fitness journey from zero, these are the 5 things i do:",
        "number one train every muscle group twice a week",
        ...
      ]
    },
    "persuasion": { "call_to_action": { "type": "NONE" }, "sponsored": false },
    "content": { "niche": "HEALTH_AND_FITNESS", "content_styles": ["TALKING_HEAD", "LIFESTYLE", "HOOK_AND_DEMO"] }
  }
}
(tone, safety, keywords, transcript and media URLs trimmed)
Captured 1 November 2026. Tools used: research, GET /v1/research/{id}/videos. Output trimmed; live results change.

What it costs

ShortsIntel has no subscription. Each call that does work is a Run, paid from a prepaid Balance of Credits at 1,000 credits per US dollar. New accounts get 1,000 credits free, valid for 90 days. A Run that fails costs nothing, and a partial one is charged only for what finished.

On Instagram, a Creator lookup costs 6 credits, a Reel lookup 3 credits, a Reel's analysis 23 credits, a Hashtag 3 credits and a niche Research 1,036 credits for up to 50 analysed Videos. Every paid call can quote its price first. The full list is on the pricing page.

Connect your Assistant

The MCP server address is https://www.shortsintel.com/api/mcp. You sign in to ShortsIntel, not to Instagram, and choose which organization's Balance pays. Developers can call the same data over REST with an API key.

Claude.ai

Web and desktop. No API key: Claude signs in to ShortsIntel for you.

  1. Open Claude's add connector page with ShortsIntel filled in, and choose Add. Or go to Settings, Connectors, Add custom connector, and paste the endpoint below.
    https://www.shortsintel.com/api/mcp
  2. Sign in to ShortsIntel, approve the connection and choose the organization whose Balance pays for Runs.
  3. In a chat, turn the ShortsIntel connector on and ask your question.

ChatGPT

Web and desktop, in Developer mode. No API key: ChatGPT signs in over OAuth.

  1. Open ChatGPT's connector settings and switch Developer mode on.
  2. Create a connector named ShortsIntel, paste the endpoint and choose OAuth.
    https://www.shortsintel.com/api/mcp
  3. Sign in to ShortsIntel and choose your organization.
  4. In a new chat, choose the + next to the message box, then Developer mode, and turn ShortsIntel on.

Claude Code

One command, then sign in from Claude Code.

  1. Add the server in your terminal.
    claude mcp add --transport http --scope user shortsintel https://www.shortsintel.com/api/mcp
  2. Run /mcp inside Claude Code, choose shortsintel and sign in.

Codex

One command; Codex signs in on first use.

  1. Add the server in your terminal.
    codex mcp add shortsintel --url https://www.shortsintel.com/api/mcp
  2. If no browser window opens to sign in, start it yourself.
    codex mcp login shortsintel

Cursor and VS Code

One-click install links; each asks you to confirm.

  1. In Cursor, open the Cursor install link.
  2. In VS Code, open the VS Code install link.
  3. Sign in to ShortsIntel when the editor asks.

Go deeper

Questions

Is there an official Instagram API?
Yes. The Instagram Platform, also called the Instagram Graph API, is Meta's official API. It works only for Instagram business and Creator accounts and is mainly for managing your own account: publishing, comments, messages and Insights.
Can the Instagram API get data on other accounts?
A little. Business Discovery returns public fields and media of other business or Creator accounts, such as follower count and like counts. Hashtag search returns posts from the last 24 hours for up to 30 unique Hashtags a week, after App Review. It cannot search Reels by keyword or read personal accounts.
Does the Instagram Basic Display API still work?
No. Meta retired it on 4 December 2024 and every request to it now fails. Meta points developers to the Instagram API, which supports professional accounts only.
Is scraping Instagram allowed?
Instagram's Terms of Use forbid collecting information in an automated way without Instagram's express permission. Whether scraping public data is lawful is a separate question that depends on your country, the data and its use. This is not legal advice.
What is the difference between an Instagram scraper and an MCP server?
A scraper is code you run and maintain yourself. An MCP server is a service your Assistant calls as a tool: it collects the public data, keeps up with changes on Instagram and returns structured fields, and you pay per call.
Do I need an Instagram account to use ShortsIntel?
No. ShortsIntel reads public Instagram data and never logs in to your Instagram account. You sign in to ShortsIntel itself.

Try it in your Assistant

Connect ShortsIntel to the Assistant you already use and ask the question this guide answers, or try the calls in the Playground first.