Profile
1 credit/v1/instagram/profileGet Instagram user profile.
handle, trim
Fetch public Instagram data as structured JSON with one SocialCrawl API key. Same Post, Comment, and Author schema as every other platform. Reads are priced in credits.
33 active endpoints
33 live read endpoints for public Instagram data. Profiles, posts, reels, stories, comments, transcripts, hashtag and location search. Data API only. No posting or private DMs.
/v1/instagram/profileGet Instagram user profile.
handle, trim
/v1/instagram/profile/fullInstagram profile, recent posts, and computed analytics in one call.
handle, posts, cursor, include
/v1/instagram/profile/postsList Instagram user posts.
handle, next_max_id, trim
/v1/instagram/profile/reelsList Instagram user reels.
user_id, handle, max_id, trim
/v1/instagram/postGet Instagram post details.
url, region, trim, download_media
/v1/instagram/post/commentsList Instagram post comments.
url, sort, cursor, safe_url
/v1/instagram/media/transcriptGet Instagram media transcript.
url
/v1/instagram/search/hashtagSearch Instagram posts by hashtag.
hashtag, type, cursor, safe_url
/v1/instagram/search/reelsSearch Instagram reels.
query, date_posted, page
/v1/instagram/storiesList an Instagram user's active stories.
handle, user_id, safe_url
Returns an Instagram account's public profile: bio, the exact integer follower count on author.followers, following count, post count, profile picture URL, and verification status.
Use it when you have a handle and want the account snapshot only; profile/full returns the same profile plus recent posts and computed metrics.
1 credit
handle · Instagram username without the @ symbol
$ curl https://www.socialcrawl.dev/v1/instagram/profile?handle=instagram \
-H "x-api-key: sc_YOUR_API_KEY"// Edit the params above and hit "Try it" to run a live request against the APIInstagram is a normal SocialCrawl social surface. You call GET /v1/instagram/… with an API key, spend credits on live misses, and get a single JSON envelope back. No second SDK.
Send your key in the x-api-key header. The same key works across the SocialCrawl catalog.
Routes are GET. Pass handles, urls, queries, and cursors as query strings. We validate formats before charging.
Live misses debit the route tier. Cache hits cost 0. Empty or hard failures refund.
Every response is the same shape: success, data, credits_used, credits_remaining, request_id, cached.
Most products resolve an account, page content, then deepen only the posts that matter.
GET /v1/instagram/profileAuthor-shaped profile
Resolve the handle or id once.
GET /v1/instagram/profile/fullPostList of recent public items
Page with cursor or after when the route supports it.
GET /v1/instagram/profile/postsFull Post for one URL or id
List rows are not enough when you need the full record.
GET /v1/instagram/profile/reelsCommentList when the platform exposes it
Expand only when a thread matters.
GET /v1/instagram/profile
?handle=instagram
Host: www.socialcrawl.dev
x-api-key: sc_your_api_key_here{
"success": true,
"data": { "/* Author | Post | PostList | CommentList | … */": true },
"credits_used": 1,
"credits_remaining": 9999,
"request_id": "req_…",
"cached": false
}Field names match the rest of SocialCrawl where archetypes align.
id, username, display_name, avatar_url, bio, followers, url, ext
items[].post with id, url, content, engagement, author, published_at, ext
items[] with author, content.text, engagement, published_at when comments ship
search hits, media metadata, or transcripts depending on route
Same request lifecycle as every other /v1 platform endpoint.
Next.js catch-all routes into the Hono social API. We mint a request_id, authenticate the key, then enforce rate limit and concurrency.
Registry lookup finds the route. Required params run first. Invalid input returns 400 with no charge. Valid calls debit before upstream work.
A deterministic cache key is built from platform + resource + params. Hit: credits_used = 0. Miss: upstream fetch with retries and circuit breaker.
Upstream JSON is mapped to Author / Post / PostList / CommentList (or route archetype), validated, wrapped in the success envelope, and logged for billing audit.
Billing rules that matter in production
Instagram is public-read data on SocialCrawl. We normalize it into the shared schema so your code does not learn a second OAuth flow.
Public Instagram surfaces exposed by the registry. Read-only for research, monitoring, and product jobs.
Social-read upstreams behind one gateway. Prism composites combine legs when a fat route is registered.
Unified JSON envelope: success, data, credits_used, request_id, cached. Shared Author / Post / Comment leaves where archetypes align.
No write endpoints and no private inbox. Disabled routes stay out of the active count. Prefer registry docs for the live inventory.
The jobs this API is most often used for.
Creator and brand Instagram monitoring
Callers concentrate on profile, content lists, search, and deepen paths on Instagram. Public Instagram JSON without an Instagram Graph App for these read surfaces, on the shared SocialCrawl schema.
Detail reads are typically a few seconds on live miss. Search and fat composites are slower paths.
The jobs Instagram data is most often used for. Each one is a full recipe with the endpoint chain and pricing.
Common ways teams put this data to work, and the stack each one tends to run.
Poll profiles and feeds on Instagram. Alert when engagement velocity jumps.
Search and expand posts for brand, product, and competitor language on Instagram.
Wire resolve to list to detail into pipelines. Cache hits keep recurring runs cheap.
Live misses spend credits by tier. Cache hits are free. Empty or hard failures refund.
curl "https://www.socialcrawl.dev/v1/instagram/profile?handle=instagram" \
-H "x-api-key: sc_your_api_key_here"curl "https://www.socialcrawl.dev/v1/instagram/profile/full?handle=example" \
-H "x-api-key: sc_your_api_key_here"Same key as the rest of the catalog
Every endpoint returns structured JSON in a unified envelope. Computed fields such as engagement rate and content category are included only where the endpoint supports them and the required source inputs are present.
Same Instagram data, two very different paths. Auth, rate limits, schema, and cost, side by side.
| Feature | SocialCrawl | Instagram Graph API |
|---|---|---|
| Authentication | One x-api-key header | Facebook Login OAuth with page-linked access tokens |
| Setup / approval | Sign up and call in under a minute | Meta developer app, app review, and Business verification for most permissions |
| Rate limits | Pay per request in credits, with no per-app quota | Per-app and per-user rate limits |
| Data coverage | Any public profile, post, reel, comment, highlight, and search result | Primarily your own Business or Creator accounts; competitor data limited to Business Discovery |
| Response schema | Unified JSON envelope shared across 51 platforms | Graph node-and-edge payloads |
| Pricing | From 1 credit per request, 100 free credits to start | Free within rate limits |
| Maintenance | Schema stays stable when Instagram changes its frontend | Official support, plus publishing and insights for accounts you own |
Authentication
Setup / approval
Rate limits
Data coverage
Response schema
Pricing
Maintenance
Find answers to frequently asked questions about SocialCrawl's API, pricing, and capabilities.
Contact usAsk AI about SocialCrawl