InsightSocial API

Instagram

Instagram API reference: 36 endpoints for profiles, posts, reels, comments, followers and hashtag search. Per-endpoint credit prices and cURL examples.

Profiles, posts, reels, comments, stories, highlights, followers and following, hashtag, location and music search, and transcripts. Pass handles without the leading @.

New to the API? Read the Instagram scraper API overview for what it returns and how it compares with the official API.

Base path: /v1/instagram/...

Quickstart

cURL
curl "https://api.insightsocial.app/v1/instagram/profile?handle=instagram" \
  -H "x-api-key: $INSIGHTSOCIAL_API_KEY"

Endpoints

14 of these are metered: the price depends on how much the call reads. See Credits.

10 are beta: they return the source's own structure under our naming rules (snake_case keys, string ids, ISO times where the source gives a timestamp) rather than a schema-2 entity, and their fields may change. See Schema 2.

EndpointCreditsWhat it returnsKey parameters
/profile10Returns an Instagram account's public profile: bio, exact integer follower count on author.followers, following count, picture URL, verification, and author.ext.public_email from the bio.handle
/profile/about10Returns Instagram's "About this account" details for a public account (country, month joined, published contact) plus its follower count and lifetime post count.handle
/profile/posts10–130Returns a user's recent posts with caption, like and comment counts, media URL, media type, and timestamp; share counts are not included.handle
/post10Returns one post's details: caption, view count on videos and reels, like and comment counts, media URLs, media type, the author, and any tagged users.url
/post/comments50–150Returns a post's comments, each with its text, author, like count, reply count, and time, ranked by popularity by default or newest first.url
/comment50–150Returns one comment's current text, like count, reply count, author, and timestamp, plus the post's total comment count for context.comment_url, post_url
/basic-profile10Returns a minimal Instagram profile looked up by numeric user id: username, full name, and profile picture.userId
/profile/reels10–140Returns a user's reels with view, like and comment counts and a thumbnail; share counts are not included here.user_id, handle
/highlights10Returns a user's saved story highlight collections, each with its title, cover image, and the number of items inside.user_id, handle
/highlight/detail10Returns the individual stories saved inside one highlight, with their media URLs, timestamps, and interaction counts.id
/search/reels10–650Returns reels matching a keyword, each with its view count, like count, and author; share and save counts are not included on this endpoint.query
/media/transcript100Returns the spoken words in an Instagram video or reel of up to 2 minutes as text.url
/media/screen-text50Returns the text shown on an Instagram post's images, read by AI: the photo, each carousel slide up to 10, or a reel's cover frame, with results per slide. Beta.url
/audio/reels10Returns reels that use one specific audio track, each with its engagement counts and the account that posted it.audio_id
/search/hashtag50Returns public posts carrying a hashtag, each with shortcode, URL, caption, media URLs, engagement counts, and the author; share and save counts are not included.hashtag
/search/profiles10–250Returns public profiles matching a keyword, each with username, display name, bio, follower and following counts, post count, and profile URL.query
/reels/trending50Returns reels from Instagram's public trending page, each with shortcode, URL, caption, media URLs, engagement counts where shown, and the account.—
/followers50–100Returns the accounts that follow a user, each with username, display name, avatar URL, verification status, and profile URL.handle, user_id
/following50–100Returns the accounts a user follows, each with username, display name, avatar URL, verification status, and profile URL.handle, user_id
/similar50–850Returns the accounts Instagram suggests as similar to a given user, each with username, display name, avatar URL, verification status, and URL.handle, user_id
/post/likers50Returns up to about 2,000 of the accounts that liked a post, each with username, display name, avatar, and verification status, plus the full like count, in one call with no further pages.url
/post/stats50–90Returns one post's engagement: likes, comments, and, on video posts only, the play count and the share count shown by the paper plane icon.url
/tagged50Returns posts that tag a given user, each with its shortcode, URL, caption, media URLs, engagement counts, and the account that posted it.handle, user_id
/location/posts50Returns posts tagged at a place, newest first, about 60 a page, each with shortcode, URL, caption, media URLs, engagement counts, and the author.location_id
/engagement50Returns an engagement report for an account: its engagement rate over the recent posts, follower count, total likes and comments, and a per-post breakdown. Beta.handle
/search/location50Returns places matching a keyword, each with its location id, name, and coordinates, plus a display title and subtitle. Beta.query
/search10Returns mixed Instagram search matches for a query: accounts, hashtags, and places in one payload. Beta.query
/search/popular10–130Returns popular Instagram posts matching a keyword, each with caption, play count, permalink, thumbnail, and the owner's username.query
/post/comment/replies10Returns replies under one Instagram comment, each with text, like count, nested reply count, author, and timestamp.url, comment_id
/username-suggestions50Returns suggested available Instagram usernames built from a keyword you supply. Beta.query
/search/music50Returns audio tracks matching a keyword, each with artist, title, audio and cover artwork URLs, duration, and usage details. Beta.query
/stories50Returns the stories a user has live right now, each with its id, image or video URLs, thumbnail, duration, capture time, and the author.handle, user_id
/story/download50Returns the full resolution image or video URLs and metadata for one specific story. Beta.user_id, story_id
/profile/full50Returns the profile plus its latest 12 posts in one call. Beta.handle
/profile/reels/full50–250Returns a user's reels with views, likes, comments, and a per-reel share count where the second source exposes one, plus a coverage figure. Beta.handle, user_id
/profile/posts/full50–250Returns a user's recent posts with likes, comments, views, and a per-post share count where the second source exposes one, plus a coverage figure. Beta.handle, user_id

On this page