Username lookup

Instagram User Info API by Username

Send a username — or a numeric user ID, or a full profile URL — and get back structured account info: numeric ID, display name, bio, follower and following counts, verification status, and account type.

50 free credits on signup · no card required

curl "https://api.instagramapi.dev/v1/profile?handle=nike" \
  -H "Authorization: Bearer $INSTAGRAMAPI_KEY"

What you get

Structured JSON, not raw HTML

  • Accepts a username, numeric user ID, or full instagram.com URL in one handle param
  • Returns the account's stable numeric id, even if the username later changes
  • Full name, bio, category, and external link
  • Follower count, following count, and total posts
  • is_verified, is_private, and is_business flags for quick filtering

Example response

What comes back

{
  "data": {
    "id": "13460080",
    "username": "nike",
    "full_name": "Nike",
    "biography": "Just Do It.",
    "is_verified": true,
    "is_private": false,
    "is_business": true,
    "category": null,
    "followers": 291952375,
    "following": 264,
    "posts": 1657,
    "external_url": "http://empli.fi/nike",
    "profile_pic_url": "https://instagram.com/.../nike.jpg",
    "public_email": null,
    "public_phone_number": null
  }
}

Response fields

Fields returned by GET /v1/profile

FieldDescription
idNumeric account id (stable even if the username changes).
usernameThe account's @handle.
full_nameDisplay name shown on the profile.
biographyThe profile's bio text.
is_verifiedWhether the account has a verified badge.
is_privateWhether the account is private.
is_businessWhether this is a business/professional account.
categoryBusiness category label when set (e.g. "Sportswear"); null otherwise.
followersNumber of accounts following this account.
followingNumber of accounts this account follows.
postsTotal number of posts on the profile.
external_urlThe clickable link in the bio, if any.
profile_pic_urlURL of the account's profile picture.
public_emailPublic contact email, if the account exposes one; null otherwise.
public_phone_numberPublic contact phone number, if exposed; null otherwise.

No login required

Nothing to authenticate but your API key

No OAuth flow

One static API key in an Authorization: Bearer header. No redirect, no refresh tokens, no expiring session.

No Meta app review

Never touch Meta's developer platform, Business Verification, or a connected Facebook Page. Sign up directly with Instagram API.

Public data only

Every endpoint returns only what's already visible on Instagram without logging in. Private accounts are never accessible.

Pricing

1 credit per request. Credits start at $8.00 per 1,000 and drop to $6.00 per 1,000 at volume — no subscription, no minimums. New accounts get 50 free credits.

See full pricing

FAQ

Instagram User Info API by Username, explained

What formats does the username lookup accept?

The handle parameter accepts a plain username (nike), a numeric user ID (13460080), or a full profile URL (https://instagram.com/nike) — we detect and resolve whichever you send.

Does the response include the numeric user ID?

Yes — every response includes id, the account's permanent numeric identifier, which stays stable even if the account changes its username.

Can I batch-lookup many usernames at once?

Each request looks up one account. For bulk lookups, call the endpoint concurrently — there's no per-key concurrency limit beyond your plan's rate limit.

What happens if the username doesn't exist?

You get a 404 with a typed error body, and you aren't charged — billing only happens on requests that reach Instagram and return data.

Is there a rate limit?

Yes, scaled to your plan; see the docs for current limits. Most on-demand username lookups never come close to it.

Start pulling api by username data

Create a free key and make your first request in under a minute — 50 credits on us.