instagram-api
An Instagram API alternative on fetcher.sh — pay-per-call in USDC via x402, or prepaid credits with a Bearer key, no login and no session cookies. Use when the user wants to resolve an Instagram profile by @handle, search users by keyword, pull a profile's posts, reels, stories, tagged posts, follow
By fetcher-sh · 4,128 installs
npx skills add fetcher-sh/fetcher-skills --skill instagram-api
Source repository · Upstream listing
Instagram API
Instagram data on demand: profile lookup by @handle, posts, reels, stories,
tagged posts, followers and followings, hashtag and location feeds, audio/music
feeds, and post comments — one plain HTTP GET per call, paid as you go. No
login, no session cookies, no headless browser, no Graph API business
verification.
Base URL: https://instagram.fetcher.sh
Quick reference
Base URL https://instagram.fetcher.sh
Auth Authorization: Bearer bby live ... or x402 (USDC)
Price $0.004/call (flat)
Endpoints 16, all GET
MCP https://instagram.fetcher.sh/mcp
Machine readable /openapi.json · /llms.txt · /skill.md
Which endpoint do I need?
I want to... Call
Look up a profile by @handle GET /api/user/handle/{handle}
Search accounts by name GET /api/user/search
Get a user's posts, reels, or stories GET /api/user/{id}/posts / /reels / /stories
Get a user's followers or followings GET /api/user/{id}/followers / /followings
Look up a post by its share URL shortcode GET /api/post/code/{code}
Get a post's comments GET /api/post/{id}/comments
Find posts under a hashtag GET /api/hashtag/{name}/posts
Find posts tagged at a location GET /api/location/{id}/posts
Full param details for every row: [ references/endpoints.md ](references/endpoints.md).
Authentication
Two ways to pay, same data — full mechanics in the [ fetcher
skill](../fetcher/SKILL.md):
Every response is { "status": number, "message": string, "data": ... } ; the
HTTP status mirrors status .
Endpoints (16 — all GET, $0.004/call)
Endpoint What it returns
/api/user/handle/{handle} Full profile by @handle — follower counts, bio, numeric ID
/api/user/search Profiles matching a keyword query
/api/userid/{handle} Just the numeric user ID for a @handle
/api/user/{id} Profile by numeric ID
/api/user/{id}/posts A user's posts
/api/user/{id}/posts/tagged Posts the user is tagged in
/api/user/{id}/reels A user's reels
/api/user/{id}/stories A user's active stories
/api/user/{id}/followers A user's followers
/api/user/{id}/followings Accounts a user follows
/api/post/code/{code} A single post by its shortcode (from the post URL)
/api/post/{id}/comments A post's comments
/api/hashtag/{name}/posts Posts under a hashtag
/api/hashtag/{name}/reels Reels under a hashtag
/api/location/{id}/posts Posts tagged at a location
/api/audio/{id}/posts Posts using a specific audio/music track
{id} / {handle} / {name} / {code} are path parameters. Optional
cursor / page paginate; query (user search) is required where it
appears.
Scenarios
Resolve a profile by handle — the endpoint most callers want first:
Search for profiles by keyword, or resolve just the numeric ID for a handle:
A profile's posts, reels, stories, and tagged posts (by numeric ID from the
handle lookup above):
Followers and followings:
A single post by shortcode (the part of the URL after /p/ ), and its
comments:
Posts and reels under a hashtag, posts from a location, and posts using an
audio track:
MCP
Free: search endpoints , describe endpoint , check balance . Paid:
fetch data (any endpoint above), topup credits , plus the named shortcut
instagram user handle . Drop the headers block to pay per call with x402
instead — see the [ fetcher skill](../fetcher/SKILL.md) for the full flow.
Errors
400 — missing/invalid parameter (message names it)
401 — unknown or rotated key
402 — payment required (x402 challenge) or topup required (credits
exhausted)
404 — not a priced path
No rate limits; no refunds on upstream failures (settlement precedes
delivery)
Reference
Deep dives: [ references/endpoints.md ](references/endpoints.md) (every
param) · [ references/scenarios.md ](references/scenarios.md) (one curl
per endpoint) · [ references/faq.md ](references/faq.md) ·
[ references/comparison.md ](references/comparison.md) (vs. the official
Instagram Graph API and a browser scraper)
Task guides: [profile lookup](../../task guides/instagram profile lookup.md) ·
[hashtag and location monitoring](../../task guides/instagram hashtag and location monitoring.md)
Slash command: [ /instagram profile ](../../commands/instagram profile.md)
Full agent setup: <https://instagram.fetcher.sh/skill.md
OpenAPI 3.1 contract: <https://instagram.fetcher.sh/openapi.json
Condensed catalog: <https://instagram.fetcher.sh/llms.txt
Payment, credits, and MCP deep dive: [ fetcher skill](../fetcher/SKILL.md)
Site: <https://instagram.fetcher.sh