# InScrape > Instagram scraping API. Public profile, post, reel, story, comment and follower data > returned as JSON. Authentication is a single `x-api-key` header. No Instagram login, > no Meta app review, no rate limits. Credits never expire. ## Authentication curl "https://socialscrape.dev/v1/instagram/profile?handle=natgeo" -H "x-api-key: YOUR_KEY" ## Response envelope Every successful response carries: success, credits_charged, credits_remaining, processing_time_ms, requested_at, query, data. Errors: 400 INVALID_PARAMS, 401 INVALID_API_KEY, 402 INSUFFICIENT_CREDITS, 404 ENDPOINT_NOT_FOUND (invalid API URL or endpoint path; no charge), 500 SCRAPE_FAILED. Confirmed private accounts return 200 with available profile details. Profile also returns 200 with data.profile=null for confirmed missing accounts. All other confirmed missing targets return 200 with empty lists. Completed lookups are billed at the endpoint rate; documented empty next-page responses remain free. Requests are billed at each endpoint's rate, including results served from preloaded data. Documented empty next-page responses remain free. Check credits_charged on each response for the actual charge. ## Live endpoints - GET /v1/instagram/profile — Full public profile: followers, following, bio, external link, verification. (0.95 credit; params: handle, include_highlights?, include_posts?) https://socialscrape.dev/docs/instagram/profile - GET /v1/instagram/highlights — Highlight trays on a profile — IDs, titles and covers. (0.95 credit; params: handle, include_profile?, include_posts?) https://socialscrape.dev/docs/instagram/highlights - GET /v1/instagram/highlight-stories — Every story inside one highlight tray. (1 credit; params: highlight_id) https://socialscrape.dev/docs/instagram/highlight-items - GET /v1/instagram/posts — Paginated feed posts for a handle, with engagement counts on each item. (1 credit; params: handle, next_cursor?, include_profile?, include_highlights?) https://socialscrape.dev/docs/instagram/posts - GET /v1/instagram/reels — Complete Reels data, including media URLs. (1 credit; params: handle, next_cursor?) https://socialscrape.dev/docs/instagram/reels - GET /v1/instagram/reposts — Complete repost data, including media URLs. (1 credit; params: handle, next_cursor?) https://socialscrape.dev/docs/instagram/reposts - GET /v1/instagram/tagged — Complete tagged-post data, including media URLs. (1 credit; params: handle, next_cursor?) https://socialscrape.dev/docs/instagram/tagged - GET /v1/instagram/reels-posts — Basic browser-intercepted Reels data. Video URLs are not included. (0.6 credit; params: handle, next_cursor?) https://socialscrape.dev/docs/instagram/reels-posts - GET /v1/instagram/reposts-posts — Basic browser-intercepted Reposts data. Video URLs are not included. (0.6 credit; params: handle, next_cursor?) https://socialscrape.dev/docs/instagram/reposts-posts - GET /v1/instagram/tagged-posts — Basic browser-intercepted Tagged data. Video URLs are not included. (0.6 credit; params: handle, next_cursor?) https://socialscrape.dev/docs/instagram/tagged-posts - GET /v1/instagram/post — A single post or reel by URL or shortcode, including caption and media URLs. (1 credit; params: url, include_comments?) https://socialscrape.dev/docs/instagram/post - GET /v1/instagram/comments — Comments on a post, with author handle and like count. (1 credit; params: url, cursor?, include_media?, include_replies?) https://socialscrape.dev/docs/instagram/comments - GET /v1/instagram/stories — Currently live stories for a public handle. (1 credit; params: handle) https://socialscrape.dev/docs/instagram/stories - GET /v1/instagram/followers — Follower list for an Instagram username, paginated. Unpaid access returns up to 200 users per account; some accounts require paid access. (1 credit; params: handle, cursor?) https://socialscrape.dev/docs/instagram/followers - GET /v1/instagram/following — Accounts an Instagram username follows, paginated. Unpaid access returns up to 200 users per account; some accounts require paid access. (1 credit; params: handle, cursor?) https://socialscrape.dev/docs/instagram/following - GET /v1/instagram/similar-accounts — Accounts Instagram suggests as similar for one Instagram user ID. (1 credit; params: user_id) https://socialscrape.dev/docs/instagram/similar-accounts - GET /v2/instagram/search-user — Search accounts by keyword, ranked the way the app ranks them. (1 credit; params: keyword) https://socialscrape.dev/docs/instagram/user-search - GET /v1/instagram/search-user — Search Instagram accounts by keyword. (1 credit; params: keyword) https://socialscrape.dev/docs/instagram/h-search-user - GET /v1/instagram/popular — Instagram's popular search results for a keyword. (1 credit; params: keyword, cursor?) https://socialscrape.dev/docs/instagram/popular - GET /v1/instagram/hashtag — Paginated public posts for a hashtag, including captions and media. (1 credit; params: tag, cursor?) https://socialscrape.dev/docs/instagram/hashtag ## Pricing - Free: $0 for 100 credits - Starter: $12 for 10,000 credits ($1.20 / 1k credits) - Growth: $48 for 50,000 credits ($0.96 / 1k credits) - Scale: $299 for 500,000 credits ($0.60 / 1k credits) New accounts get 100 free credits, no credit card. Credits never expire and there is no subscription. ## Endpoint pages - Instagram Profile Scraper — Follower Count, Bio and Verification for Any Public Handle — Get follower counts, bio, verification status and external links for any public Instagram profile. One REST call, no login, no Meta app review. https://socialscrape.dev/instagram-profile-scraper - Instagram Post Scraper — Paginated Captions, Media and Engagement by Username — Paginated Instagram feed posts with likes, comments, captions and media URLs. Cursor-based pagination that does not drop items. https://socialscrape.dev/instagram-post-scraper - Instagram Reels Scraper — Views, Plays and Video URLs by Username — Fetch an account's public reels with play counts, likes, comments and media URLs. Cursor paginated, no Instagram login required. https://socialscrape.dev/instagram-reels-scraper - Instagram Comments Scraper — Every Public Comment on a Post or Reel — Collect Instagram comments with author handles, like counts and timestamps. Cursor paginated, no login required. https://socialscrape.dev/instagram-comments-scraper - Instagram Followers Scraper — Export the Handles Behind the Count — Paginate the real follower list of a public Instagram account, not just the count. Cursor based, 2 credits per page. https://socialscrape.dev/instagram-followers-scraper - Instagram Story Scraper — Active Stories and Media URLs Before They Expire — Read currently live stories on public Instagram accounts as JSON, with media URLs, stickers and expiry timestamps. https://socialscrape.dev/instagram-story-scraper - Instagram Highlights API — Every Highlight Tray on a Public Profile — List the highlight trays on a public Instagram profile: tray id, title, cover image and item count. The frames inside a tray come from the Highlight Items API. https://socialscrape.dev/instagram-highlights-api - Instagram Following API — The Full Following List for a Public Account — Paginate the list of accounts a public Instagram profile follows. Cursor based, useful for interest graphs and lookalike discovery. https://socialscrape.dev/instagram-following-api - Instagram Hashtag Scraper — Paginated Public Posts for Any Tag — Get paginated public Instagram posts for a hashtag, including captions, media and engagement fields. One REST endpoint, no Instagram login. https://socialscrape.dev/instagram-hashtag-scraper - Instagram Search API — Find Accounts by Username or Keyword — Search public Instagram accounts by keyword and get them ranked the way the app ranks them. One call, no login. https://socialscrape.dev/instagram-user-search-api - Instagram Tagged Posts API — Posts Other Accounts Tagged a Handle In — Retrieve posts where a public account has been tagged by others. The UGC and brand-mention feed most providers skip. https://socialscrape.dev/instagram-tagged-posts-api - Instagram Similar Accounts API — Find Lookalike Accounts From One Handle — Get the accounts Instagram itself suggests as similar to any public handle. One call turns a single seed into a ranked competitor or creator map. https://socialscrape.dev/instagram-similar-accounts-api - Instagram Post API — One Post or Reel by URL or Shortcode — Fetch a single Instagram post or reel from its URL or shortcode: caption, media URLs, engagement counts and author. No login, no oEmbed limits. https://socialscrape.dev/instagram-single-post-api - Instagram Highlight Items API — Every Story Inside One Highlight Tray — Read every story frame inside a single Instagram highlight tray by its id. Permanent story content with original timestamps, one credit. https://socialscrape.dev/instagram-highlight-items-api ## Comparisons - PhantomBuster Alternative for Instagram Data — Compare PhantomBuster's hosted browser automations with an on-demand Instagram API, including billing, scheduling, sessions and endpoint coverage. https://socialscrape.dev/compare/phantombuster-alternative - Instagram Graph API Alternative for Public Data — The Graph API reads accounts you manage. If you need public profiles, competitor posts or creator data, here is what actually works — no app review, no OAuth. https://socialscrape.dev/compare/instagram-graph-api-alternative - InScrape vs Apify Instagram Scraper — Compare synchronous Instagram API requests with Apify's per-result Instagram Actor, datasets, schedules, exports and plan pricing. https://socialscrape.dev/compare/apify-instagram-scraper-alternative - Bright Data Alternative for Instagram Data — Compare InScrape request pricing with Bright Data's dedicated Instagram Scraper API, free records, delivery options and enterprise features. https://socialscrape.dev/compare/bright-data-instagram-alternative - InScrape vs ScrapeCreators Pricing and APIs — Compare InScrape with ScrapeCreators on Instagram pricing, endpoint coverage, platform breadth, cache billing and non-expiring credits. https://socialscrape.dev/compare/scrapecreators-alternative - Instagram Basic Display API Migration Options — What Meta retired with Basic Display API, the official migration path and when a public-data Instagram API is or is not the right replacement. https://socialscrape.dev/compare/instagram-basic-display-api-alternative - RapidAPI Instagram API Alternative — Compare an Instagram API marketplace listing with one documented operator, including uptime ownership, error billing and response consistency. https://socialscrape.dev/compare/rapidapi-instagram-api-alternative - EnsembleData Alternative for Instagram — Compare EnsembleData's multi-network coverage with an Instagram-only API, including where breadth wins and where platform depth matters more. https://socialscrape.dev/compare/ensembledata-alternative - Scrapingdog Alternative for Instagram Data — A general-purpose scraper returns a page and leaves the parsing to you. Here is what changes when Instagram endpoints return typed JSON instead of markup. https://socialscrape.dev/compare/scrapingdog-instagram-alternative - InScrape vs Phyllo for Instagram Data — Compare InScrape's focused public Instagram API with Phyllo's public and consented social-data platform across 25+ networks. https://socialscrape.dev/compare/phyllo-alternative ## Use cases - Instagram Data API for Influencer Analytics — Build influencer analytics on public Instagram data: audience size, engagement rate, posting cadence and sponsored history, from four endpoints. https://socialscrape.dev/use-cases/influencer-analytics - Instagram API for Creator Discovery — Find creators at scale from a keyword, a hashtag or a competitor's audience, then qualify them automatically with public Instagram data. https://socialscrape.dev/use-cases/creator-discovery - Instagram Data for Social Listening — Track what people say about a brand on Instagram using hashtag, comment and tagged-post data, without a full enterprise listening suite. https://socialscrape.dev/use-cases/social-listening - Monitor Competitors with Instagram Data — Track competitor Instagram accounts automatically: follower growth, posting cadence, what performs and what they promote in stories. https://socialscrape.dev/use-cases/competitor-monitoring - Instagram Data Infrastructure for AI Agents — Give an agent live Instagram data without writing a wrapper: OpenAPI spec, llms.txt, one header and a predictable error contract. https://socialscrape.dev/use-cases/ai-agents - Instagram API for a Website Feed — Render a public Instagram account's recent posts on your own site. Two endpoints, one refresh every few hours, and the media-URL problem nobody warns you about. https://socialscrape.dev/use-cases/instagram-feed-for-website - Instagram API for an Analytics Dashboard — Build an analytics product on public Instagram data: growth, engagement rate, cadence and format mix, plus the private metrics nobody can sell you. https://socialscrape.dev/use-cases/instagram-analytics-dashboard - Instagram API for UGC and Brand Monitoring — Find public posts that tag or hashtag your brand, then inspect their comment threads and understand why discovery is not permission to republish. https://socialscrape.dev/use-cases/ugc-and-brand-monitoring - Instagram API for Ecommerce Product Research — Use public Instagram data to see which products and creatives are moving: hashtag sweeps, competitor maps, creative performance and comment-level buying intent. https://socialscrape.dev/use-cases/ecommerce-product-research - Instagram Dataset API for AI Training and Research — Collect public Instagram data for AI research with a four-step pipeline, transparent API cost arithmetic and explicit compliance boundaries. https://socialscrape.dev/use-cases/instagram-datasets-for-ai - Instagram API for n8n, Make and Zapier — Connect Instagram data to n8n, Make or Zapier with an HTTP Request node, mapped response fields and a practical polling schedule. https://socialscrape.dev/use-cases/no-code-instagram-automation ## Reference documentation - Instagram API Tutorial — Your First Call in Under a Minute — A working Instagram API example in cURL, Node and Python. One x-api-key header, one GET request, JSON back. No OAuth, no app review, no Instagram login. https://socialscrape.dev/docs/quickstart - Instagram API Key and Authentication — Meta uses OAuth tokens for accounts you manage; it does not issue a key for arbitrary public accounts. Learn how an InScrape API key works instead. https://socialscrape.dev/docs/authentication - Response Format and the Envelope — Understand the shared Instagram API response envelope: data, cost, balance, timing and query fields, plus the different shape returned for errors. https://socialscrape.dev/docs/response-format - Instagram API Errors and Error Codes — Six error codes, one body shape, and clear billing rules for lookups, invalid requests and service failures. https://socialscrape.dev/docs/errors - Instagram API Rate Limits — InScrape has no published per-key request quota. Learn how credit balance, the 25-second timeout and upstream capacity constrain throughput. https://socialscrape.dev/docs/rate-limits - Pagination and Cursors — Paginated responses return next_cursor followed by has_next_page inside data. Send the returned value using the cursor parameter documented for that endpoint. https://socialscrape.dev/docs/pagination - Credits and How Requests Are Billed — One credit per request, two for followers and following. Nothing is charged unless the call returns 200. Estimate a budget from the endpoints you call. https://socialscrape.dev/docs/credits - Instagram API Postman Collection — Import the OpenAPI document into Postman or Insomnia to get all 16 Instagram endpoints, parameters, descriptions and x-api-key authentication. https://socialscrape.dev/docs/postman ## Code samples - Python — Copy-paste Python for the Instagram API: authentication, cursor pagination and error handling that reads the complete response envelope. https://socialscrape.dev/instagram-api-python - Node.js — Call the Instagram API from Node 18+ with native fetch, AbortSignal.timeout, cursor pagination and dependency-free error handling. https://socialscrape.dev/instagram-api-nodejs - PHP — Call the Instagram API from PHP curl or Laravel's Http facade with authentication, cursor pagination and complete envelope handling. https://socialscrape.dev/instagram-api-php - Go — Call the InScrape Instagram API from Go using net/http and encoding/json: one envelope struct with json.RawMessage, context timeouts and a cursor pagination loop. https://socialscrape.dev/instagram-api-go - Java — Call the InScrape Instagram API from Java 11+ with HttpClient: authentication, URL-encoded parameters, a cursor pagination loop and status-code handling. https://socialscrape.dev/instagram-api-java - curl — Test the InScrape Instagram API from a terminal: curl with the x-api-key header, jq for reading the envelope, a bash pagination loop and status-code handling. https://socialscrape.dev/instagram-api-curl ## Links - Use cases: https://socialscrape.dev/use-cases - Comparisons: https://socialscrape.dev/compare - Docs: https://socialscrape.dev/docs - OpenAPI: https://socialscrape.dev/openapi.json - Pricing: https://socialscrape.dev/pricing - Blog: https://socialscrape.dev/blog