Building a unified dataset
Pipe the GET response straight into BigQuery, Postgres, Airtable, or a Google Sheet via n8n / Make / Zapier. The response is structured JSON — no HTML parsing, no headless browser, no upstream OAuth.
Get the unique ID of any Instagram profile from a link or username.
Edit parameters and send a live request from your browser
Instagram User ID API retrieves the unique numeric ID of any Instagram profile from a profile link or username. The user ID is required by many other Instagram endpoints.
1{
2 "link": "https://www.instagram.com/instagram"
3}Use User ID as a first step before calling profile-based endpoints that require a numeric user_id.
The Instagram User ID endpoint is part of SocialAPIs' unified REST API for public social-media data. Get the unique ID of any Instagram profile from a link or username. It belongs to the Instagram category and follows the same auth, pagination, and error-handling conventions as every other endpoint on the platform — so any code you write for one transfers cleanly to the others.
The Instagram User ID endpoint is most often combined with other SocialAPIs endpoints to power the workflows below. Each one is achievable on the Free tier for evaluation; scale up to Pro or Ultra when you move to production.
Pipe the GET response straight into BigQuery, Postgres, Airtable, or a Google Sheet via n8n / Make / Zapier. The response is structured JSON — no HTML parsing, no headless browser, no upstream OAuth.
The same endpoint is exposed as a tool in the SocialAPIs MCP server, so Claude Desktop / ChatGPT custom integrations / Cursor / any MCP-aware client can call it directly inside a chat. No glue code, no separate auth — the user's API token does both.
Schedule a recurring call (cron, GitHub Actions, n8n schedule), diff the latest response against the previous run, and notify Slack / email / Telegram when a meaningful change appears. The response shape is stable across calls so diffs stay reliable.
If you're building a feature on top of public social data (lead enrichment, brand monitoring, competitive intelligence, resale arbitrage), this endpoint usually replaces a brittle in-house scraper that broke every time Facebook tweaked its HTML. Same dataset, real-time, with an SLA.
All SocialAPIs endpoints take your API token in the x-api-token header. Grab yours from your dashboard (or create a free account at /auth/signup — 200 free calls per month, no credit card).
curl -X GET "https://api.socialapis.io/instagram/user/id?link=https%3A%2F%2Fwww.instagram.com%2Finstagram" \
-H "x-api-token: YOUR_API_TOKEN" \
-H "Content-Type: application/json"The response is JSON containing the requested data plus a request_id (echo it back in any support email — it lets us pull the matching row from our request log in seconds). Detailed parameter schemas and copy-paste snippets in JavaScript, Python, PHP, Java, and Go are available in the playground above.
List-style endpoints return a next_cursor in the response. Pass it back in the next request to walk the full result set. Cursors are stable across calls — safe to persist if you need to resume later.
10 req/min on the Free tier, 100 req/min on Pro / Ultra / Mega, higher dedicated limits on custom plans. Limit hits return HTTP 429 with a Retry-After header — respect it and you'll never see a sustained block.
4xx = your request (bad params, missing auth, hit limit). 5xx = our side (transient — retry with backoff). Every error response includes error_code, message, and a request_id for support.
These endpoints share the same data model and auth as Instagram User ID. Most real-world integrations combine 2-3 of them.
Instagram Profile Details
Get user profile information by username including bio, followers, posts count, and related profiles.
Instagram Profile Posts
Get posts from a user profile with pagination. Returns photos, videos, carousels with engagement metrics.
Instagram Profile Reels
Get reels from a user profile with pagination. Returns video details, play counts, and audio metadata.
Instagram Profile Highlights
Get all highlights from a user profile including cover images, titles, and permalink URLs.
Instagram Highlight Details
Get details of a specific highlight by ID including all stories within the highlight.
Instagram Post ID
Extract the post shortcode/ID from any Instagram post URL.
No. SocialAPIs handles the upstream auth and infrastructure on our side. You just send a bearer token (your SocialAPIs API token) and call the endpoint. No Facebook app review, no OAuth scope dance, no expiring user access tokens. This is the primary reason most teams move off the Graph API to us.
One credit per successful response. The exact cost is shown in the dashboard under "Usage" after every call. Failed requests (4xx errors caused by bad input) do not consume credits.
Real-time. Each call fetches from the upstream source at the moment you call us — we don't cache responses between users. The exception is the Ads Library endpoints, which return Meta's own snapshots and therefore lag by 24-48 hours because Meta itself indexes them on that cadence (not us).
Yes. The SocialAPIs MCP server exposes every endpoint as an MCP tool, so any MCP-aware client (Claude Desktop, the ChatGPT Custom Integrations beta, Cursor, Cline) can call it directly inside a chat. The MCP server uses the same API token as direct HTTP calls, so your credit balance, rate limits, and usage history are unified across surfaces.
Every response — success or error — includes a request_id in both the body and the x-request-id header. Email it to support and we can pull the full request log (params, upstream response, timing, error trace) within minutes. We retain the log for 30 days on standard plans and indefinitely on enterprise. Don't ship a workaround for an edge case without checking with us first — it's usually a two-line server fix.
Some fields Meta's official Graph API used to return are no longer publicly accessible (page email, exact follower counts on small pages, post audience targeting). Where we can derive them from other public signals, we do; where we can't, the field will be absent from the response (we don't fabricate values). The full list of "what's still returnable in 2026" lives in the docs — start there before assuming a field is broken on our side.
Use the playground at the top of this page to send a live request against your account — or grab the curl above and run it from your terminal. Free accounts get 200 calls per month, enough to integrate, prototype, and ship a working demo before deciding whether to upgrade.