Instagram username search: three lookups for agents
Instagram username search for agents: look up a public profile by username, turn a user ID into a username, or find accounts by keyword. Real outputs.
The looot team · , updated · 6 min read
On this page
An Instagram username search through looot covers three lookups. A username returns the public profile behind it. A numeric user ID returns the username it belongs to today. A keyword returns accounts whose Google-indexed bios match it. Each is one call to a catalog endpoint, and none of them needs an Instagram account or login.
The questions people type show the need: "how to search instagram username", "instagram user id search" and "instagram username search without account". Opening the app works for one name. It does not work when your agent has a list of three hundred handles to check, or a column of IDs from an export. This guide runs each lookup for real on 2026-10-13 UTC, shows the shortened output, and says where each one stops.
How do you search an Instagram username without an account?
You send the username to a profile endpoint and read the public profile back as JSON. Nobody logs in to Instagram, so you need no Instagram account. Pick the lookup by what you start from.
| You start from | Endpoint | You get back |
|---|---|---|
| A username | scrapecreators-instagram-profile | Name, bio, links, follower and following counts, verified and private flags, the numeric ID, recent posts |
| A numeric user ID | scrapecreators-instagram-basic-profile | The username, full name, bio, counts and account flags |
| A topic or niche | scrapecreators-instagram-search-profiles | Accounts whose Google-indexed profile or captions match, with how each matched |
All three are from Scrape Creators and run through one looot token. The CLI setup is one line, `npx looot init`, which logs you in if needed and offers to connect Claude Code, Cursor or Codex.
Look up an Instagram profile by username
Send the handle without the @. `trim` asks for a shorter response.
looot run scrapecreators-instagram-profile --input '{"handle":"nasa","trim":true}' --wait=60Shortened output from the run at 23:19 UTC:
{
"status": "completed",
"result": {
"data": {
"user": {
"id": "528817151",
"username": "nasa",
"full_name": "NASA",
"is_verified": true,
"is_private": false,
"external_url": "https://www.nasa.gov",
"edge_followed_by": { "count": 104343917 },
"edge_follow": { "count": 90 }
}
},
"credits_charged": 1
},
"actualCost": 0.00188
}Save the `id`. It is the key for the next lookup. The full response also carries the bio links, recent posts with their likes and comments, and a list of related profiles.
Find the username behind an Instagram user ID
Some data sources give you a numeric ID instead of a handle. Send it as `userId`.
looot run scrapecreators-instagram-basic-profile --input '{"userId":"528817151"}' --wait=60Shortened output from the run at 23:20 UTC, about 35 seconds after the first:
{
"status": "completed",
"result": {
"id": "528817151",
"username": "nasa",
"full_name": "NASA",
"is_verified": true,
"is_private": false,
"follower_count": 104343930,
"following_count": 90,
"media_count": null
},
"actualCost": 0.00188
}Two things to notice. The follower count differed by 13 between the two calls, so store the time of each call next to any count. And `media_count` came back null. The catalog notes that Instagram sometimes returns it that way and points to scrapecreators-instagram-profile-post-count when you need the total number of posts.
Instagram username search by keyword
When you do not know the username, search by what the account is about.
looot run scrapecreators-instagram-search-profiles --input '{"query":"espresso"}' --wait=60The run returned 15 profiles on the first page, shortened here to two:
{
"result": {
"query": "espresso",
"source": "google",
"profiles": [
{ "username": "thepressespresso", "full_name": "THE PRESS ESPRESSO", "matched_from": "profile", "follower_count": null },
{ "username": "espressoeastcoffee", "full_name": "Espresso East | Dorchester Coffee Trailer", "matched_from": "profile", "follower_count": null }
],
"credits_charged": 1
},
"actualCost": 0.00188
}Read this result as a list of candidates, not a ranking. The `source` is Google: the endpoint matches keywords in Google-indexed profile pages, bios and captions, and its catalog entry calls itself best effort and not complete. All 15 profiles came back with `follower_count` null, so a second call per account, the username lookup above, fills in the numbers. The search pages with a `cursor`, up to page 11.
For creator discovery across TikTok, X and YouTube as well, see the creator search use case.
What does an Instagram username search cost?
Each lookup is one call from a prepaid balance. The runs above reported their cost in `actualCost`. The table reads the live price from the looot catalog when the page loads.
Other providers in the catalog do the same lookups with different inputs, read with `looot inspect` on 2026-10-14:
| Endpoint | Provider | You send | Notes |
|---|---|---|---|
| brightdata-instagram-profile | Bright Data | Up to 20 profile URLs per call | Runs as a job, billed per record, slow targets can take minutes |
| tikhub-api-instagram-fetch-user-info-by-username-v2 | TikHub | `username` | User information by username |
| tikhub-api-instagram-user-id-to-username | TikHub | `user_id` | User information by ID |
The Scrape Creators MCP page lists what else that provider covers, and the Instagram platform page groups every Instagram job looot can run.
Run it with an agent
Paste this into Claude Code, Cursor or any agent that reads a skill file. It prices first and stops after five calls.
Prompt for your agent
Look up five Instagram usernames
For posts, reels and comments on top of profiles, read the Instagram API guide for agents.
What this post does not cover
- Searching by phone number or email address. None of the endpoints in this guide take one, and this guide does not cover finding a person from contact details.
- Private content. The endpoints return public profile data. We did not run a private account for this post, so we cannot say which fields come back for one.
- Old usernames. The username lookup finds the current handle only.
- Watching an account for changes. That needs scheduled runs, not available yet. Your agent runs the lookup when you ask.
- Username availability for sign-up. Checking whether a handle is free to register is a job for Instagram's own sign-up page.
Last checked 2026-10-14. The outputs above are from real runs on 2026-10-13 between 23:19 and 23:21 UTC. Endpoint details come from `looot inspect` on 2026-10-14, and prices in the table are read from the live catalog when the page loads.
Questions
Keep reading
Instagram scraper for agents: profiles and posts
An Instagram scraper for AI agents: public posts, reels and profile data through looot, with each call's price shown first and the limits spelled out.
Walid Boulanouar · · 7 min read
TikTok scraper for agents: profiles and video stats
Get public TikTok profile and video data into an AI agent through looot, with each call's price shown first. What a TikTok scraper returns and where it stops.
Walid Boulanouar · · 7 min read
Set up looot with one line: skill.md and llms.txt
Give your agent one URL and it can set up looot itself. What skill.md and llms.txt are, what each one tells an agent, and a prompt you can paste today.
The looot team · · 3 min read
Try it with the agent you already use
Start your workspace, top up, and paste one prompt into your agent.
