Send a public Instagram handle and a limit. RouterGrowth returns the account's recent posts as JSON records: post URL, caption, date, likes, replies, views on videos and an is_video flag. One RouterGrowth key covers it, with no Meta app review and no access token to refresh.
Ask your agent
Pull the last 10 posts from these five DTC brands on Instagram and rank them by replies.
Connect RouterGrowth once, then ask in plain words. New workspaces start with $1 of credit. Get a key or read the setup guide.
A real run
One call to social.posts (social posts & content), run through RouterGrowth on October 19, 2026. These are the first rows it returned; fields that name a person are masked.
| created_at | text | replies | views | is_video |
|---|---|---|---|---|
| 2026-05-12 | Retro style meets modern comfort in our new Varsity Jersey 👟 | 55 | 5499 | True |
| 2026-05-05 | Meet the Varsity Jersey: Cloud-like comfort to take you wherever the day goes. | 7 | 5633 | True |
| 2026-05-07 | Your favorite shoes just dropped in stripes! Same comfort, bigger statement 💁♀️ | 3 | 3989 | True |
Five recent posts from the public Allbirds account. Likes came back as -1 on this feed, so the rows show replies and views, which were filled.
Step by step
Mint a key in the dashboard, or connect the MCP server to Claude, Cursor or Claude Code. The same key reaches every capability.
POST to /v1/run with capability social.posts, platform instagram, the handle and a limit. The response carries a run_id, the billing block and the posts.
Each post has an id, url, text, created_at, author and an engagement object with likes, replies and views, plus is_video.
Pass a post URL to social.comments for the thread under it, or the handle to social.profile for followers, bio and links.
Price
List prices on Instagram, read from the catalog when this page was built. The exact figure is quoted before every run, and a monthly plan lowers it.
In practice
You describe the job; the agent picks the calls, shows the price and runs them.
Pull the last 10 posts from these five DTC brands on Instagram and rank them by replies.
For each of these handles, give me followers, the bio link and their three most recent captions.
Connect
One MCP server for Claude, ChatGPT, Claude Code, Codex and Cursor, or the same call over the CLI and REST with the input above.
claude mcp add --transport http routergrowth https://api.routergrowth.com/mcp
npm install -g routergrowth && routergrowth setup
routergrowth run -c social.posts -i '{"platform": "instagram", "handle": "allbirds", "limit": 5}'curl -X POST https://api.routergrowth.com/v1/run \
-H "Authorization: Bearer $ROUTERGROWTH_API_KEY" \
-d '{"capability": "social.posts", "input": {"platform": "instagram", "handle": "allbirds", "limit": 5}}'Worth knowing
RouterGrowth is independent of Meta. It reads what a public profile shows; it does not use the Instagram Graph API or any business login of the account.
Private accounts and stories are out of reach. The call returns posts from the public feed; pinned posts can come back ahead of newer ones, so sort on created_at.
social.posts never likes, follows, comments or publishes. Nothing happens on the account you read.
FAQ
No. It is an independent API that returns public Instagram posts. You do not apply for Meta permissions or connect the brand's account.
JSON. A run object with run_id, status and billing, and a result with a posts array; each post keeps the same field names on every platform social.posts serves.
Some accounts hide like counts. In the Allbirds run the like field came back as -1 while replies and views were filled, so read it as unavailable, not as a number.
No. Only posts a logged-out visitor can see on the public feed.
More on Instagram
Reading this as an agent? This page as markdown: /tools/instagram/api.md
Connect your agent once. The first calls run on the $1 that comes with signup.