What the API does and who it is for
Instagram Scraper, published by Oanor, gives developers programmatic access to publicly available Instagram data without requiring an official Instagram API token or app review. It sits on RapidAPI and authenticates purely through the standard X-RapidAPI-Key header — no OAuth dance with Meta's systems required.
The primary audience is teams building social media analytics dashboards, influencer marketing platforms, brand-monitoring tools, or content-discovery engines. Because all 41 endpoints use HTTP GET and return JSON, the integration surface is intentionally simple: construct a URL with query parameters, pass your RapidAPI key, and parse the response.
Endpoint walkthrough
The 41 endpoints fall into several logical groups.
User and profile endpoints
The core user cluster lives under /api/v1/:
GET /api/v1/info— full profile data given a numeric userid.GET /api/v1/user-id— converts ausernamestring to a numeric ID. This is often the first call in a workflow because many other endpoints require the ID rather than the handle.GET /profile/raw/{username},/profile/picture/{username},/profile/full_name/{username},/profile/verified/{username},/profile/id/{username},/profile/followers/count/{username},/profile/following/count/{username}— granular profile attribute endpoints, useful when you need one specific field without fetching the entire profile object.
Content endpoints
GET /api/v1/full-posts— all posts for ausername, with optionalcountandcursorparameters for cursor-based pagination.GET /api/v1/posts— an alternative posts endpoint also keyed byusername.GET /api/v1/reels— user reels, paginated bycursor.GET /api/v1/tagged-posts— posts in which the user has been tagged, keyed byid.GET /api/v1/highlights— story highlights for a userid.GET /api/v1/post-info— detailed metadata for a single post, identified by its shortcode (codeparameter).
Followers and following
Several route families cover the social graph:
/followers/usernames/{username}/{count}/{pages},/followers/ids/...,/followers/list/...,/followers/raw/{username},/followers/next/{username}/{max_id}— different representations of follower data with both cursor-style and page-style navigation.- Equivalent
/following/...routes for accounts a user follows.
Having both a raw variant and a usernames/IDs split is convenient when you only need identifiers and want to avoid parsing full objects.
Comments and likers
/comments/usernames/{post},/comments/raw/{post},/comments/texts/{post}— three views of post comments: full objects, raw response, and text strings only./likers/usernames/{post},/likers/ids/{post},/likers/raw/{post},/likers/count/{post}— who liked a post, again in several formats plus a lightweight count-only call.
Search
GET /api/v1/search— user search given query stringq.GET /api/v1/search-hashtags— hashtag search.GET /api/v1/search-posts— post search.GET /api/v1/related-users— accounts related to a given user./search/usernames/{query}and/search/raw/{query}— alternative search routes.
Health
GET /api/v1/ping and GET /ping return a service health status, useful for uptime checks in your monitoring pipeline.
Pricing breakdown
| Plan | Price | Monthly requests | Rate limit |
|---|---|---|---|
| BASIC | $0 / month | 100 | — |
| PRO | $9.99 / month | 30,000 | 4 req/sec |
| ULTRA | $119.99 / month | 200,000 | 10 req/sec |
| MEGA | $499.99 / month | 1,500,000 | 50 req/sec |
The free BASIC tier grants 100 requests per month — enough to prototype a workflow or verify that the response schema fits your data model, but far too few for any production use. At a typical profile lookup followed by a posts fetch, 100 requests disappears quickly.
PRO at $9.99 is the obvious entry point for a small production tool. At 30,000 monthly requests and a 4-request-per-second cap, it suits applications that monitor a modest list of accounts on a scheduled basis. If you are tracking several hundred accounts daily, the math works out to roughly 300–500 calls per account refresh cycle before you exhaust the quota.
ULTRA (the provider's recommended tier) at $119.99 provides 200,000 requests and raises the rate ceiling to 10 per second. This is appropriate for analytics platforms aggregating data across thousands of accounts. MEGA at $499.99 delivers 1.5 million requests with a 50-request-per-second ceiling, intended for high-volume commercial deployments.
Practical considerations
Latency. The average response time across the API is approximately 18,200 milliseconds — roughly 18 seconds. This is high by web API standards and is an inherent side effect of scraping: the service fetches live Instagram pages on your behalf rather than serving cached data from a database it controls. Design your integration accordingly: use async HTTP clients, set generous timeouts (at least 30 seconds), and avoid blocking your UI thread on these calls. Batch processing and background jobs are a better pattern than real-time on-demand requests.
Success rate. The 96% average success rate means roughly 4 in 100 requests fail. For non-critical analytics that is acceptable, but if you need reliable data delivery for every account in a list, build in retry logic with exponential back-off.
Data scope. All endpoints access public Instagram data. Private accounts cannot be scraped by design — you will receive either empty results or an error for locked profiles. This also means the API's usefulness is limited to public-facing content.
Terms of service. Scraping Instagram data sits in a legally and contractually grey area under Meta's terms of service. Review your intended use case against Meta's platform policies and applicable local regulations before building a commercial product on top of this API.
No write operations. Every endpoint is GET-only. This API cannot post content, send messages, or interact with accounts — it is purely read access to public data.
Use cases
- Influencer vetting: Pull follower counts, engagement data, and recent posts for a list of candidate accounts before a brand deal.
- Competitive benchmarking: Monitor a set of competitor accounts' posting frequency, hashtag usage, and content themes over time.
- Hashtag trend monitoring: Use the hashtag search endpoint to track content volume around campaign-specific tags.
- Comment and sentiment analysis: Retrieve comment text via
/comments/texts/{post}and pipe it into an NLP pipeline without having to parse raw Instagram HTML yourself. - Audience mapping: Use the followers and following endpoints to map social graph connections for a target account.
Getting started
- Subscribe on RapidAPI (BASIC plan is free) and copy your
X-RapidAPI-Key. - Resolve your target account's numeric ID via
GET /api/v1/user-id?username=<handle>— most content endpoints require the ID, not the handle. - Fetch profile data with
GET /api/v1/info?id=<id>to confirm the account is public and the schema matches your expectations. - Set an HTTP timeout of at least 30 seconds in your client to accommodate the average 18-second latency.
- Implement cursor-based pagination for post and follower list endpoints using the
cursorparameter returned in each response.
With 41 endpoints spanning profiles, content, social graph, comments, likers, and search, Instagram Scraper covers most public Instagram data needs in a single subscription. The critical planning items before committing are the high per-request latency — which demands an async architecture — and the monthly request quota relative to the number of accounts and refresh intervals your application requires.